软件FUZZ中代码分支检测算法研究与实现
【文章页数】:65 页
【学位级别】:硕士
【部分图文】:
图2-2上述代码中存在的所有分支情况??路径爆炸是使用动态符号执行进行二进制代码分析时不可避免的一个问题
??(24)种状态(如图2-2所示),cnt存在五个可能的值,但是只有一个值能够触??发漏洞。在执行过程中,符号执行引擎可以收集到程序关于输入的约束条件。对??于最左侧的叶子节点,给定随机输入,符号执行引擎执行结束后即可获得该路径??约束条件p=<il#a,i2冉),i3弁,i4....
图3-1栈结构与栈溢出效果图??如果存在栈溢出漏洞,可以看到,从存在栈溢出的变量开始,自上而下的数??,eb、地址
到低地址的存储。x86架构使用call指令来完成一个函数的调用,该指令实际完??成两个操作:第一步,将EIP寄存器的值设置成目标代码的地址;第二步,将call??指令的下一条指令的地址压入栈顶。如图3-1所示,每一次的函数调用都会创建??一个函数独享的栈帧,栈的底部是函数返回地址....
图3-2格式化字符串攻击示意图??上述示例完成了两个功能,泄露内存数据和任意地址写入任意数据,这是一??
等数据传输接口。现在我们假设userjnput可以包含任意内容的数据,那么现在??攻击者已经可以构造包含任意模式的输入了,包括。/on、这两个比较重要的模??式。图3-2给出了在x86架构下32位系统中一种可能的栈布局,format指针和??其对应的格式化字符串存储在栈上相邻的位....
图4-7输入流交叉示意图??图4-7给出了一种可能的情况:输入中的第一段数据只对状态S1有作用,??
分支图?状态树??图4-6分支图与状态树的关系??事实上在建立状态树的过程中还存在另外一个问题,考虑如图4-7所示的一??种情况。??种子A?种子B?种子C????????MMH?X?mm???MOW?S?<NMt???)MM*?X?3MHC?*???NMM?9t?*?mm???....
本文编号:3948356
本文链接:https://www.wllwen.com/kejilunwen/ruanjiangongchenglunwen/3948356.html