您当前位置:首页 > 资讯中心 > 业内新闻

兼顾效率与安全:如何制止新模版注入漏洞?

“服务器端模板注入”漏洞被披露出来,那么,它与跨站脚本之间有何区别?相应地,防御策略也是否有所不同?

兼顾效率与安全:如何制止新模版注入漏洞?

Michael Cobb:验证并清除来自不受信任来源的输入是软件开发人员需要遵守的重要原则,以防止恶意代码注入攻击如跨站脚本(XSS)和SQL注入等。尽管清理用户输入是安全编程的核心原则,然而数据未被清理的情况仍旧时有发生,且生成黑客可以攻击用户及系统的漏洞。

Web安全公司PortSwigger的研究人员研制了Web应用安全测试工具Burp Suite,该工具较新发现一个不知名的注入漏洞级别的漏洞,他们将其称作“服务器端模版注入”。

模版引擎广泛用于从展示层分离程序逻辑,维基、博客和内容管理系统都倾向于使用模版引擎。不仅因为这是良好的编程实践,也因为它能够使懂很少HTML知识的员工轻松地更新和维护网站内容或编写HTML格式的电子邮件。它们也让专业的网页设计师利用这些代码快速而高效地建站。流行的模板包括Twig、Jade以及XWike Enterprise。

一些引擎使用简单的字符串,占位符由数据替换。举个例子,一封电子邮件模板开头可能是 "Dear {user_firstname}" ,在模板引擎中,"user_firstname" 则由底层数据库中的’first name‘所取代。其他模板也用所谓的"if-defined-conditionals"来测试数据存在与否,有些则包括额外的灵活性,诸如用for-each循环、递归宏和嵌入式表达来提供更丰富的功能。

对于驻留在服务器上的模板引擎代码来说,验证和清理任何用户提供的添加进模板的输入和内容都是非常必要的;否则,则很可能发生服务器端模板注入攻击。不像XSS攻击,它能够直接攻击底层Web服务器,而非只是它的用户。尽管一些模板引擎部署了沙箱来限制访问,确保能安全处理不信任的输入,PortSwigger公司发现很多这类注入攻击都能绕过这些沙箱。该项研究解释了检测和利用模板注入漏洞的方法,并演示了利用五个较流行模板引擎的各种利用方式,包括沙箱逃避。

目前PortSwigger并不确定该模板注入攻击有多普遍,不过它打算使用Burp Suite来检测这类注入漏洞。简单和相对扁平的模板如Mustache不会引起风险,用户无法从模板语言中调用函数,尽管HTML输出仍然需要被清理。Wikipedia背后的开源模板引擎MediaWiki是更为灵活的引擎,根据PortSwigger,其沙箱环境在防止沾染潜在危险模块和功能方面做的非常好。

该研究表明企业开发团队不应该盲目依赖网站开发工具来实现较佳实践。安全团队需要仔细评估模板引擎是如何处理用户输入的以及内置安全检查或沙箱是否会被规避。阅读福袋文档可以在输入检查使显示明显的缺点,不过分析师应该仔细检查模板的代码以及是哪些引擎能够允许用户输入以及查看是否安全检查会被绕过。缓解技巧之一就是将模板引擎置于一个强化的Docker容器沙箱环境中,来追踪任何恶意代码执行。

作者:Grabsun - 发布时间:2016-01-13 - 点击量:4083
公司简介:大势至公司是国内较早的企业网管软件提供商,可以为企事业单位提供整体的企业网络管理方案和企业网络管理平台,通过全系列的公司监控员工电脑软件教你如何控制员工上网、如何控制局域网内电脑上网以及如何保护电脑文件安全等。公司核心产品“聚生网管系统”是一款专门的公司网管必备软件、查看网络流量软件、网络流量监控软件和办公室电脑监控软件;“网络特警”则是一款专门的网络流量监控设备、上网行为管理服务器、网络行为管理设备,可以实现更为强大的局域网网络行为管理;大势至USB接口禁用软件则是一款专门的数据防泄密产品、屏蔽U盘软件、电脑USB端口禁用软件,可以严防通过一切途径泄露电脑文件,保护单位无形资产和商业机密安全;大势至共享文件夹管理软件则是一款专门的共享文件权限设置软件和共享文件设置密码软件,全面保护共享文件安全;大势至共享文件审计系统则是一款专门的服务器共享文件夹设置软件、服务器共享文件访问日志记录软件,可以详细记录局域网用户访问共享文件的行为,更好地管理共享文件的安全;大势至局域网网络准入控制系统则是一款专门防止未经授权的电脑接入公司局域网的行为,防止外来电脑访问局域网共享文件、防止蹭网以及绑定IP和MAC地址,保护网络安全;大势至FTP服务器日志记录软件则是一款专门记录局域网用户访问FTP服务器日志的软件,可以有效保护FTP服务器文件安全。
联系我们