CWE

常见的弱点枚举

一个由社区开发的软件&硬件缺陷类型的列表

2021 CWE最重要的硬件的弱点
CWE最危险的弱点
>CWE列表> CWE -个人字典定义(4.10)
ID

cwe - 1336:不当中和特殊元素中使用模板引擎

弱点ID: 1336
抽象:基地
结构:简单的
视图定制的信息:
+描述
产品使用模板引擎来插入或过程externally-influenced输入,但它不会消除或中和特殊元素或语法错误可以被解释为模板表达式或其他代码指令当处理引擎。
+扩展描述

许多web应用程序使用模板引擎,允许开发人员将externally-influenced值插入自由文本或信息来生成一个完整的web页面,文件,信息,等等。这些引擎包括树枝、Jinja2,哈巴狗,Java Server Pages, FreeMarker,速度,ColdFusion,自作聪明的家伙,和许多其他人——包括PHP本身。一些CMS(内容管理系统)也使用模板。

模板引擎通常有自己的自定义命令或表达式语言。如果攻击者可以影响输入模板前处理,那么攻击者可以调用任意表达式,即执行注入攻击。例如,在一些模板语言,攻击者可以将表达式“{{7 * 7}}”和确定输出返回“49”。语法因语言而异。

在某些情况下,xss攻击可以工作,可以模糊的根本原因如果开发者不密切调查错误的根源。

模板引擎可以使用在服务器或客户端,所以“双方”可能受到注入的影响。攻击或受影响的技术的机制可能不同,但错误从根本上是相同的。

+替代条款
服务器端模板注入/ SSTI:
这个词用于注入模板引擎使用的服务器。
客户端模板注入/ CSTI:
这个词用于注入模板引擎被客户机使用。
+的关系
部分帮助此表显示了弱点和高水平类别相关的这一弱点。这些关系被定义为ChildOf、ParentOf MemberOf,并洞察类似项目可能存在的在较高和较低的抽象级别。此外,关系如PeerOf和CanAlsoBe定义显示类似的弱点,用户可能想要探索。
+相关的视图”研究概念”(cwe - 1000)
自然 类型 ID 的名字
ChildOf 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。 94年 不当控制生成的代码(代码注入)
PeerOf 基地Base -一个弱点,仍主要是独立的资源或技术,但有足够的细节来提供特定的检测和预防方法。基础水平的弱点通常描述问题的2或3以下维度:行为、财产、技术、语言,和资源。 917年 不当中和一个表达式语言语句中使用的特殊元素(表达式语言注入)
+模式的介绍
部分帮助不同模式的引入提供了信息如何以及何时可以纳入这一弱点。生命周期的阶段识别点的介绍可能发生,而相关的报告提供了一个典型的场景介绍在给定的阶段。
阶段 请注意
架构和设计 开发人员可以选择一个模板引擎,使程序员更容易编写脆弱的代码。
实现 程序员可能不使用引擎的内置沙箱或者其他功能逃避或者防止模板注入不可信的输入。
+适用的平台
部分帮助该清单显示了给定的弱点可以可能的地区出现。这些可能是为特定命名的语言,操作系统,架构、模式、技术、或一个类这样的平台。列出的平台是随着频率的出现疲态实例。

语言

Java患病率(待定)

PHP患病率(待定)

Python患病率(待定)

JavaScript患病率(待定)

类:解释患病率(待定)

操作系统

类:不使用患病率(待定)

技术

类:客户端服务器患病率(待定)

+常见的后果
部分帮助这个表指定不同的个人相关后果的弱点。标识应用程序范围的安全领域侵犯,而影响了负面的技术影响,如果敌人成功利用这个弱点。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能会有高可能性,缺点将被利用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
范围 影响 可能性
完整性

技术的影响:执行未经授权的代码或命令

+观察到的例子
参考 描述
注射在内容管理服务器端模板
认证/身份管理产品已注入端模板
服务器端模板注射使用树枝模板
devops平台允许SSTI
绕过服务器端模板的注入与宏在Velocity模板保护机制
web浏览器代理服务器从服务器端模板允许Java EL表达式注入
SSTI涉及邮件模板和JEXL表达式
产品不使用“安全”设置FreeMarker配置,允许SSTI
产品允许读的敏感数据库用户名/密码变量使用服务器端模板注入
+潜在的缓解措施

阶段:体系结构和设计

选择一个模板引擎,提供了一个沙箱或者限制模式,或至少限制的力量任何可用的表情,函数调用,或者命令。

实施阶段:

使用模板引擎的沙盒或限制模式,如果可用。
+笔记

的关系

因为语言表达中经常使用的模板语言,可能会有一些重叠cwe - 917(表达式语言注入)。XSS (cwe - 79模板)也位于与注入。

维护

之间的相互关系和差异cwe - 917cwe - 1336需要进一步澄清。
+引用
[ref - 1193]詹姆斯水壶。“服务器端模板注入”。2015-08-05。<https://portswigger.net/research/server-side-template-injection>。
[ref - 1194]詹姆斯水壶。“服务器端模板注入:远端控制设备的现代Web应用程序”。2015-12-27。<https://www.youtube.com/watch?v=3cT0uE7Y87s>。
+内容的历史
+提交
提交日期 提交者 组织
2021-07-19 CWE内容团队 主教法冠
+修改
修改日期 修饰符 组织
2022-06-28 CWE内容团队 主教法冠
更新Maintenance_Notes、人际关系
更多的信息是可用的,请选择一个不同的过滤器。
页面最后更新:2023年1月31日