描述
在这种攻击模式中,对手利用起毛来识别系统的弱点。起毛软件安全和功能测试方法为随机构造的输入系统和寻找表明故障响应输入。起毛将系统视为一个黑盒子,完全不受任何偏见或假设的系统。起毛可以帮助攻击者发现某些假设用户输入系统中。起毛给攻击者可能发现这些假设的一个快速的方法,尽管不一定知道任何关于系统的内部。这些假设可以反对系统专门起草用户输入,可能允许攻击者实现他们的目标。
攻击的可能性
典型的严重性
执行流程
探索
观察沟通和输入:起毛攻击者观察到目标系统寻找输入和模块之间的通信,子系统或系统。
技术 |
网络嗅探。使用网络嗅探器如wireshark,攻击者观察到通信的目标系统。 |
监控API执行。使用工具,如ktrace strace, APISpy,或另一个调试工具,攻击者观察系统调用和API调用由目标系统,和它们的参数的性质。 |
观察输入使用web检查工具(OWASP WebScarab, Paros、TamperData TamperIE,等等)。 |
实验
春光生成输入:起毛的工具,一个目标输入或协议,和限制时间,复杂性,和输入,生成一个输入列表。尽管起毛是随机的,它并不详尽。参数长度等成分,有多少变化尝试重要从fuzzer最具成本效益的影响。
技术 |
边界情况。生成攻击边界的模糊输入情况下的协议字段,输入,或其他通信限制。例子包括0 xff和0 x00单字节输入。在二进制情况下,单个领域的方法每一位与开关(例如,0 x80)。 |
尝试系统调用的参数或api。包括有效载荷的变化,如果他们成功了,可能导致系统上妥协。 |
观察结果:观察输出输入fuzz送入系统,看看会发生什么有趣的东西。如果发生故障,确定为什么发生。找出潜在的假设是无效的输入。
利用
工艺利用载荷:把特别的手工输入系统,利用确定的弱点通过起毛和允许攻击者的目标。fuzz常常揭示方法通过输入验证过滤器和滑动系统中引入不必要的数据。
技术 |
确定目标系统和嵌入shell代码。 |
嵌入负载更高级别的攻击命令。(例如,SQL、PHP服务器端包括等等)。 |
通过利用资源泄漏引起拒绝服务或糟糕的错误处理。 |
技能要求
所需资源
指标
大量的无效数据被用来喂养系统。数据不能通过合法事务/请求已经生成。数据进入系统在短时间内,可能来自同一个IP。 |
后果
这个表指定不同的个体与攻击模式相关的后果。范围确定违反了安全属性,而影响了负面的技术影响,如果敌人成功的攻击。可能提供的信息如何可能的具体结果预计将看到列表中相对于其它后果。例如,可能有高可能性模式将被用来实现一定的影响,但较低的可能性,它将被利用来实现不同的影响。
范围 |
影响 |
可能性 |
完整性 |
修改数据 |
|
可用性 |
不可靠的执行 |
|
保密 |
读取数据 |
|
保密
访问控制
授权 |
获得特权 |
|
保密
完整性
可用性 |
改变执行逻辑 |
|
缓解措施
测试,确保软件的行为按规范和没有意想不到的副作用。确保没有假设数据的有效性。 |
使用模糊测试软件QA过程中发现任何惊喜,发现任何假设或意想不到的行为。 |
例子,实例
模糊测试显示,当数据为一个特定的字段长度超过一定长度,输入验证过滤器失败并让用户数据过滤。这为攻击者提供了一个向量提供恶意负载注入系统。 |
内容的历史
提交 |
提交日期 |
提交者 |
组织 |
2014-06-23
(版本2.6) |
CAPEC内容团队 |
manbetx客户端首页 |
|
修改 |
修改日期 |
修饰符 |
组织 |
2017-01-09
(版本2.9) |
CAPEC内容团队 |
manbetx客户端首页 |
更新描述总结,Related_Attack_Patterns Related_Weaknesses |
2020-07-30
(版本3.3) |
CAPEC内容团队 |
manbetx客户端首页 |
更新描述 |
2021-06-24
(版本3.5) |
CAPEC内容团队 |
manbetx客户端首页 |
更新Related_Weaknesses |
|