freeBuf
主站

分类

漏洞 工具 极客 Web安全 系统安全 网络安全 无线安全 设备/客户端安全 数据安全 安全管理 企业安全 工控安全

特色

头条 人物志 活动 视频 观点 招聘 报告 资讯 区块链安全 标准与合规 容器安全 公开课

官方公众号企业安全新浪微博

FreeBuf.COM网络安全行业门户,每日发布专业的安全资讯、技术剖析。

FreeBuf+小程序

FreeBuf+小程序

应急响应 | 扑朔迷离的黑链
2024-04-08 09:53:05

事件背景

某客户被通报存在黑链页面显示招租广告,而且只有通过百度跳转才会显示下图页面:

排查过程

1、前期常规排查,第一反应就是去服务器本地寻找黑链页面"/news/article/detail/nwnsaii9.html",但是主机web目录翻遍了硬是没有找到黑链页面nwnsaii9.html,甚至连相关目录都没有找到。

2、于是重新梳理思路从跳转入手,测试直接访问"/news/article/detail/nwnsaii9.html",发现自动跳转访问“www.8y818.com”,于是点击查看源代码发现实际是nginx 404页面中存在恶意跳转的js代码。

3、主动访问异常Js页面,发现又是一个跳转访问,跳转其中一个逻辑是判断来源页面若是包含“baidu.com”就会跳转指定页面(黑链),若不是就回显404.html。这就正好能解释为啥只有从百度跳转才会看到黑链页面了。瞬间信心大增,说明已经逼近真相了!

4、访问域名"https://www.788189.com/index/Code.html?channelCode=seo88"测试果然就是被通报的黑链页面,整体跳转逻辑也已经非常清晰了。

5、重新梳理跳转逻辑如下,仔细分析发现nginx404报错页面,说不定最初寻找的黑链页面nwnsaii9.html确实是不存在,只是利用nginx 404报错页面实现跳转而已。

6、随便访问不存在页面/news/article/detail/111测试,果然也会跳转访问恶意js页面,其状态码为503。

7、既然知道跳转逻辑,那么只要找到nginx“404 not found”页面,修改一下回显内容即可解决问题,立即排查nginx 配置文件。但是其配置页面并没有配置404、503等状态码的页面,难道是硬编码了?

8、思路一下牵引至程序本身,服务器本地nginx程序版本查看是1.24.0,并且和官网文件对比nginx程序完全一致,并未被篡改的情况,也没有发现异常dll劫持的情况,一下晴天霹雳,感觉又进入死胡同。

9、一说到版本似乎有点不对,我之前看到nginx报错版本为1.24.1,但是服务器本地版本为1.24.0啊,难道不是本地的回显?

10、赶紧排查nginx代理配置,发现/video、/app以及/news等多个接口均跳转至“http://115.92.119.111:8193”,主动访问“http://115.92.119.111:8193”发现nginx报错版本为1.24.1瞬间大喜,这不就是黑链的跳转页面嘛。

11、这下一切清晰明了,删除所有跳转配置,网站访问就恢复正常了,这里不得不夸赞一下小黑子,这个黑链思路挺清奇,想必是一个思维灵活的小黑子。

总结

1、回过头来想其实本次黑链原理实现比较简单,只是小黑子设置的障眼法太多,容易使人迷失排查方向,梳理清楚跳转逻辑问题也就迎刃而解了;

2、事后复盘,发现nginx代理跳转单纯从浏览器侧调试是无法看到访问外部地址的,但是可以抓包实现。

# 应急响应 # 黑链
本文为 独立观点,未经允许不得转载,授权请联系FreeBuf客服小蜜蜂,微信:freebee2022
被以下专辑收录,发现更多精彩内容
+ 收入我的专辑
+ 加入我的收藏
相关推荐
  • 0 文章数
  • 0 关注者
文章目录