2022.8.X单位突然通知参与某行业专项攻防演练,本着学习的目的参与了一波,特此记录。
获得目标单位名称
先通过爱企查、天眼查等工具查询目标及目标下属单位信息
可以利用工具:ENEScan_GO
接着就是信息收集三板斧
子域名、IP、端口
收集子域名:OneForAll(API要配置全一点)、Subfinder、FOFA、Hunter
收集IP:Eeyes、domain2ip
端口扫描:Goby、Nmap、Masscan
这里使用的是Goby全端口扫描,扫描速度堪忧,但优点是比较全面且展示效果较好。
端口扫描后筛出Web类与非Web类端口,便于精确打击。
Web类可以先统一进行指纹识别,优先攻击一些重点的框架系统 比如(Shiro、通达OA、用友NC等)
非web类可以筛出来进行服务爆破,一些特殊的端口可以优先摸一下试试,比如6379 Redis
一番操作之后,通过以上打点,得到了一个Shiro框架的系统,这个系统是访问路径后默认跳转到SSO平台进行登录的。想进入该系统,入口必须是走SSO平台登录验证后进入。但是经过手工口令测试,发现通过弱口令进SSO系统有点困难,战略性放弃。
先利用Shiro反序列化工具查看是否存在RCE漏洞。
这边给个建议,不同工具可能不一定能抛出Key和利用链,大家在进行测试的时候,手里尽量多换几个工具来测试,我这里换了三个工具才跑出Key和利用链,其他的工具就是跑不出(不是Key字典的问题,就是单纯跑不出。。。)
Linux机子,whoami Root权限,ping www.baidu.com 出网。
先用linux语句 根据网站的静态文件名称找一下目录地址
find / -name 404.jsp
直接到能访问的网站根目录下 wget我VPS上的JSP马,接着蚁剑连接。
翻了一下/webapps下,发现是3个系统+SSO系统
猜测只要经过SSO验证就可以访问其他的3个系统
接着开始翻配置文件
在路径 /webapps/xxx/WEB-INF/classes/ 下
发现一个dbconfig.properties文件,发现了MySQL与Redis的连接信息。(要打码的东西较多,我就不放了)
MySQL是阿里云的,不是内网本地的,看了一下,发现原来打的这台机子是云主机。
白高兴一场,想着下一步就连一下MysQL看看能不能登陆SSO 以及接着翻翻看看有什么文件还有泄露配置信息然后就收工了。
mysql连接后,看到了SSO的库,以及其他3个系统的库,但当务之急是先看看能否登录SSO
查看SSO表中的sso_pwd字段
发现是加密的。。。还不是普通的加密。(蚌埠住了。。)
正当准备写报告收工时,一个名为 config.properties 的文件引起了我的注意。
点开查看了一下发现 what!!!
SSO加密的密钥对 以及 Aliyun的accesskeyID和Secret
起飞!
密码竟然是随机生成的。。。这辈子都爆破不出来。。
登录SSO系统
接着通过数据库中的其他库的密码 进入3个系统,图片我就不放了(要打码的东西太多了。。。。)。
前几天才看到的TeamSix师傅的文章,今天正好有现成环境复现,美滋滋。
我用 CF 打穿了他的云上内网 | T Wiki (teamssix.com)
CF工具地址:
teamssix/cf: Cloud Exploitation Framework 云环境利用框架,方便红队人员在获得 AK 的后续工作 (github.com)
cf alibaba ls
查看云资源
1个bucket桶 + 2个OSS资源 + 1个ECS资源
cf alibaba console
添加后门用户接管阿里云控制台
访问控制中看到当前权限为:AdministratorAccess 意味着我们已经拿到了该租户的管理员权限
翻一下 OSS资源以及ECS资源
OSS:
ECS:
至此,完事,写报告,收工。
复现了一波AK接管云平台,感觉收获良多,相信云安全这块以后也会成为攻防演练的突破口。
此外,这次的攻击路径有点太过顺利了,不管是发现Shiro框架还是翻配置文件找到RSA密钥对和AK配置信息,我一度以为是蜜罐。。。
番外:
写报告的时候,和队友聊了一下,没想到这个站还是靶标。。。。只能说攻防演练,运气也是很重要的。。。。