我的共享主机被黑客入侵了,我需要检查我的 PHP 脚本是否有后门。我现在在专用服务器上,因此我可以使用 SSH 运行脚本。有没有什么好的脚本可以完成这项任务?
答案1
这将是艰难的。我怀疑是否有脚本可以检查 Php 后门,即使有,也无法清除所有后门。最好使用已知的良好备份进行恢复。
更改您的密码,包括数据库的密码。审计主机。
答案2
ClamAV 在这方面做得很好。它不只是寻找 Windows 病毒。根据您的环境,如下所示:
Plesk:freshclam;clamscan -ir /home/httpd/vhosts/*/httpdocs/| tee ~/possible.phpshells
cPanel:freshclam;clamscan -ir /home//公共html/| tee ~/possible.phpshells
我以前也使用下面的方法,直到我发现 clam 效果很好。但这些方法太多了,我跟不上:
查找/home/*/public_html/-size -200k-type f-print0|xargs-0 grep-iE“r57shell|c99shell|g00nshell|EgY_SpIdEr|egy_spider|phpjackal”|uniq-c|sort-u|cut-d“:”-f1|awk'{print $2}'|uniq>/root/possible.phpshells
答案3
马尔代特运行起来可能会很好。它可能会检测到 clamscan 无法检测到的东西。例如,它会拾取常见的“eval(base64_decode”模式。
但是,我不会相信来自该主机的任何代码。从备份中恢复确实是最好的选择。
答案4
如果有人仍在寻找这个问题的答案,有一个很棒的免费 PHP 实用程序,您可以在服务器上运行它来查找 base64 编码的字符串和其他几个常见的 shell 字符串。
该实用程序称为PHP Shell 检测器。