zoukankan      html  css  js  c++  java
  • Proj. THUIoTFuzz Paper Reading: Parser-Directed Fuzzing

    Abstract

    背景:
    传统fuzzer:难以抓住keywords等信息
    Constraints-based test generation: 根据path上的conditions来拓展uncovered code,但是存在条件过于复杂会导致path explosion的问题
    本文-一个基于input parser的test generation方法
    基本步骤:

    1. 为parsers生成简单的inputs
    2. 监控这些inputs,确认路径上的comparisons
    3. 在每次rejection之后都试图变异inputs从而满足最后的那个comparison

    实验:
    对象:5个subjects,包括csv和javascript
    效果:

    1. 无需符号分析
    2. 能够覆盖比传统方法(random/constraints-based)更多的tokens,同时需要的测试数目更少

    1. Intro

    本文认为含有parser的程序:

    1. 顺序地处理inputs elements(字符)
    2. 将这些字符和潜在的valid values进行对比
    3. 只会有接收和拒绝两种行为

    为此,本文认为能够用dynamic tainting技术来追踪input chars的comparisons

    此外, 本文观察到parsers一般一次只依赖于有限个chars,这使得本文能够采取只集中注意力在找到使得当前parser向前进入另一个合法状态的下一个字符,而非直接取处理整个input这样的策略

  • 相关阅读:
    后CIO人如何规划职业生涯
    数据库设计三大范式应用实例剖析
    一个女孩从软件测试工程师到主管的成长
    一本适合测试初学者阅读的中文译著
    再看微软团队文化
    阳光的测试工作历程(转载)
    hdu 2795
    hdu 2426
    hdu 2255+hdu 3395
    hdu 3729
  • 原文地址:https://www.cnblogs.com/xuesu/p/14262138.html
Copyright © 2011-2022 走看看