模板注射研究

当用户输入能够定义模板表达式时,就会发生模板注入。它通常分为两种类型。这些被称为客户端模板注入和服务器侧模板注入。

客户侧模板注入(CSTI)

客户端模板注入通常发生在浏览器和HTML内。之所以发生这种情况,是因为开发人员允许用户在网页中输入,并允许他们定义模板表达式。beplay体育能用吗然后,这允许攻击者注入模板表达式(简化JavaScript)来利用Web应用程序。beplay体育能用吗这类似于跨站点脚本的工作方式。

某些JavaScript框架(例如Angularjs)具有沙盒 - 这阻止了开发人员使用某些不应该使用的对象。为了使攻击者利用这一点,他们需要找到一种“逃脱”沙箱的方法。这意味着为了利用Web应用程序而获得对文档对象等领域的访问。beplay体育能用吗

客户侧模板注射研究

如果您正在寻找与CSTI相关的最新技术和向量,那么我们会为您提供服务。你可以学习我们的方式逐步打破Angularjs沙箱,甚至与我们自己尝试交互式实验室

我们将向您展示我们的方式利用现实世界的应用,即使受到严格的限制。如果您坚持如何绕过内容安全策略(CSP),我们有许多帖子描述了如何使用CSTI绕过它。

在2017年我们提出基于DOM的Angular沙盒逃逸,在Bsides曼彻斯特,描述了如何打破Angularjs沙盒。

服务器端模板注入(SSTI)

早在2015年beplay官网可以赌Portswigger发现了一种开创性的技术利用Web应用程序。beplay体育能用吗现在,这通常称为服务器端模板注入(SSTI)。SSTI发生在服务器级别 - 在服务器端语言(例如PHP)和Tem -twig等模板引擎中。

当开发人员允许用户输入定义模板代码时,SSTI发生。然后,这允许攻击者注入自己的模板表达式。这类似于CSTI,但通常会产生更大的影响,因为成功的利用通常会导致远程代码执行(RCE)。

一些模板引擎采用沙箱 - 试图防止访问可以访问文件系统或执行任意代码的危险对象。这通常使得很难利用,但并非不可能。

服务器端模板注射研究

在我们内部模板注射研究,我们将向您展示如何从注射中检测各种模板引擎。我们还展示了如何利用这些模板引擎一旦您发现它们。

如果您对该主题更新,那么SSTI上有一些很棒的实验室可以帮助您学习 - 并在测试真实的Web应用程序时收集高影响力赏金。beplay体育能用吗

我们介绍了服务器端模板注入:现代WebApp的RCEbeplay体育能用吗在黑帽子美国。这导致了来自我们和社区的大量高影响力赏金报告。

模板注射研究文章