您的位置:首页 >科技 >

利用路径感知的污点分析进行模糊测试

2022-12-14 06:09:59    来源:互联网


(相关资料图)

2022年12月8日,InForSec成功举办“2022网络安全国际学术研究进展”专题研讨会,本次主题为“漏洞挖掘、利用和修复”,重点邀请网络安全相关方向国际最新的研究成果进行交流,分享学者们研究过程中的灵感、经验和体会。

本次研讨会由浙江大学“百人计划”研究员、博士生导师纪首领主持,来自清华大学、北京大学、中国科学院、南开大学等高校和科研院所以及企业界300余人在线参与了论坛,并通过视频会议与演讲嘉宾互动。

我们将对会议精彩报告进行内容回顾,本文分享的是清华大学博士后梁杰的报告——《利用路径感知的污点分析进行模糊测试》。

梁博士首先介绍了污点分析技术在模糊测试技术中的广泛使用和重要作用。利用污点分析技术,模糊测试工具可以识别出影响程序分支的输入字节,通过只变异这些关键数据字节来生成输入,使得模糊测试工具可以更高效的探索程序。

接着,梁博士提出了本篇论文的研究目标,即相同的分支约束可能在程序执行过程中被多次访问,而已有的污点分析技术均无法处理这一问题。梁博士把现有的污点分析技术分为基于传播的和基于推断的两类,并详细分析了它们在遇到这一问题时出现的过度污点(Over-Taint)和漏报(Under-Taint)问题。

针对这一问题,梁博士介绍了本文提出的解决方案,即路径感知的污点分析技术辅助的模糊测试工具-PATA。该技术可以准确识别和区分程序中多次出现的分支约束和输入之间的对应关系。工具包含三个关键步骤。第一步,对程序中的约束变量进行提取和表示,梁博士提出了代表性变量(representative variable)这一概念来解决这一问题。第二步,通过对输入进行变异,收集输入和代表性变量之间的对应关系。第三步,利用收集到的污点信息,梁博士提出了相应的变异策略。

最后,梁博士介绍了对该工具的实验结果。梁博士在Google’s Fuzzer-Test-Suite和LAVA-M上将PATA同相关工作进行了实验对比。结果表明,PATA在程序基本块覆盖率上相对已有工作提高了7%至87%,并多发现了10-31个程序漏洞。在LAVA-M测试集中,PATA表现最好,并发现了337个未列出的漏洞。另外,PATA在现实程序中发现了40个未知漏洞,其中12个被赋予CVE编号。

演讲者简介

梁杰,清华大学软件学院博士后研究员, 主要研究方向为模糊测试与漏洞挖掘等,相关成果发表在S&P、ICDE、FSE、TDSC等会议和期刊上,相应研发的工具在MySQL、MariaDB、libpng等常用的数据库管理系统及开源项目中累计发现上百个漏洞。

标签: 测试工具 对应关系 网络安全

相关阅读