https://github.com/sslab-gatech/fuzzification.
Fuzz技术可能被攻击者用来查找0day漏洞,本文提出了一种缓解措施FUZZIFICATION,帮助开发者保护发布的只有二进制文件软件,放置攻击者应用最先进的fuzz技术。给定一个性能损耗,这种方法致力于尽可能多阻碍对抗者的fuzz过程,包括三种技术1)SpeedBump:在fuzz时将速度拖慢几百倍2)BranchTrap:隐藏路径和污染覆盖率图来干扰反馈逻辑3)AntiHybrid:对抗污点分析和符号执行。
在流行的fuzzer和现实世界上评估了项目,减少70.3%发现的路径,减少93.0%可以识别的crash,从LAVA-M数据集中减少67.5检测到的bug。
fuzz技术可能被恶意攻击者利用寻找0day漏洞,因此开发者可能会应用反fuzz技术阻止攻击者fuzz,和逆向工程的混淆技术类似。
本文提出了一种新的二进制保护方向,FUZZIFICATIOIN,放置攻击者有效找到bug,或者依然可以找到bug,但是需要更多的资源。那么开发者和信赖的第三方就可以更快找到bug并应用补丁。一个好的FUZZIFICATION技术应该满足以下三个特征
本文的方法
使用LAVA-M数据集,fuzzer使用AFL,HonggFuzz, VUzzer, QSym
和处理后的程序相比,fuzzer可以在原程序中找到14.2倍数量的bug,3倍LAVA-M数据集中的bug.同时,减少70.3%发现的路径。