capec - 101:服务器端包含(SSI)注入 |
描述
攻击者可以使用服务器端包含(SSI)注入代码发送到一个web应用程序,然后由web服务器执行。这样做使跨站脚本攻击者达到类似的结果,即,任意代码执行和信息披露,尽管规模较小,因为SSI指令远没有强大成熟的脚本语言。尽管如此,攻击者可以方便地获得敏感文件,如密码文件,并执行shell命令。
攻击的可能性
典型的严重性
执行流程
探索
确定适用性:敌人决定服务器端包含目标web服务器上启用。
技术 |
寻找流行的页面文件的名字。攻击者会寻找.shtml .shtm, asp, . aspx,和其他著名的字符串url来帮助确定SSI功能是否启用。 |
获取. htaccess文件中。在Apache web服务器安装,. htaccess文件可以使服务器端包含在特定的位置。在这些情况下,住在. htaccess文件的目录启用了SSI,理论上fetchable从web服务器。尽管大多数web服务器否认抓取. htaccess文件,错误配置服务器将允许它。因此,攻击者会经常试试。 |
实验
发现注射点:寻找用户可控的输入,包括HTTP头,可以携带服务器端包括指令到web服务器。
技术 |
使用搜索工具和记录所有的链接。特别注意任何链接,包括参数的URL。 |
使用一个代理工具来记录所有的链接访问web应用程序的手册中遍历。特别注意任何链接,包括参数的URL。这种类型的手工遍历经常需要识别形式GET方法而不是POST形式形式。 |
利用
注入SSI:使用发现注入点,对手发送任意代码是由应用程序在服务器端。他们可能会需要查看一个特定页面为了让服务器执行包括指令和运行一个命令或打开一个文件代表的对手。
先决条件
支持服务器端包含一个web服务器,并支持他们 |
可以携带的用户可控的输入包括指令到web服务器 |
技能要求
(级别:中等) 攻击者需要注意SSI技术,确定注射的本质,可以手工输入,导致SSI指令被执行。 |
所需资源
没有:不需要专门的资源来执行这种类型的攻击。确定服务器是否支持SSI不需要特殊的工具,而且也没有注入指令得到执行。搜索工具可以使查找和链接的任务更容易。 |
后果
这个表指定不同的个体与攻击模式相关的后果。范围确定违反了安全属性,而影响了负面的技术影响,如果敌人成功的攻击。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能有高可能性模式将被用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
范围 |
影响 |
可能性 |
保密 |
读取数据 |
|
保密
完整性
可用性 |
执行未经授权的命令 |
|
缓解措施
设置选项IncludesNOEXEC全球访问。配置文件或本地. htaccess文件(Apache)否认SSI执行目录不需要它们 |
所有用户可控的输入必须适当的应用程序中使用前消毒。这包括省略,或者某些字符或字符串的编码,有可能被解释为一个SSI指令的一部分 |
必须启用服务器端包括只有一个强大的商业原因。每个额外的组件上启用web服务器增加了攻击表面以及管理开销 |
例子,实例
考虑一个网站托管在一个服务器,允许服务器端包含(SSI),例如Apache启用了“选项包括指令”。 当一个错误发生时,HTTP头连同整个请求被记录,然后可以显示在一个页面,该页面允许审查这样的错误。恶意用户可以注入SSI指令在请求的HTTP头信息,旨在创建一个错误。 当这些日志最终审查,服务器解析SSI指令并执行它们。 |
分类法映射
引用
内容的历史
提交 |
提交日期 |
提交者 |
组织 |
2014-06-23
(版本2.6) |
CAPEC内容团队 |
manbetx客户端首页 |
|
修改 |
修改日期 |
修饰符 |
组织 |
2017-08-04
(版本2.11) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Resources_Required |
2018-07-31
(版本2.12) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Attack_Phases |
2020-12-17
(版本3.4) |
CAPEC内容团队 |
manbetx客户端首页 |
更新引用,Taxonomy_Mappings |
2021-06-24
(版本3.5) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Related_Attack_Patterns Related_Weaknesses |
2021-10-21
(版本3.6) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Execution_Flow |
|