PDF阅读器字体解析引擎的测试方法

被引:2
作者
赵刚 [1 ]
于悦 [2 ]
黄敏桓 [1 ]
王玉迎 [3 ]
王嘉捷 [3 ]
孙晓霞 [1 ]
机构
[1] 信息系统安全技术国家重点实验室
[2] 北京邮电大学计算机学院
[3] 中国信息安全测评中心
关键词
PDF阅读器; 模糊测试; 测试用例构造; TrueType字体;
D O I
10.16511/j.cnki.qhdxxb.2018.26.013
中图分类号
TP391.12 [];
学科分类号
摘要
PDF文档具有良好的移植性且应用广泛,常被用作恶意代码的载体。PDF文档具有严格的格式校验,对结构复杂的PDF阅读器进行模糊测试时,传统随机模糊测试效率较低。现有基于文件格式的灰盒模糊测试,由于模型描述语言能力不足,难以针对某种文件格式构建统一的数据模型。该文针对PDF阅读器字体解析引擎提出一种批量化构造测试用例的方法。通过对字体文件重构和添加辅助信息方式,构造格式统一的测试用例,对TrueType格式文件构造统一数据模型。在此基础上,开发了模糊测试工具并对20余款PDF阅读器进行了测试,触发了大量崩溃。结果表明:该方法可以有针对性地构造测试用例,并有效地挖掘PDF阅读器中的缺陷。
引用
收藏
页码:266 / 271
页数:6
相关论文
共 15 条
  • [1] SAGE[J] . Patrice Godefroid,Michael Y. Levin,David Molnar. &nbspCommunications of the ACM . 2012 (3)
  • [2] The Use of Dynamic Analysis for Generation of Input Data that Demonstrates Critical Bugs and Vulnerabilities in Programs
    Isaev, I. K.
    Sidorov, D. V.
    [J]. PROGRAMMING AND COMPUTER SOFTWARE, 2010, 36 (04) : 225 - 236
  • [3] Grammar-based whitebox fuzzing. Godefroid P,et al. 2008ACM SIGPLAN Conference on Programming Language Design and Implementation 2008 (PLDI’’08) . 2008
  • [4] IntScope:Automatically Detecting Integer Overflow Vulnerability in X86 Binary Using Symbolic Execution. Tielei Wang,Tao Wei,Zhiqiang,Lin Wei Zou. the 16th Network and Distributed System Security Symposium (NDSS’’09) . 2009
  • [5] TaintScope: A checksum-aware directed fuzzing tool forautomatic software vulnerability detection. T.L. Wang,T. Wei,G.F. Gu, et al. 2010IEEE Symposium on Security and Privacy (SP) . 2010
  • [6] Automated whitebox fuzz testing. Godefroid P,Levin M Y,Molnar D. Network&Distributed System Security Symposium . 2008
  • [7] Driller Augmenting fuzzing through selective symbolic execution. Stephens N,Grosen J,Salls C,et al. The 2016 Network and Distributed System Security Symposium . 2016
  • [8] Optimizing seed selection for Fuzzing. REBERT A,CHA S K,AVGERINOS T,et al. The 23rd USENIX Security Symposium . 2014
  • [9] A classification algorithm based on ensemble feature selections for imbalanced-class dataset. YIN H,GAI K K,WANG Z J. Proceedings of the 2nd International Conference on Big Data Security on Cloud(BigDataSecurity),IEEE International Conference on High Performance and Smart Computing(HPSC),and IEEE International Conference on Intelligent Data and Security(IDS) . 2016
  • [10] Turning programs against each other:High coverage fuzz-testing using binary-code mutation and dynamic slicing. KARGEN U,SHAHMEHRI N. Proceedings of the 10th Joint Meeting on Foundations of Software Engineering . 2015