%0 Journal Article %T PDF阅读器字体解析引擎的测试方法<br>Test method for the font parser in PDF viewers %A 赵刚 %A 于悦 %A 黄敏桓 %A 王玉迎 %A 王嘉捷 %A 孙晓霞 %J 清华大学学报(自然科学版) %D 2018 %R 10.16511/j.cnki.qhdxxb.2018.26.013 %X PDF文档具有良好的移植性且应用广泛,常被用作恶意代码的载体。PDF文档具有严格的格式校验,对结构复杂的PDF阅读器进行模糊测试时,传统随机模糊测试效率较低。现有基于文件格式的灰盒模糊测试,由于模型描述语言能力不足,难以针对某种文件格式构建统一的数据模型。该文针对PDF阅读器字体解析引擎提出一种批量化构造测试用例的方法。通过对字体文件重构和添加辅助信息方式,构造格式统一的测试用例,对TrueType格式文件构造统一数据模型。在此基础上,开发了模糊测试工具并对20余款PDF阅读器进行了测试,触发了大量崩溃。结果表明:该方法可以有针对性地构造测试用例,并有效地挖掘PDF阅读器中的缺陷。<br>Abstract:PDF files are portable and widely used, so they often host malware. Traditional PDF viewers fuzzing algorithms cannot work well due to their strict format validation. Also, existing file-format based grey-box fuzzing cannot be easily used to build a uniform data model because of the limits of its descrition language. This paper presents a method for generating test cases to test the font parser of PDF viewers. The system reconstructs the font files and adds supportive information to build a uniform data model for TrueType files. A fuzzer is built into the method and evaluated on more than twenty PDF viewers to identify several vulnerabilies. Tests show that this method can effectively generate test cases and detect bugs in PDF viewers. %K PDF阅读器 %K 模糊测试 %K 测试用例构造 %K TrueType字体 %K < %K br> %K PDF viewers %K fuzzing %K test cases generation %K TrueType font %U http://jst.tsinghuajournals.com/CN/Y2018/V58/I3/266