BlackHat:大多数网页模板漏洞可被利用轻易突破沙盒

简介:

这种注入攻击方式的后果要比XSS更糟糕

在Black Hat 2015大会上,安全研究人员们警告:一个关于web安全脆弱性的新的威胁可能会严重损害我们的安全。

今天,为了在网站页面或邮件中动态地呈现数据,模板引擎被web应用广泛使用。这种技术提供一种服务器端的沙盒。然而,“允许不被信任的用户编辑模板”这种习以为常的惯例引出了一系列严重的风险,而这些风险或许在模板的文件系统中不那么容易被发现。

用户不能安全地向模板中输入数据这种风险确实存在,并极有可能被利用来向服务器中注入恶意代码。

被PortSwigger公司的研究人员称为“服务器端模板注入”这种潜在的攻击方式和跨站点脚本执行(XSS)有明显区别且后果更加严重。

BlackHat:大多数网页模板漏洞可被利用轻易突破沙盒

PortSwigger的技术人员这样解释:

不像XSS攻击那样,模板注入攻击可以被用来直接攻击web服务器的内部并且获得远程代码执行权限(RCE),并使得所有易被攻击的web应用成为一个潜在的攻击跳板。

模板注入攻击可以通过开发者的错误或者那些为了提供更加丰富的功能而特意制作出来的模板来引发,例如维基机密、微博、交易应用以及网站的内容管理系统。

对特定模板的注入攻击很容易使用的,甚至很多模板引擎都为了这一“额外要求”提供了一个特定的沙箱接口。

“这种脆弱性是天生的,并偷偷地影响着任何使用模板引擎搭建起来的web应用”,PortSwigger的创始人兼总裁Dafydd Stuttard说道,“我们已经见识了许多被大众广泛使用的web应用的0day漏洞实例,但是这种脆弱性的发生却频率是未知的,我们经常会偶然发现这样的案例并很容易就锁定了一些目标,它们便是一个个活生生的证明”

在演讲中,PortSwigger研究人员James Kettle呈现了这种风险和对抗的全部细节信息。

演讲涵盖如何发现充分利用这些风险,包括挖掘两款使用非常广泛的web应用的0day漏洞到获得全部远程代码的执行权限。(出于某些法律原因,在本地开发并用于演示的样例目标应用为:Alfresco和XWiki Enterprise)

PortSwigger在演讲中发布了含有全部技术细节的论文。论文包含被漏洞利用的5种使用最广泛的模板引擎的概念性验证代码(POC),以及如何从沙盒中逃离。模板语言包括FreeMarker、Velocity6、Smarty、Twig和Jade,均存在这个漏洞。

在论文的结尾,PortSwigger解释了为什么这类风险被人们忽视了如此长的时间。

“模板注入攻击只会在审计人员明确的寻找它是否存在的时候显现,并且可能会错误地显示为低威胁级别,除非我们将资源投入到模板引擎安全状态的评估方面,”Kettle写道,“这也就解释了为什么模板注入攻击直到今天才被我们关注,而它的广泛流行也是自然而然的。”

现在用于防止“使用模板对于我们的损害”的技术仍旧是不成熟的。PortSwigger计划对适用于web应用的漏洞挖掘安全工具Burp Suite“增派人手”以应对这种威胁。然而,PortSwigger将它的研究成果作为一个被严重忽视的web安全风险而不是一个推销它的技术产品的好时机。

对于此,PortSwigger有它自己的解释。“通过对模板注入攻击相关资料的彻底整理,并发布针对此攻击的自动检测工具Burp Suite,我们希望可以加强大家对于它的防范意识并切实减少这种攻击的流行。”


作者:admin


来源:51CTO


相关文章
|
9月前
|
弹性计算 自然语言处理 监控
5分钟快速部署,深度体验DeepSeek强大推理能力
深度探索 DeepSeek:5 分钟部署,零成本体验强大推理能力
746 1
|
算法 数据可视化 网络安全
清华等高校推出首个开源大模型水印工具包MarkLLM,支持近10种最新水印算法
【6月更文挑战第27天】清华大学等高校发布了开源工具MarkLLM,这是首个专注于大语言模型水印的工具包,支持近10种先进算法。该工具统一了水印实现,便于比较和使用,旨在促进水印技术在保障信息真实性和网络安全上的应用。MarkLLM提供直观界面、可视化及自动化评估,推动了大模型水印研究的进步。[论文链接:](https://arxiv.org/abs/2405.10051)**
519 5
|
安全 应用服务中间件 网络安全
应用防火墙WAF架构分类
【7月更文挑战第10天】Web Application Firewall (WAF) 是用于保护Web应用的系统,通过HTTP/HTTPS流量规则阻止入侵。
|
缓存 监控 NoSQL
Redis在减轻数据库压力中的关键角色
**摘要:** 本文介绍了Redis如何减轻数据库压力。Redis作为高性能内存数据库,利用其缓存热点数据、异步处理、分布式锁和数据聚合功能降低数据库负载。实践中,应合理设置缓存策略,优化数据结构和查询,监控告警并进行扩容容灾,以确保系统性能和稳定性。
503 4
|
Java Maven
maven手动安装jar
maven手动安装jar
132 2
|
算法 决策智能 流计算
网络流问题
网络流问题
337 1
|
Java 关系型数据库 MySQL
java项目-基于SSM实现在线考试及题库管理系统
java项目-基于SSM实现在线考试及题库管理系统
431 0
java项目-基于SSM实现在线考试及题库管理系统
|
消息中间件 算法 关系型数据库
Kafka学习---4、消费者(分区消费、分区平衡策略、offset、漏消费和重复消费)(二)
Kafka学习---4、消费者(分区消费、分区平衡策略、offset、漏消费和重复消费)(二)
|
存储 并行计算 网络协议
PyTorch并行与分布式(二)分布式通信包torch.distributed
PyTorch并行与分布式(二)分布式通信包torch.distributed
1263 0
|
Linux
LINUX下载编译libssh2
LINUX下载编译libssh2
236 0