描述
敌人利用不当数据验证注入恶意全局参数一个Flash文件嵌入到HTML文档中。Flash文件可以利用Flash用户提交的数据配置文件和访问嵌入HTML文档。
扩展描述
这些“FlashVars”通常通过URL传递给Flash文件参数或对象或嵌入HTML文档中嵌入标记。如果这些FlashVars不正确消毒,敌人可以嵌入恶意内容(如脚本)到HTML文档。
注入参数还可以提供Flash文件内的对手控制其他对象以及完全控制父文档的DOM模型。因此,这是一种HTTP参数注入,但是能力授予Flash文档(如访问页面的文档模型,包括相关的饼干)使这种攻击更灵活。Flash参数注入攻击也可以前言进一步攻击等各种形式的跨站点脚本(XSS)攻击除了会话劫持攻击。
攻击的可能性
典型的严重性
的关系
此表显示了其他的攻击模式和高水平类别相关的这种攻击模式。这些关系被定义为ChildOf ParentOf,给类似的项目可能存在的洞察力在较高和较低的抽象级别。此外,关系如光束,PeerOf, CanAlsoBe定义显示类似的攻击模式,用户可能想要探索。
自然 |
类型 |
ID |
的名字 |
ChildOf |
标准的攻击模式-一个标准的级别CAPEC中攻击模式是集中在一个特定的方法或技术用于攻击。它通常被视为一个单一的完全执行攻击。标准的攻击模式是为了提供足够的细节来理解特定的技术,以及它如何试图完成预期的目标。标准水平的攻击模式是一种特定类型的一个更抽象的元级别的攻击模式。 |
182年 |
Flash注入 |
CanAlsoBe |
详细的攻击模式-一个详细级别攻击模式CAPEC提供了一个低水平的细节,通常利用一个特定的技术和针对特定的技术,并表达一个完整的执行流程。详细的攻击模式比元更具体的攻击模式和标准的攻击模式,通常需要一个特定的保护机制来减轻实际攻击。详细的级别攻击模式通常会利用许多不同的标准水平攻击模式链接在一起来完成一个目标。 |
460年 |
HTTP参数污染(HPP) |
CanPrecede |
标准的攻击模式-一个标准的级别CAPEC中攻击模式是集中在一个特定的方法或技术用于攻击。它通常被视为一个单一的完全执行攻击。标准的攻击模式是为了提供足够的细节来理解特定的技术,以及它如何试图完成预期的目标。标准水平的攻击模式是一种特定类型的一个更抽象的元级别的攻击模式。 |
63年 |
跨站点脚本(XSS) |
CanPrecede |
详细的攻击模式-一个详细级别攻击模式CAPEC提供了一个低水平的细节,通常利用一个特定的技术和针对特定的技术,并表达一个完整的执行流程。详细的攻击模式比元更具体的攻击模式和标准的攻击模式,通常需要一个特定的保护机制来减轻实际攻击。详细的级别攻击模式通常会利用许多不同的标准水平攻击模式链接在一起来完成一个目标。 |
178年 |
跨站点闪烁 |
此表显示了这种攻击模式的观点属于和顶级类别内的这一观点。
执行流程
探索
蜘蛛:使用浏览器或一个自动化工具,敌人记录的所有实例嵌入式Flash文件的HTML文档。如果有一个嵌入式Flash文件,他们如何通过全球参数列表的Flash文件嵌入对象。
技术 |
使用自动化工具来记录所有实例嵌入式Flash文件的url和参数传递给Flash文件列表。 |
使用浏览器手动探索网站的HTML文档是否已经嵌入Flash文件和列表的参数传递到Flash文件。 |
实验
确定应用程序对Flash参数注入:确定应用程序对Flash参数注入。为每个URL标识在探索阶段,对手试图使用各种技术,如基于DOM的,反映,flashvars,持续攻击取决于类型的参数传递到嵌入式Flash文件。
技术 |
当JavaScript文件。位置的变量作为参数的一部分,注入“#”和载荷参数的URL。 |
当Flash文件的名称作为一种公开或URL参数,敌人注入”?”和文件名后的载荷在URL重写一些全球性的价值。 |
当传入的参数“flashvars”属性,敌人注入“&”和有效载荷在URL中。 |
如果某些属性的<对象>标记作为参数,接收“flashvars”属性注入到<对象>标记没有网页的创造者曾打算允许参数传递到Flash文件。 |
如果共享对象是用于保存用户输入的数据持久化Flash可能发生参数注入,与恶意代码注入到Flash文件和执行,每次加载Flash文件。 |
利用
执行Flash参数注入攻击:Flash文件注入参数。基于实验结果阶段,对手工艺品底层恶意URL包含Flash注入参数,并将它提交给web服务器。一旦web服务器接收请求,嵌入HTML文档将可控的对手。
技术 |
工艺潜在恶意URL并将其发送到web服务器来控制嵌入HTML文档。 |
技能要求
(级别:中等) 敌人需要注入值Flash文件的全局参数和理解父母的HTML文档的DOM结构。敌人需要足够聪明说服受害者点击他们的链接。 |
所需资源
后果
这个表指定不同的个体与攻击模式相关的后果。范围确定违反了安全属性,而影响了负面的技术影响,如果敌人成功的攻击。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能有高可能性模式将被用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
范围 |
影响 |
可能性 |
保密 |
其他 |
|
授权 |
执行未经授权的命令 |
|
缓解措施
用户输入之前必须净化根据上下文返回给用户。JavaScript函数的encodeURI并不总是足够的消毒输入用于全球Flash参数。应采取极其谨慎保存用户输入时在Flash cookie。在这种情况下,Flash文件本身需要固定和重新编译,改变本地共享对象的名字(Flash cookie)。 |
例子,实例
下面是例子为不同类型的参数传递到Flash文件。 基于dom的Flash参数注入
传递参数在嵌入式URI
<对象类型=“应用程序/ x-shockwave-flash”数据= " myfile.swf吗?globalVar = e-v-i-l " > < /对象> 通过在flashvars参数
<对象类型=“应用程序/ x-shockwafile。主权财富基金“ve-flash”数据=“我flashvars = "语言= English&globalVar = e-v-i-l " > < /对象> 持续的Flash参数注入
如果一个不知情的用户被敌人吸引点击链接:http://example.com/vulnerable.swf?flashfile=javascript警报(document.domain) 结果将不仅仅是一个一次性的执行JavaScript代码在受害者的浏览器中域与脆弱的Flash文件,但每次加载Flash,无论是直接引用或嵌入相同的域,JavaScript将再次执行。 |
引用
内容的历史
提交 |
提交日期 |
提交者 |
组织 |
2014-06-23
(版本2.6) |
CAPEC内容团队 |
manbetx客户端首页 |
|
修改 |
修改日期 |
修饰符 |
组织 |
2017-05-01
(版本2.10) |
CAPEC内容团队 |
manbetx客户端首页 |
Attack_Phases更新,描述总结,Related_Attack_Patterns |
2019-04-04
(版本3.1) |
CAPEC内容团队 |
manbetx客户端首页 |
更新描述、Example_Instances Execution_Flow、引用Related_Attack_Patterns, Related_Weaknesses Skills_Required |
2019-09-30
(版本3.2) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Related_Attack_Patterns |
2020-07-30
(版本3.3) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Execution_Flow Skills_Required |
2022-02-22
(版本3.7) |
CAPEC内容团队 |
manbetx客户端首页 |
更新描述、Example_Instances Execution_Flow、Extended_Description Resources_Required Skills_Required |
2022-09-29
(版本3.8) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Example_Instances |
|