[发明专利]一种检测shellcode执行的方法、装置、设备及存储介质有效
申请号: | 202210216564.3 | 申请日: | 2022-03-07 |
公开(公告)号: | CN114741694B | 公开(公告)日: | 2023-03-10 |
发明(设计)人: | 王世元 | 申请(专利权)人: | 安芯网盾(北京)科技有限公司 |
主分类号: | G06F21/56 | 分类号: | G06F21/56;G06F21/55 |
代理公司: | 北京中创云知识产权代理事务所(普通合伙) 11837 | 代理人: | 徐辉 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 检测 shellcode 执行 方法 装置 设备 存储 介质 | ||
根据本公开的实施例,提供一种检测shellcode执行的方法、装置、设备及存储介质,监控进程内存的申请和内存属性的改变,当申请的内存属性包含可执行属性或改变非可执行内存的内存属性包含可执行属性时,去除可执行属性,并记录对应的内存地址;shellcode执行时,出现异常,跳转至异常处理函数;在异常处理函数执行时,检测引起异常的指令的内存地址,当所述引起异常的指令的内存地址属于链表中记录的内存地址且不在所述进程的任何模块内时,终止所述进程或者将异常上报云端。该检测方式,在shellcode执行的第一时间就能检测,此时shellcode还没有执行成功,对计算机系统不会产生任何危害;该检测方式不依赖shellcode自身的任何特征,不限处理器平台和操作系统,具有普适性。
技术领域
本公开涉及信息网络安全技术领域,尤其涉及一种检测shellcode执行的方法、装置、设备及存储介质。
背景技术
shellcode是绝大多数漏洞利用代码的形式,具有隐蔽性高的特点。原有shellcode检测方案均不能对所有形式的shellcode进行检测,均需依赖一定的特征。
一种现有的检测方式为:在Windows平台上检测shellcode执行会去检测装置dll的导入表。然而,如果一段shellcode没有调用系统api,原有检测shellcode执行方案就会失效,比如shellcode只是一句简单的x86汇编指令xor eax,eax,这种检测方式将检测不到这句汇编指令的执行。
另一种检测方式为:在Windows平台上将Ntdll.dll、Kernel32.dll等关键DLL的“0x5a4d”所在的PE头等数据内存页,设置为PAGE_GUARD属性,PAGE_GUARD作为访问的保护属性标志,可以使应用程序能够在内存页中的任何一个字节被访问时得到异常通知。然而该检测方式基于对应用模块所在预设数据内存页的操作行为进行监控,如果shellcode并没有访问PE头的行为,检测将会失效。比如shellcode只是一句简单的x86汇编指令xoreax,eax,这种检测方式将同样检测不到这句汇编指令的执行。
发明内容
针对现有技术存在的问题,本公开提供一种检测shellcode执行的方法、装置、设备及存储介质,增强检测shellcode执行的能力,弥补现有检测shellcode执行手段的不足。
为达到上述目的,本公开提供了一种检测shellcode执行的方法,包括:
监控进程内存的申请和内存属性的改变,当申请的内存属性包含可执行属性或试图改变非可执行内存的属性包含可执行内存属性时,去除对应内存的可执行属性,并记录对应内存的内存地址;
shellcode执行时,出现异常,控制流跳转至异常处理函数;
在异常处理函数执行时,检测引起异常的指令的内存地址,当所述引起异常的指令的内存地址属于所记录的内存地址且不在所述进程的任何模块内时,终止所述进程或者将异常上报云端。
进一步地,还包括:
在进程中注入截获异常处理的钩子函数(HOOK)代码,并挂钩操作装置平台申请内存和改变内存属性的应用程序API或者内核API。
进一步地,当所述引起异常的指令的内存地址属于所记录的内存地址且在所述进程的任何模块内时,把所述引起异常的指令所在内存的内存属性恢复为原有内存属性加上可执行内存属性。
进一步地,当所述引起异常的指令的内存地址不属于链表中记录的内存地址时,上报云端:截获失败建议提前注入异常处理钩子函数(HOOK)的时机。
另一方面提供一种检测shellcode执行的装置,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于安芯网盾(北京)科技有限公司,未经安芯网盾(北京)科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210216564.3/2.html,转载请声明来源钻瓜专利网。