一次localhost被劫持发现的盗版系统后门

0x00 起因

今天准备通过一个win7虚拟机的web服务测试一些东西的时候,打开127.0.0.1忽然发现有点不对劲,网站怎么跳转到一个www.776633.com的域名,然后又跳转到一个114la什么的网址导航了。

在新开一个页面重新访问localhost之后发现并不是自己眼花了,瞬间想到一个可能,嘛耶我该不会被劫持了吧。

能造成这个情况的原因有很多,首先从最危险的情况开始排查,在确保了自己的网络环境是安全的,没有dns劫持等问题之后,考虑到这个系统是很久之前为了节约时间,临时在网上找到的别人封装好的盗版系统,难免会有后门,那么问题应该是出在这个win7系统内部了。

0x01 HOSTS文件劫持

在这个临时安装好,没有杀毒软件的系统,有后门、恶意软件的概率很高,很多恶意软件通过修改本地hosts文件对一些网址进行劫持,所以打开hosts看看是不是有恶意软件把hosts文件给更改了。

HOSTS文件

Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应的IP地址建立一个关联“数据库”,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应网页,如果没有找到,则系统会再将网址提交DNS域名解析服务器进行IP地址的解析。

如果恶意软件要通过hosts文件来劫持的话,可以通过添加一行类似:

1
127.0.0.1 www.baidu.com

这样访问百度就会解析到本地ip,如果这个文件的ip被改写成攻击者的服务器地址,那么我们访问后面的域名,就会解析到对方的服务器。

排查问题

win7系统的hosts文件在C:\Windows\system32\drivers\etc目录下,我们打开hosts文件查看一下有没有被篡改。

但是在打开的这个hosts文件中,并没有看到任何可疑的东西,那么看来不是HOSTS文件篡改造成的问题,我们只能换个思路了。

0x02 恶意进程

既然不是hosts的问题,那么我访问127.0.0.1会被定向到恶意网站,一定是有恶意进程将本地80口占用,然后进行这一系列操作的,那么就去查看一下哪些进程在占用着本地80端口。

在命令行中输入:

1
netstat -ano | findstr "80"

看到pid为1120的进程占用着80口,那么在任务管理器中找找到底是什么进程。

按pid排序之后发现是httpd.exe进程,这再熟悉不过了,不就是apache服务吗,不过想想自己也没在这个系统里面装过apache服务,猜想应该是这个系统封装的时候那个作者给弄进去的,不管是不是它造成的,先直接右键关掉整个进程树。

然后重新访问127.0.0.1,发现已经没有问题了,那么就确定是apache的问题。

这个时候肯定要在apache安装目录看一看这小子到底在搞什么鬼,在检查了一会配置文件等问题之后,在C:\Windows\Apache\htdocs这个目录下的index.php发现了问题:

我来解释一下这段php代码:

  • 首先这个php文件从 http://host.660055.com/index3.txt 这个网站读取一份txt文件,将里面的内容作为字符串存在$index中。
  • 然后以@为分隔符,将$index字符串分割成为数组保存在$arr中。
  • 然后将角标为零的元素保存为$host,角标为一的元素保存为$index,并且用$index替换index.php文件内容,用$host替换本地HOSTS文件中的内容进行进一步劫持。

通过这部分内容,对方就可以通过更改网站中txt的内容,对所有拥有这个php文件的计算机的hosts文件进行更改,并且还能继续更新受害者计算机上的这个php文件做其他的事情。

再看看这个php文件后面的部分

可以看到,在所有的代码运行过一遍之后,php文件将网址重定向到 www.776633.com。

在通过burpsuite对这个网址进行抓包之后,除了跳转那个114la的网址导航,就只剩几个js页面。

这几个js页面全部访问了一下,大致看了一下代码然后在控制台运行了一遍之后,发现都是把一些数据发到一个站长数据的页面,没有什么安全问题,应该是攻击者统计一些数据用的。

那么看来最后这个跳转的地址也是对方可控的,初步判断是攻击者用来刷刷这个网址导航的流量,顺便能够起到掩人耳目的作用。

0x03 清除恶意进程

分析到这里,整个流程就清楚了,我除了把这个php脚本拷贝一份留下学习思路之外,将这个htdocs目录所有东西删除掉就没有问题了,如果不放心,我们可以将apache软件从计算机卸载,然后删掉整个apache目录就行了。

0x04 总结

我们清理了这个后门,仍不能保证这个系统就一定是安全的,很多盗版镜像站下载下来的系统都存在许许多多这样的问题,这种只用一两次就删掉的虚拟机为了方便用一些封装好的系统没有问题,但是如果我们是安装在自己电脑中长期使用的系统,一定要去官方下载正版的镜像。