一种Shellcode的动态检测方法

    公开(公告)号:CN104731708A

    公开(公告)日:2015-06-24

    申请号:CN201510134654.8

    申请日:2015-03-25

    Abstract: 一种Shellcode的动态检测方法,首先抓取网络数据流并进行划分,得到多个执行链;然后触发一个操作系统breakpoint异常,将异常触发时的寄存器值和内存内容作为初始寄存器值和内存内容并存储;最后依次执行执行链,同时在每一执行链执行过程中,检测是否出现死循环或者操作系统异常,如果出现死循环或系统异常,则当前执行链没有Shellcode,否则使用启发式方法检测当前执行链是否含有Shellcode,完成检测。本发明方法不仅能够检测到使用了代码混淆技术的Shellcode,而且未采用虚拟化技术、易于部署,能有效检测到可发现虚拟化环境的Shellcode,大大降低了Shellcode检测暴露的可能性。

    一种基于抽象解释和模型验证的运行时错误分析方法

    公开(公告)号:CN103617115A

    公开(公告)日:2014-03-05

    申请号:CN201310529070.1

    申请日:2013-10-30

    Abstract: 一种基于抽象解释和模型验证的运行时错误分析方法,本发明包括以下步骤:基于抽象解释理论,采用前向迭代方法分析程序数值变量值范围,获得程序点达到稳定时的变量值范围信息,对于循环节点的迭代计算采用循环展开和延迟拓宽相结合的方法实现;根据待分析的运行时错误类型,在相关需要检测的程序点处将变量值范围信息转化为断言或假设形式插入程序中;将带有断言和假设的程序转化为布尔公式,其中布尔公式包括限制条件和属性;使用SAT验证器判断布尔公式中属性的正确性。若正确,说明不存在相关运行时错误;若不正确,说明存在相关运行时错误,并输出相关的反例路径。本发明实现了在运行时错误分析精度和效率之间取得一个平衡点。

    一种基于抽象解释和模型验证的运行时错误分析方法

    公开(公告)号:CN103617115B

    公开(公告)日:2016-02-10

    申请号:CN201310529070.1

    申请日:2013-10-30

    Abstract: 一种基于抽象解释和模型验证的运行时错误分析方法,本发明包括以下步骤:基于抽象解释理论,采用前向迭代方法分析程序数值变量值范围,获得程序点达到稳定时的变量值范围信息,对于循环节点的迭代计算采用循环展开和延迟拓宽相结合的方法实现;根据待分析的运行时错误类型,在相关需要检测的程序点处将变量值范围信息转化为断言或假设形式插入程序中;将带有断言和假设的程序转化为布尔公式,其中布尔公式包括限制条件和属性;使用SAT验证器判断布尔公式中属性的正确性。若正确,说明不存在相关运行时错误;若不正确,说明存在相关运行时错误,并输出相关的反例路径。本发明实现了在运行时错误分析精度和效率之间取得一个平衡点。

Patent Agency Ranking