供应链 | 迂回攻击

admin 2025年1月17日19:09:27评论7 views字数 1983阅读6分36秒阅读模式
本文由掌控安全学院 - flysheep 投稿

Track安全社区投稿~  

千元稿费!还有保底奖励~(https://bbs.zkaq.cn)

前言

在一次授权渗透测试中,有幸和一位大佬合作,目标打不进去后,通过供应链迂回攻击,拿到源码后,大佬现场审计出0day,印象非常深刻,于是把整个过程复现一下,希望给其他红队大佬做个参考借鉴。

缘起-常规信息搜集

在某年某月的某一天,领导突然给我们下达了渗透任务—进入某集团内网。承诺完成后带我们吃大餐,于是我们欢欢喜喜不情不愿地接受了。但是目标在网上暴露的攻击面较小,而且很多都藏在统一身份认证服务之后:

供应链 | 迂回攻击

既然绕不过就仔细分析下吧,发现如果输入的账号不对会回显“用户不存在”。输入的账号对,但是密码不对,会回显“密码错误”。这不就是用户名枚举漏洞吗。而且登录页面没有验证码,尝试利用burpsuite暴力破解用户名密码,万一运气好搞出来了呢也说不定啊,然而很悲催跑不出来

供应链 | 迂回攻击

利用goby常用企业端口扫描和漏洞扫描,发现IP资产14个,开放端口7个,中间件11个,但是没有扫描出可供利用的漏洞。

供应链 | 迂回攻击

此外,我们还尝试了目录扫描、指纹识别等常规套路。

迂回-站在前人的肩膀

经过两天尝试始终没有进展,出师不利呀,这个时候请教团队的一位渗透测试前辈。他给我们提供的思路就是尝试迂回攻击。我们于是通过爱企查,分析目标的子公司。不查不知道,一查吓一跳,确实有很多子公司,这一下攻击面扩大了很多

供应链 | 迂回攻击

于是接下来我们分别尝试看看这些子公司有没有薄弱点能够进入,我们最终锁定了子公司A的新闻发布站点后台:

供应链 | 迂回攻击

之所以想要“搞它”,是因为我们通过网络空间测绘平台fofa搜索,发现这个子公司站点存在很多的旁站:

供应链 | 迂回攻击

供应链 | 迂回攻击

其中,部分站点存在列目录漏洞:

供应链 | 迂回攻击

供应链 | 迂回攻击

经测试发现这些站点访问相应功能文件时均会报错:

供应链 | 迂回攻击

猜测已被废弃,其中/AdminControlPanel/upfile.php可正常访问:
供应链 | 迂回攻击

但上传后无结果回显,我们把目前掌握的绕过文件上传校验的方法都试了一遍,各种无效,严重怀疑后台的页面也许压根就没有正常运行。尝试了很久本来打算放弃了,上了个厕所回来后突然来了灵感,峰回路转了。通过对站点下文件检查,发现一处异常文件:

供应链 | 迂回攻击

代码逻辑翻译后即为:

TQ5r29v() -> return “assert”
参数1 -> $_POST[‘z’]
Hu3eT对象销毁后调用 TQ5r29v()(参数1),即assert($_POST[‘z’])
明显为恶意文件,这时发现目录下存在多个类似文件:

供应链 | 迂回攻击

其中部分为正常文件:

供应链 | 迂回攻击

猜测为long long ago的攻击者隐藏恶意文件构造相似文件名,部分文件返回 404 file not found !!:
供应链 | 迂回攻击

牛顿站在前人的肩膀发现了三大定律,我们站在前人的肩膀要拿到shell了么?但是一切也没有这么顺利的,直接传入z参数无回显。猜测代码逻辑没变,构造字典fuzz,发现传入参数为U时成功执行代码:

供应链 | 迂回攻击

激动人心的时刻到来啦,掏出我的哥斯拉连接之,最终获取主机管理员权限,哈哈哈!!!

供应链 | 迂回攻击

接下来就是翻找目录,看看有没有什么有用的东西。发现该主机搭载多台应用:

供应链 | 迂回攻击

查找发现子公司官网对应目录:

供应链 | 迂回攻击

查看数据库配置文件:

供应链 | 迂回攻击

连接可获取数据库管理员权限,查找到管理员用户信息:

供应链 | 迂回攻击

波折-加密逻辑破解姿势

但是上述密码是被未知算法加密的,直接放到各种解密工具下都是乱码。关键时刻,前辈再次出手了,只见他大手一挥,就下载了网站源文件。然后利用神器dnspy反编译查看代码,通过关键字查找迅速定位到登录操作:

供应链 | 迂回攻击

进入GetModel函数体中发现里面有加密函数Encrypt,然后跟进Encrypt函数中看看函数的详细逻辑,主要是DES加密,带盐的,总结其算法就是md5(md5($pass).$salt);VB;DZ知道了算法我们就可以随便解开密码了:

供应链 | 迂回攻击

供应链 | 迂回攻击

手动添加测试函数:

供应链 | 迂回攻击

修改为Console类型并设置入口点为Test.Main:

供应链 | 迂回攻击

保存后可解密出管理员明文密码:

供应链 | 迂回攻击

登录网站后台可以证明确实是管理员权限,解密是成功的:

供应链 | 迂回攻击

终章-不忘初心

万万没想到的是,我们在网站目录翻找的过程中,居然也发现了母公司官网对应目录:

供应链 | 迂回攻击

于是我们如法炮制,查看母公司网站数据库配置文件:

供应链 | 迂回攻击

可获取数据库管理员权限:
供应链 | 迂回攻击
查询管理员用户信息:

供应链 | 迂回攻击

解密出明文密码:
供应链 | 迂回攻击
登陆后台可获取web管理员权限:
供应链 | 迂回攻击
上传neoreg代理后可利用proxifier挂SOCKS5协议接入目标内网,至此任务完成:
供应链 | 迂回攻击

总结-心得体会

目标打不进去后,通过供应链迂回攻击,第一次文件上传利用失败后转换思路,分析shell逻辑,最后成功骑马破门,获取了webshell和数据库权限,但是解不开密码,于是下载源码,大佬现场审计代码破解了加密逻辑,印象非常深刻,最终迂回到目标站点成功拿下。通过这次任务,我也进一步认识到,搞渗透测试,一方面要基础扎实经验丰富,另一方面还是要心思细腻,不轻言放弃。

原文始发于微信公众号(掌控安全EDU):供应链 | 迂回攻击

免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉。
  • 左青龙
  • 微信扫一扫
  • weinxin
  • 右白虎
  • 微信扫一扫
  • weinxin
admin
  • 本文由 发表于 2025年1月17日19:09:27
  • 转载请保留本文链接(CN-SEC中文网:感谢原作者辛苦付出):
                   供应链 | 迂回攻击http://cn-sec.com/archives/3639415.html
                  免责声明:文章中涉及的程序(方法)可能带有攻击性,仅供安全研究与教学之用,读者将其信息做其他用途,由读者承担全部法律及连带责任,本站不承担任何法律及连带责任;如有问题可邮件联系(建议使用企业邮箱或有效邮箱,避免邮件被拦截,联系方式见首页),望知悉.

发表评论

匿名网友 填写信息