前言
据上次部门内组织的对立赛-记一次内部红蓝对立曾经过去两届了,第四次的时分导师将靶场的网络拓扑重新设计了下,当时是以防卫队的身份参与。这次有幸以靶场环境设计的角色参与,在之前原有网络拓扑的根底下重新部署了破绽环境,便有了本文。
背景引见:目的是拿到企业www.xxx.com的《上市商业方案书.docx》,经过OPENVPN访问。
特别提出的得分规则修正,权限的得分必需有WEBSHELL/交互式SHELL,只要一个破绽回显不给分,愈加倾向调查破绽应用
而非破绽考证。
Author: 0ne
DMZ区
DMZ区大约有9台机器,3台入口点和官网分别用防火墙映射进来模仿互联网,4个页面分别对应xxx.com的四个子域名。
Ngnix解析破绽
在网站目录下写了个upload.html页面,调查途径扫描,上传页面是做了白名单校验,原本是调查在有WAF状况下怎样判别黑白名单,假如一开端就上传webshell,包被阻断就不好判别是程序不允许还是WAF拦截了,会糜费些许时间。但是在实践的过程中思索难度就未启用WAF。仔细的同窗可能看见Ngnix版本信息就会联想到解析破绽,有经历的同窗可能看见PHP+白名单可能也会第一时间联想到解析破绽。
未预期的解?
:上传的php代码是在菜鸟教程找的。笔者测试的时分,发现”白名单能够绕过”,win环境+文件上传后未重命名。其中<>?/^*:|”等符号不允许在文件名中呈现。所以有了:
1.php:.png可以落地1.php,但是文件内容为0kb,绕不过去。哈哈哈嗝,等一个师傅能落地webshellQAQ
。
PHPStudy后门
常规RCE破绽+win环境+杀软的调查,留了php探针页面。一些常用的下载执行的命令无法运用会被拦截,绕过可自行测试LOLBAS。其实这个破绽实质还是php代码执行,能够直接用file_put_contents()
写入一句话:
很多同窗还是用的system(‘echo/powershell/certutil’)写入,杀软不给力PHP_CGI.exe调powershll/certutil写文件或是解码,进程链未拦截,初衷还是希望大家能代码执行的时分不调用命令执行。
Fastjson破绽
原本想部署的靶场是shiro JRMP链+win+杀软的,奈何不懂java,鼓捣半天没弄出来
原意是想让大家修正yso完成代码执行打shiro JRMP完成内存马/下载执行【java完成】/静态资源写webshell,但卒QAQ
。
调查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\*
RDP密码破解参考。
域环境
域环境有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效劳招致的反制:
感谢您的来访,获取更多精彩文章请收藏本站。
1 本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
2 本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
3 本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。
- 最新
- 最热
只看作者