-
一维条形码检测的MATLAB实现-本章总结
资源介绍
北京大学博士学位论文 第四章 校验和感知的模糊测试技术
详细而言,散列函数主要用于检测数据传输过程中发生的偶然破坏,而无法对抗
人为的恶意破坏。因此,本文提出了修改目标程序,绕过校验和检测的方案;进
而结合混合符号执行技术,修复畸形数据的校验和域。
本文提出的方案并不适用于基于消息认证码或数字签名的完整性检测。消息
认证码和数字签名在保护消息完整性的同时也提供了对消息的认证,能够发现数
据传播过程中的任何破坏(包括偶然和人为破坏)。消息认证码或数字签名都需
要数据的产生方和数据的使用方共享密钥信息。而第三方(即模糊测试方)不知
道密钥信息时,即使TaintScope能够精确定位到程序中消息认证和数字签名检测
点,也无法为畸形数据生成正确的消息验证码或数字签名。
另一方面,正因为消息认证码或数字签名都需要共享密钥信息,这两类完整
性验证机制在通用应用程序中并不流行。通用应用程序通常用户量很大,而每个
用户生成的数据需要和其他用户共享。这些应用程序不关心数据的认证性,仅关
注数据的完整性以检测传输过程中差错。因此,本文的工作的支撑下,传统模糊
的是工具也能够对这些应用程序进行安全测试。如何克服基于消息认证码或数字
签名的完整性检测以及其他消息认证机制将作为本文的未来工作。
同时,数据加密和压缩等技术也为模糊测试制造了诸多障碍。本文的方法
为绕过数据加密和压缩提供了新的思路。本文工作在IEEE Security & Privacy
2010发表后,立刻被UC Berkeley大学J. Caballero等安全研究人员引用[47]。 J.
Caballero等人对本文方法扩展后,有效缓解了数据加密和压缩引发的问题,并成
功应用于恶意代码分析领域。
4.9 本章小结
模糊测试技术是软件安全漏洞动态挖掘的主要方法,已经工业界和黑客社区
得到广泛应用。然而,基于校验和机制的数据完整性检查成为传统模糊测试系统
的重要障碍。
本文首次提出了一种校验和感知的模糊测试技术。该技术综合运用了混合符
号执行与细颗粒度动态污点跟踪技术,通过自动定位程序中校验和检测点、修复
畸形样本的校验和域,成功绕过程序中的校验和检查机制。该技术为运用传统模
– 69 –