我想知道你们采取了哪些措施来防止下载的插件成为恶意插件?
比如wordpress做了什么来保证你下载的插件不是简单的执行unlink('/')
我假设它部分取决于下载者安装插件以使用他或她自己的判断力,但插件系统是否采取措施将运行第 3 方插件的安全风险降至最低?
谢谢! 马特·穆勒
最佳答案
简单的答案:您不能以编程方式执行此操作。根本做不到。当然,Wordpress 有某种验证器来确定该插件是否完全有害,但无法确定它是否安全。
我今年夏天在 Mozilla 实习,我正在研究验证器,它会在附加组件提交到 addons.mozilla.org 时对其进行扫描。我只能想象 Wordpress 有一个非常相似的工具。这个想法是应用程序完全拒绝公然恶意代码 (eval("evil nasty code");
),而其余部分则通过一些简单的启发式方法进行分析。现有算法根据它在附加包中看到的内容标记出一些潜在的危险信号,并将这些注释提交给编辑,然后由编辑审查代码。它实际上最终成为一个人力驱动的过程,但该软件有助于处理大量繁重的工作。
Mozilla 验证器使用的一些技术:
- 语法检查
- 代码和标记解析 (HTML/CSS) 以查找远程代码漏洞
- Javascript 解析和分析(将 JS 解析为 AST 树并分析每个语句,尽可能深入地评估静态表达式)
- 兼容性/弃用测试
你可以在这里查看代码:
http://github.com/mattbasta/amo-validator
希望这对您有所帮助!
关于php - 减少 PHP 插件被恶意攻击的机会,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3170804/