通过允许文件的白名单限制外部二进制程序的执行

时间:2016-02-22 22:39:02

标签: php security

在运行PHP的Web服务器上,我需要PHP脚本才能通过exec()system()或类似的方式运行一个特定的外部程序。 因此,必须在PHP级别启用执行功能。

但是,为了减轻恶意PHP代码的影响,我想将执行从PHP限制到只需要的程序。

换句话说,我不希望PHP能够运行在文件系统中找到的任何(危险)程序,例如/ bin / ls,/ usr / bin / wget等。

编辑:信任或不信任用户输入不是问题。我知道我的PHP脚本运行合法程序。我担心恶意PHP脚本能够通过shell exec运行所有内容。

似乎PHP不允许指定可以执行的文件名,但有没有解决方法来限制执行?也许写一个自定义的PHP扩展?

0 个答案:

没有答案