如何停止eval的传播(gzinflate(base64_decode()));在服务器?

时间:2013-02-09 05:04:37

标签: php

在我的服务器中,许多文件在文件中添加了以下行...

eval(gzinflate(base64_decode('some code')));

我已经清除了一次但仍然会再次出现。任何人都可以帮我阻止这种情况而不再传播吗?

1 个答案:

答案 0 :(得分:6)

您的服务器遭到入侵!如果你没有找到它首先出现在那里,并插入那个安全漏洞,那么在你的文件中删除那段php就无济于事。理想情况下,您甚至想要让服务器脱机,直到您完成下一步。不用说需要更改凭据,需要通知用户更改其密码,并且需要对服务器进行一般审核(检查数据一致性等)。

只是fyi:在某些情况下,你在上面写的“某些代码”可能是一个与db管理器完全成熟的服务器管理界面!

关于在哪里查找漏洞的来源,您可以查看常见的嫌疑人:

  • 是您写入文件的任何代码吗?如果是这样的?你是从用户输入计算文件名吗?那是消毒了吗?
  • 你有文件上传功能吗?如果是,上传的文件是否可由Web服务器直接提供?它们是否在可以作为php文件执行的目录中?注意:如果您使用的是CMS,则可能 上传了文件!
  • 谁有ssh / ftp访问你的服务器?你能查看访问日志吗?
  • 如果您正在使用可以访问管理面板的CMS,审核日志,更改每个人的凭据

现在很难适应你的位置,但最好还是排除故障。