即使是使用安全开发程序构建的软件,由于其所依赖的解释性编程语言的缺陷,仍然容易受到攻击。 在上周举行的 Black Hat Europe 大会上,IOActive 研究人员 Fernando Arnaboldi 称,他发现 5 种流行编程语言解释器中的严重漏洞,会让使用这些语言开发的应用更易受到攻击。 Arnaboldi 的发现如下: Python 有未记录的方法和环境变量能被用于 OS 命令执行; NodeJS 作为 JavaScript 解释器, 会通过其输出的错误信息暴露文件内容; Ruby 的 Java 实现 JRuby 会在一个并非设计远程代码执行的函数上加载和执行远程代码; PHP 中,某些本地函数可以传递一个常量的名字来执行远程命令执行。 Perl 中有一种可执行如 eval() 的 typemap 函数
编译自:ZDNet |