我相信有人通过我的网站在我的服务器上运行shell命令。
我会说,寻找未经validation的用户input的evals。 一般来说,查找未经validation的用户input。
检查你的代码中是否有对eval函数的调用。 当你有了它,检查评估什么,如果用户input是使用它是你的罪魁祸首。
然后,检查你的fopen,fwrite,error_log和file_put_contents调用。 任何使用用户input来创build文件path($ _FILES数组是用户input)? 另一个可能的攻击媒介
检查你的包含,并要求:你使用用户input来创build你正在加载的文件的path?
让我们去看另一个:你有任何让用户上传的东西?
你是否在任何地方使用exec和它的朋友? 在那里检查。
我相信有人通过我的网站在我的服务器上运行shell命令。
你知道什么样的命令正在运行? 如果是的话,你可以看看你的networking访问日志,并确定是否有任何可疑的活动。
你使用数据库吗? MS SQL Server具有相当于exec()的命令,允许攻击者运行shell命令。 即使有了MySQL,也可以运行shell命令,前提是你有一个具有写入/执行权限的目录。 看到这篇文章 – http://www.greensql.net/publications/backdoor-webserver-using-mysql-sql-injection