一个周五的晚上,我舒适地躺在沙发上,《王者荣耀》和《米莱蒂》正在开心地偷塔。突然,一个电话打了进来,当我看到老板时,我有一种不祥的预感:看来这场比赛不能善终了,我的兄弟们很抱歉。
果不其然,事情是这样的:某机构运行多年的大型门户网站突然发现挂马病毒现象,页面会自动跳转到带有颜色的网站。某机构的大领导非常生气,影响非常恶劣,要求不惜任何代价恢复正常。
我挂了电话,登上微信,发现自己被拉进了交流群。群里已经炸了,大领导很生气。幸运的是,这个网站不是我们团队开发的。据说负责开发的团队已经调查了一段时间,但没有任何进展。
为网站清除特洛伊病毒有这么难吗?
我问对方要了服务器管理账号的密码,发现这个服务器的安全等级真的够高。我需要挂VPN,然后登录堡垒机器,最后我可以进入服务器。服务器的安全级别已经这么高了,网站还是可以挂的。看来漏洞一定在网站的源代码中。
再看服务器环境,是Windows系统+IIS7+PHP的组合。
然后问题又出现了,具体跳转情况如下:用搜索引擎搜索网站的关键词,在搜索结果中输入网站,然后网站被重定向到一个彩色的垃圾网站;直接在浏览器地址栏输入网址,不跳转即可正常访问;
以下是一个彩色网站的截图:
很奇怪,只有从搜索引擎的搜索结果中访问网站才能自动跳转。
根据之前的调查经验,既然会自动跳转到其他网站,那么一定是在源代码中添加了跳转代码,可能对访问来源做了一些判断,只有搜索引擎的访客才能跳转。
反正既然能跳,跳码里肯定有垃圾站的域名。我们先全局搜索一下垃圾站的域名。
把整个门户网站的源代码下载到本地才敢随意折腾。好家伙,这个门户运行了近十年,源代码压缩到20G,有点吓人。按照这个服务器5M的带宽,恐怕要下载到永恒了。所以对代码结构的简单研究排除了一些图片上传目录,只留下了几百兆,最终在很长时间后下载完成。
用代码编辑器打开项目,发现网站是用已经绝迹多年的小众CMS系统开发的。网上搜索了很多关于这款CMS的信息,我不了解这么多优秀的开源CMS,所以我必须使用这款。
不管有多少,直接全球搜索垃圾网站域名,当然什么也没找到。在这种情况下,黑客肯定对域名进行了加密或编码,最常见的是Base64,因此将域名编码为Base64并继续搜索,但仍然一无所获。
然后我搜遍了很多不良网站的关键词,一无所获。
看来这个黑客不是什么善茬。
最后,我不得不使用愚蠢的方法:检查每个文件。
通常黑客植入的病毒代码是由工具自动编写的,代码的编写风格会与网站的原始风格格格不入,如缩进、变量命名规范、文件命名格式等。,所以很有可能找到一个又一个文件。
总之,我终于在缓存目录中发现了一个异常文件。
这个11.php太引人注目了。
以URL的形式访问这个11.php。打开后,它看起来像这样:
现在我看到了希望,这是一款功能齐全的远程操作工具。有了这个,不仅网站代码可以随便更改,甚至服务器也可以随意操纵。
围绕这条线索,发现了许多病毒文件,并将其全部清除。
按照这个进度,我今晚应该能有几轮米拉迪,我的心开始变得美丽了。
但是,再次测试后,网站仍然自动跳转到垃圾站!
是浏览器缓存问题吗?清除浏览器缓存,问题仍然存在。
是服务器缓存问题吗?清理服务器缓存,重新启动IIS,问题仍然存在。
我震惊了。
然后整个团队又骂骂咧咧的看了一遍所有的网站文件,真的没有病毒代码。
代码是干净的,不可能再次跳转,但事实就摆在我们面前。
不管有多不可思议,虽然我已经忙了很久,但我最终不得不承认,跳转到垃圾站的不是网站的源代码。
既然不是源代码问题,那肯定是IIS问题。是301重定向吗?
打开重定向面板,发现什么都没有配置,然后检查web.config,没有异常。
在这种情况下,只需删除现有的网站服务,重新创建应用程序池,重新绑定域名和目录,在一次操作后再次访问网站,仍然会跳转到垃圾站!
这个时候我的内心是绝望的,所以我今晚不想睡觉。
然而,那句话是怎么说的:
“只要努力,就有希望。”
“我们现在面临的问题可能正在好转。”
当我再次重启网站时,IIS突然报告了一个错误:
HttpResetModule.dll,为什么我没见过这东西?网上查了一下没看到这个东西的介绍。最后,我大胆地怀疑这个东西是不是不应该存在。
为了早点睡觉,我打算把这个模块删掉看看。
进入IIS模块管理:
在列表中找到HttpResetModule,删除它!
顺利删除了,然后又测试了一遍。网站没有跳转到垃圾站!
天啊。黑客居然做到了这一步!
到这里我才完全明白,黑客实际上改造了IIS,对方用power lifting工具获得了服务器控制权限,然后在IIS中添加了一个额外的重定向模块,并在网站中植入了如此多的特洛伊病毒文件作为烟雾弹。真正的凶手实际上在IIS模块中,而且黑客的个子真的很高。
看来这个服务器环境完全不安全,重装系统是必然的。另外,这个网站是用CMS系统开发的,漏洞太多,重建是必然的,否则再次被入侵只是时间问题。这与我们的团队无关。
简而言之,清除特洛伊病毒的难度仍然相对较高。虽然我很累,但我觉得很充实。最后把结果发到领导群里,表扬的话都跳过了。
网友评论