在PHP中使用哪些技术来查找恶意代码?

时间:2016-03-14 13:04:28

标签: php security

目前,我的测试服务器上的Web应用程序副本未经更改,另一个文件夹用于开发。每当我准备好使用某个版本时,我首先将其复制到主“live copy”文件夹,然后再复制到该站点。我有一个脚本,它查看网站上实时版本中使用的所有PHP文件的确切文件大小,直到字节,并将其与“实时副本”大小进行比较。

我希望如果将一些恶意代码注入到我的PHP文件中,将显示文件大小差异,并将从原始文件中恢复文件。

我也在搜索文件“eval(”。

我还可以查找什么来检查恶意代码?

1 个答案:

答案 0 :(得分:1)

免责声明:为了确保我们网站的安全,您需要做很多事情 - 但您的问题与确保代码完整性有关。此外,它仅适用于小型,低价值的网站。如果你正在运行一个国家导弹防御的指挥和控制中心,或者是一家大型银行,那么你需要的东西比我在这里描述的要复杂得多(很遗憾地说明显而易见的 - 但是认为在另一个情况下澄清这一点是明智的。读者认为这具有更广泛的适用性。)

匹配文件大小是一个开始 - 但相对容易破坏 - otoh生成文件的散列(在大多数基于主机的IDS中实现)需要远程服务器上的附加功能。

您搜索“eval(”不会检测到“eval(”。也可以使用include / require,create_function和preg_replace()注入代码(最新版本的PHP中已删除了最后一个)。

根据代码量,我倾向于在本地复制您的生产站点并在本地检查内容的更改,而不是仅仅查看远程文件大小。或者至少在服务器上生成哈希数据库并下载它们以进行比较。只要您确信从开发机器部署的代码是干净的,这应该解决您当前正在执行的过程。