二进制漏洞自动检测
文章平均质量分 80
飞天王八易
这个作者很懒,什么都没留下…
展开
-
二进制级别自动漏洞检测(四)
关于SMT(Satisfiability Modulo Theories)学习SAT解决器是自动的、有效的。所以它们通常被用于软件检测的“引擎”。但是通常系统以一种比布尔要高级的语言形式来设计,并且将这种逻辑转化到布尔逻辑的做法是很昂贵的。所以SMT(Satisfiability Modulo Theories)就是一种有效的推理“引擎”能在更高的抽象级别上进行本地推理,同时能保证SAT高效率和全自动的能力。将从以下的几个方面来阐述:一阶逻辑具体理论问题如何理论解决结合理论的具体解决方式联合原创 2021-03-09 16:07:30 · 248 阅读 · 1 评论 -
关于Intel pin的学习笔记(一)——KNOB< TYPE>构造函数的解释
关于KnobOutputFile()函数的解释对于KnobOutputFile()这个函数我在网上很少能找到对他的详细解释,今天好好的研究了一下,顺便记录下来。首先对这个函数的第一映像是,为啥文件的创建要用这么个鬼东西。如果我们回顾一下如何声明文件名变量KnobOutputFile,也会觉得我们为什么要为这种情况创建这么复杂的东西很奇怪。KnobOutputFile是一个在Intel pin内定义的类型选择器,用于自动解析和管理命令行开关。我们想在不同的测试执行中使用不同的文件名;最好的方法是用命令行发原创 2021-01-21 16:45:33 · 939 阅读 · 0 评论 -
二进制级别自动漏洞检测(三)
为了更好的找到一个污点分析方案,首先了解一下动态、静态污点分析以及动静结合的污点分析。1动态污点分析1.1DAT介绍首先介绍动态污点分析(DTA),也被称作动态信息流跟踪,该方法是关于观察某些不受信任的程序在被监视的环境中执行时的行为。DTA方法的中心思想时将一些传入的数据值标记为受污染的,并在指令执行时通过操作数传播它们。这是通过将CPU寄存器或内存位置中的某些值标记为受污染的值,并在代码执行期间观察受污染的数据的传播来实现的。污染传播策略与每条指令相关联,以根据输入操作数的污染状态指定每个输出操作翻译 2021-01-15 14:32:11 · 1001 阅读 · 1 评论 -
二进制级别自动漏洞检测(二)
源代码在大多数软件安全分析的情况下是不可用的。因此,二进制代码分析被用于许多原因,包括软件取证,恶意软件分析,性能分析和调试。文献中有很多二进制代码分析方法,其中最常用的有符号执行、concolic执行、静态污染分析和动态污染分析为了验证我根据之前一篇文章所提出的一种想法,准备一步步进行实现。首先需要建立自己的污点分析工具,污点分析分为静态和动态。对于动态污点分析已经有一系列工具被提出,本文将进行详细介绍。为了改善符号执行中发现的一系列问题,研究者们开始污点分析,最早的污点分析是由Funnywei提出的(原创 2020-12-21 15:21:45 · 1549 阅读 · 1 评论