【技术实现步骤摘要】
控制流检测方法、装置、电子设备及计算机可读存储介质
[0001]本申请涉及信息安全
,具体而言,涉及一种控制流检测方法、装置、电子设备及计算机可读存储介质。
技术介绍
[0002]ROP(Return
‑
oriented Programming,面向返回的编程)漏洞攻击是一种新型的基于代码复用技术的攻击方式,攻击者通过对栈溢出和应用程序的代码片断的复用,对程序的指令流进行控制。目前,针对ROP漏洞攻击的检测通常是采用CFG(Control Flow Guard,控制流防护)技术实现的。但是,CFG技术需要编译器或者新型硬件的支持,对于一些陈旧的应用程序或不支持CFG的编译器,则无法通过CFG技术实现防护,也即通过CFG技术存在防护漏洞,一旦攻击者通过这些防护漏洞进行入侵,那么现有的CFG防御方式将无能为力,会造成严重的损失。
技术实现思路
[0003]本申请实施例的目的在于提供一种控制流检测方法、装置、电子设备及计算机可读存储介质,用以实现不依赖编译器的控制流检测。
[0004 ...
【技术保护点】
【技术特征摘要】
1.一种控制流检测方法,其特征在于,包括:通过处理器跟踪技术获取目标进程的控制流;将所述控制流的地址与所述目标进程的影子堆栈的返回地址进行匹配;所述影子堆栈为通过所述目标进程的指令流维护的堆栈;在所述影子堆栈的返回地址与所述控制流的地址不匹配的情况下,确定所述控制流被劫持。2.如权利要求1所述的控制流检测方法,其特征在于,在通过处理器跟踪技术获取目标进程的控制流之后,将所述控制流的地址与所述目标进程的影子堆栈的返回地址进行匹配之前,所述方法还包括:根据所述控制流和所述目标进程所属程序的代码重建指令流;根据重建的所述指令流维护所述影子堆栈。3.如权利要求1所述的控制流检测方法,其特征在于,通过处理器跟踪技术获取目标进程的控制流包括:通过处理器跟踪技术对所述目标进程的指令流进行监控;保存所述指令流中的关键信息,得到所述控制流;其中,所述关键信息为无法从所述目标进程所属程序的代码内获取的信息。4.如权利要求3所述的控制流检测方法,其特征在于,所述关键信息包括以下至少一种:间接跳转指令;间接调用指令;jcc指令。5.如权利要求2所述的控制流检测方法,其特征在于,通过处理器跟踪技术获取目标进程的控制流包括:通过处理器跟踪技术将所述目标进程的控制流保存至预设的缓存中;根据所述控制流和所述目标进程所属程序的代码重建指令流,包括:在所述缓存的剩余空间小于预设空间阈值的情...
【专利技术属性】
技术研发人员:张佳荟,覃梓兴,张苏洵,刘铠文,张春广,
申请(专利权)人:戎码科技北京有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。