PHP Sandbox的安全问题
我正在为Web应用程序Honeypot开发
PHP沙箱.
PHP沙箱将分析可能作为RFI攻击的一部分注入的PHP文件.它应该在安全的环境中运行该文件并返回结果,嵌入PHP脚本的输出.我们希望愚弄攻击者相信这是一个真正的反应,从而继续他的下一步攻击.
为了构建沙箱,我们使用了Advance PHP Debugger(ADP).使用rename_function和override_function,已经重写了易受攻击的PHP函数.某些函数(如exec,disk_free_space)已被重写以发送虚假回复.所有其他功能只是不返回任何东西. Here’s完整的已考虑功能列表. 此外,输入脚本在沙箱中最多只运行10秒.之后,整个沙盒进程被杀死. >这个清单足够好吗?这是否使沙盒足够安全,成为Web应用程序的一部分? 简而言之,我想知道我应该从列表中添加/删除哪些元素. 解决方法
我认为很难(如果不是不可能的话)预见所有可能的有害函数调用以伪造它们的输出(例如,highlight_file或其别名show_source不在你的列表中).此外,对于真实应用程序和蜜罐使用相同的服务器引起了其他问题:应用程序是否使用扩展?如果它确实有更多功能必须被阻止/伪造.如果您更新其中一个扩展,该怎么办?你将不得不重新检查新的安全漏洞.如果恶意文件上传到蜜罐,然后从主应用程序访问,该怎么办?确定你会采取措施不允许这种情况发生,但是如果你在某个时候有错误,那么有害代码已经存在于服务器上……对我来说并不安全.
我认为最好像MitMaro建议的那样设置一个vm.在这种情况下,VM本身就像你可以得到的沙箱一样好,没有太多的努力你可以让所有那些讨厌的PHP函数在VM内部执行而不会损害主应用程序的安全性 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |