扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
在本页阅读全文(共2页)
恶意文件的执行是另外一种应用输入失控制导致的弱点。在这个系列文章中的第四篇,Tom Olzak将解释恶意代码执行的本质以及对防止Web应用免遭相关袭击的一些建议。
恶意文件执行,在OWASP Top Ten中也叫远程文件包含不安全,是一种由于直接使用或将未经确认的输入串联成文件或流函数造成的漏洞。许多Web应用程序中都存在这种漏洞,但我们可以通过着重于保证合理软件担保水平的编码步骤和技巧来预防这种脆弱性。
工作原理
利用这种脆弱性的攻击者主要寻找无法禁止或控制上传文件执行的Web应用程序。PHP 4.0.4——5.x在默认情况下易于受到这种攻击。其它应用环境,如.NET和J2EE,如果允许文件上传并执行Web目录中的功能,也容易受到这种攻击。
图A是取自OWASP Top 10 RC1的一个潜在危险性结构的简单例子。
图A 一个危险的结构
受到感染的输入可能从某台服务器上下载一个文件,并在调用应用程序时执行。它还可在易于受到当地目录游走攻击的系统上运行当地程序。
当地目录游走是指修改地址字符串以访问执行Web应用程序系统上其它目录的行为。即使攻击者不上传文件,如果他知道常用的可执行文件位于某种操作系统的哪个目录,仍然可以帮助他访问脚本和其它可执行文件。图B是当地目录游走攻击的一个实例。
图B 目录游走攻击
这个摘自Web应用程序安全联盟的例子,描述了一个使用特殊字符序列的进行的游走攻击。它用“../”在目录中游走来输入脚本目录。“%00”允许攻击者避开任何文件扩展名检查。攻击的结果使得攻击者能够查看foo.cgi文件。
如果目录许可配置不正确,攻击者不仅能够查看文件,还能够修改和执行文件。另外,攻击者上传的恶意脚本能够轻松地插入访问控制存在缺陷或没有访问控制的目录中。因此,很容易利用这种漏洞来发动一个恶意文件执行攻击。
利用这个缺陷还可以进行另外两种攻击:
◆在会话文件、日志数据中上传恶意数据,以及通过镜像上传
◆允许没有经过合格检查的恶意压缩或声频流上传
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。