朋友网站被挂马,如何排查

@Ta 2022-09-24发布,2022-09-30修改 51574点击

2022.9.30 重新编辑整理如下

【现象描述】
1.访问网站(需使用手机user-agent),弹出新标签,跳转色情网页
2.F12 发现很多 js 文件都被植入恶意代码

【已做排查】

  1. 使用了 https,排除中间人可能
  2. 使用D盾和宝塔查杀网站目录,未查杀出内容
  3. 检查 js 文件最后修改日期,近期没有修改
  4. 查看 js 文件内容,里面并没有恶意代码(但是浏览器请求到的 js 中有恶意代码)
  5. 在 linux 服务器上用 auditd 监控js文件,并未发现相关js被动过
  6. 使用 goby 和 nessus 扫描服务器,并未发现高危漏洞

【目前进展】
已经排查出是nginx出了问题

  1. 依据:重装 nginx 后,返回浏览器的 js 文件未发现恶意代码
  2. 现象补充:并非所有 js 文件都会被加恶意代码,只有符合条件的js(文件达到一定长度)的才会被加恶意代码

【过了几天后】
网站再次被挂弹窗,现象和之前一样

【目前推测】

  1. 宝塔某个下载节点 nginx 源头被污染(有两个网友,都用的宝塔,出现同样现象,被挂的恶意代码一模一样)
  2. 多节点 ping 这两个网友的节点,都有 cloudinnovation,不知道是否是他的问题
  3. 服务器或相关组件存在 0day
  4. 服务器应该已经被植入后门了
    小米MIX2s(白)
回复列表(22|隐藏机器人聊天)
  • @Ta / 2022-09-25 / /

    @老虎会游泳
    F12 发现 jquery.min.js 被植入恶意js代码

    这个是我偶然发现的,因为 jquery.min.js 是网页第一个加载的 js 文件,所以一眼就发现了。
    如果说相关js代码藏的比较深,我应该如何找到?我尝试过重新定义 window.open,使其抛出异常打印堆栈,但是不行
    小米MIX2s(白)

  • @Ta / 2022-09-25 / /

    @天蓝,怎么都是啊,我这里我有一个类似的。微信群友的网站也这样了。第一次访问就会跳转
    https://bbs.xzwidea.cn
    @老虎会游泳
    一加8Pro

  • @Ta / 2022-09-25 / /
    厉害了,这不会是网站者自己接的广告吧?

    如果不是,那么别人是什么实现的呢?
  • @Ta / 2022-09-25 / /

    @罐子,我靠,弹的内容一模一样
    小米MIX2s(白)

  • @Ta / 2022-09-25 / /

    目前进展:已经排查出是nginx出了问题
    依据:在宝塔切换nginx到1.22后,不再挂马,再切换回1.20,也不再挂马(切换nginx版本相当于卸载重装)
    现象:之前的nginx会对【符合条件的js文件,即文件达到一定长度】的响应内容中追加恶意js
    难点:目前不知道为何nginx会追加恶意js,大致检查了下nginx配置文件,并未发现问题

    不知道服务器是不是已经被入侵留木马了
    小米MIX2s(白)

  • @Ta / 2022-09-25 / /
    说是最近nginx漏洞了
    我是晨曦,我喂自己袋盐!
  • @Ta / 2022-09-25 / /

    @晨曦,我不是很会看漏洞,这是搜索到的一些nginx相关漏洞

    https://www.tenable.com/cve/search?q=nginx&sort=newest&page=1
    小米MIX2s(白)

  • @Ta / 2022-09-25 / /

    @加勒比海带,早不搞了
    小米MIX2s(白)

  • @Ta / 2022-09-29 / /
    一开始是怎么装的?最初始的环境配置是啥?
  • @Ta / 2022-09-29 / /

    @梦浪的小虾米,编译安装的nginx v1.20,其他的phpmyadmin,php版本什么的不确定

    @罐子,另外罐子的群友遇到同样的挂马,是极速安装的nginxv 1.22(也是用的宝塔)


    最新进展:使用goby和nessus扫描工具并未扫出服务器漏洞
    小米MIX2s(白)

  • @Ta / 2022-09-29 / /

    @天蓝,现在还能复现吗
    一加8Pro

  • @Ta / 2022-09-29 / /

    @罐子,现在不清楚是否还能复现
    1.一开始是电脑都会弹
    2.后面是只有手机会弹
    3.重装nginx后次日晚,有两个使用校园网的访问反馈依然弹窗,但是更换数据流量后正常,证明不是浏览器js缓存的问题
    4.可能又被挂马了,但是不是所有访问都弹,可能只有部分IP会弹,也不好复现
    5.观察中
    小米MIX2s(白)

  • @Ta / 2022-09-29 / /

    @天蓝,可能要考虑一下是不是地方运营商内部加了劫持工具,我之前在网上就看到有人干过这个事。
    在全国各个机房收买内部运维人员等植入恶意程序进行劫持。

    一加8Pro

  • @Ta / 2022-09-29 / /

    @罐子,不会的,用了 https
    小米MIX2s(白)

  • @Ta / 2022-09-29 / /

    @罐子,用了 https 应该不是中间人,例如运营商。。不过买通内部运维倒是有点可能,出现问题的两个网站服务器好像都在同一家公司的机房
    小米MIX2s(白)

  • @Ta / 2022-09-29 / /
    不会还能根据用户喜好选择是否展现的吧?
  • @Ta / 2022-09-29 / /

    @大尨,有的会根据IP什么的决定
    小米MIX2s(白)

  • @Ta / 2022-09-30 / /

    最新进展:之前重装nginx后 现在问题复现
    小米MIX2s(白)

  • @Ta / 2022-10-01 / /

    刚刚在宝塔论坛看了下,很多人出现类似的问题,已经有人排查出是nginx二进制文件被替换了
    小米MIX2s(白)

添加新回复
回复需要登录