动力|网络安全之红蓝对抗实战( 二 )

file_put_contents()写入一句话:

很多人还是用的system(‘echo/powershell/certutil’)写入 , 杀软不给力PHP_CGI.exe调powershll/certutil写文件或是解码 , 进程链未拦截 , 初衷还是希望大家能代码执行的时候不调用命令执行 。
Fastjson漏洞


本来想部署的靶场是shiro JRMP链+win+杀软的 , 奈何不懂java , 鼓捣半天没弄出来

原意是想让大家修改yso实现代码执行打shiro JRMP实现内存马/下载执行【java实现】/静态资源写webshell , 但卒 。 考察JNDI注入+win环境+杀软上线问题 , 比较通用的方法就是内存马/下载执行【java实现】/静态资源写webshell , 需要自己动手写恶意类实现上述功能 , 以静态资源为例 , 如何拿到web路径:
其中一只攻击队同学是echo写入再certutil解码:
【动力|网络安全之红蓝对抗实战】


如果使用JAVA代码实现恶意EXE的下载执行上线 , 建议先判断System.getProperty(\"os.name\")System.getProperty(\"os.arch\")
git有很多优秀的JNDI利用工具可以使用 , 但是初衷还是希望自己动手实现上述场景定制的恶意类 , 一个包就打成功 , 攻击流量不要太多 。
办公网
办公网大概有7台主机通过DMZ区redis打过来 , 其中SMB泄露的账号密码直接用impacket包横向移动的脚本利用 。 同事帮忙搭了log4j漏洞的环境和完善了办公网的路径分 , log4j的利用和fastjson那台利用手法相似 。
办公网跨域还是沿用了上次的保存的RDP连接记录 。
需要提及的就是从域外如何发现域 , 除了网络侧netbios扫描或是88&389等常用端口的扫描【需要知道网段 , 很可能触发大量流量】 , 若工作组主机DNS服务器是域控时 , 可nslookup 域名根据返回DNS服务器名称判断是否有域 , 主机侧还可以收集的信息就是cmdkey /list |findstr Domain和mimikatz收集的凭据 。


shell dir /a %userprofile%\\AppData\\Local\\Microsoft\\Credentials\\*

域环境
域环境有8台主机 , 靶标在corp1.com域内 , 需要拿下corp1域管权限才能登录 。
域内部分主机不出网 , 以下方便复现给VPSIP开了出网白名单 , 实际解决可利用**beacon_bind_pipe/beacon_bind_tcp/pivot listener**
利用RDP破解的dev\\user02登录C06 , 有applocker , 限制了执行的程序 , 于是dll上线 , 白+黑参考LOLBAS 。

dev01.dev.corp1.com-10.5.12.248 , 起socks4A代理域外sAMAccountName spoofing直接打 , 利用成功会生成一张域管访问dev01的ST , PTT利用secretsdump.py获取krbtgt:


生成黄金票据:


域内横向移动常见方法:SC AT/SCHTASKS PSEXEC WMI WINRM DCOM.
上线dev01 , CS自带的remote-exec wmi报错 , psexec执行上线了但是又掉了 , 不稳定 , 还是手敲:
shell wmic /node:dev01 process call create \"C:\\xx\\beacon.exe\"


在DEV01-beacon运行mimikatz获取凭证发现corp1\\jeff用户 , steal jeff用户的token , 再Kerberoasting , 发现报错:


只好pth , 模拟corp1\\jeff权限:

在corp1域Kerberoasting发现SPNuser->user_S02:
execute-assembly C:\\Users\\Rubeus.exe kerberoast /outfile:C:\\Users\\jeff\\tgs.txt
hashcat -m 13100 -a 0 --force tgs.txt /usr/share/wordlists/FastPwds.txt



在dev01-beacon以corp1\\user_S02派生会话 , 发现失败 , 不能登录 , 于是在C06上派生会话 , 以corp1\\user_S02进入corp1域内:


发现corp1\\user_S02是S02的管理员:

和上线dev01一样 , 上线S02:

发现S02上跑着corp1域管的进程:


窃取token , corp1域管权限 , 成功拿下靶标S03 , 窃取目标文件:题外话溯源反制是可遇不可求的事 , 通过攻击流量找到人或是反制C2通常是攻击的VPS关联了自己的域名信息 , 或是有自己ID的payload , 或是踩了蜜罐 。 反制可能是攻击者在不恰当的目录下开了http服务 。
上次攻防对抗的时候用了UNC获取攻击者ID , 还比较好使:



利用desktop.ini获取访问诱饵文件的ntlm请求 , 做好后压缩为www.zip , 等人下载解压 。因为在/root目录下误启用python-http服务导致的反制: