沙箱防御方法、装置、电子设备和计算机可读存储介质制造方法及图纸

技术编号:34723938 阅读:10 留言:0更新日期:2022-08-31 18:10
本申请提供一种沙箱防御方法、装置、电子设备和计算机可读存储介质,该方法的一具体实施方式包括:接收待识别应用程序的相关信息;所述相关信息包括所述待识别应用程序的可执行文件;在检测到所述待识别应用程序利用重载内核进行反沙箱操作时,将基于所述待识别应用程序启动的待识别系统文件替换为目标系统文件;其中,所述待识别系统文件包括视窗操作系统下运行的sys格式的文件。该方法可以在检测到利用重载内核进行反沙箱操作的待识别应用程序时,通过替换基于其启动的待识别系统文件的方式判断其是否为恶意应用程序,从而使恶意应用程序无法躲避沙箱的检测。应用程序无法躲避沙箱的检测。应用程序无法躲避沙箱的检测。

【技术实现步骤摘要】
沙箱防御方法、装置、电子设备和计算机可读存储介质


[0001]本申请涉及计算机安全领域,具体而言,涉及一种沙箱防御方法、装置、电子设备和计算机可读存储介质。

技术介绍

[0002]沙箱是一个虚拟系统程序,浏览器或其他程序都可以在其内运行,运行所产生的变化可以随后删除。在网络安全中,沙箱指在隔离环境中,用以测试不受信任的文件或应用程序等行为的工具。
[0003]沙箱可以运行应用程序并检测其动态行为特征,然后可以根据检测出来的动态行为特征辨别出该应用程序是否是恶意的,从而判别是否需要对该应用程序进行防御。一些恶意应用程序为了规避沙箱的检测会执行反沙箱操作,使其动态行为特征无法被沙箱捕捉到,从而逃脱沙箱的防御。因此,沙箱需要针对不同的反沙箱操作做出相应的防御处理。
[0004]在相关技术中,一种沙箱防御技术方案往往只能防御一种反沙箱操作。例如,由于沙箱无法与用户进行交互,因此恶意应用程序可以通过判断当前运行环境中是否存在与用户进行的交互活动的特征实现反沙箱操作。也即,如果恶意应用程序确定存在交互活动,则其不会执行恶意行为,从而躲避了沙箱的检测。因此,沙箱可以通过设置不定时或者不间断的与用户进行交互活动的方式防御此种反沙箱操作。这里,上述的交互活动例如可以包括通过检测鼠标光标是否在预设时长内移动的活动。或者,通过检测窗口句柄是否在预设时长内变化的活动等。
[0005]再者,恶意应用程序还可以通过沙箱的特有特征实现反沙箱操作。例如,针对Cuckoo沙箱,恶意应用程序可以利用其存在的应用程序编程接口(ApplicationProgrammingInterface,简称API)“SetErrorMode”实现反沙箱操作。具体的,由于“SetErrorMode”的参数在本次调用时的返回值是上次调用时所设置的值,并且“SetErrorMode”的参数可以设置为“系统会自动修复内存对齐错误并使它们对应用程序不可见”(SEM_NOALIGNMENTFAULTEXCEPT)。因此,如果Cuckoo沙箱将该“SetErrorMode”的参数设置成某个值,并且设置了SEM_NOALIGNMENTFAULTEXCEPT之后,恶意应用程序只需要调用两次该应用程序编程接口“SetErrorMode”,即可实现反沙箱操作。这里,恶意应用程序第一次调用“SetErrorMode”时可以设置一个固定值,第二次调用“SetErrorMode”时,可以确定其值是否为设置的固定值。如果不是,可以确定当前处于Cuckoo沙箱的检测,继而恶意应用程序不会执行恶意行为,从而躲避了Cuckoo沙箱的检测。此时,可以通过在Cuckoo沙箱的代码中删除其存在的“SetModeError”参数所设置的SEM_NOALIGNMENTFAULTEXCEPT的方式防御此种反沙箱操作。
[0006]相关技术中,尚未出现在视窗操作系统(windows系统)下,对利用重载内核进行反沙箱操作的恶意应用程序进行防御的技术方案。

技术实现思路

[0007]本申请实施例的目的在于提供一种沙箱防御方法、装置、电子设备和计算机可读存储介质,用以防御在windows系统下利用重载内核进行反沙箱操作的恶意应用程序逃逸沙箱的检测。
[0008]第一方面,本申请实施例提供了一种沙箱防御方法,该方法包括:接收待识别应用程序的相关信息;所述相关信息包括所述待识别应用程序的可执行文件;在检测到所述待识别应用程序利用重载内核进行反沙箱操作时,将基于所述待识别应用程序启动的待识别系统文件替换为目标系统文件;其中,所述待识别系统文件包括视窗操作系统下运行的sys格式的文件。这样,可以在检测到利用重载内核进行反沙箱操作的待识别应用程序时,通过替换基于其启动的待识别系统文件的方式判断其是否为恶意应用程序,从而使恶意应用程序无法躲避沙箱的检测。
[0009]可选地,所述待识别应用程序通过以下步骤实现所述反沙箱操作:在启动对应的零环应用程序之后,指示所述零环应用程序进行内核重载;在检测到所述零环应用程序启动成功之后,调用与重载内核对应的应用程序编程接口,以躲避沙箱的检测,实现所述反沙箱操作。这里,提供了一种待识别应用程序执行反沙箱操作的实施方式。
[0010]可选地,在所述接收待识别应用程序的相关信息之后,所述沙箱防御方法还包括:调用预设回调函数;所述预设回调函数通过创建系统服务启动所述目标系统文件;在检测到预设回调函数中存在的待识别系统文件为sys格式时,检测所述待识别应用程序是否利用重载内核进行反沙箱操作。这样,通过检测待识别系统文件是否为sys格式,可以在检测其是否执行了反沙箱操作之前,确认待识别应用程序是否为所要防御的恶意应用程序,以节约操作流程。
[0011]可选地,基于以下步骤检测所述待识别应用程序是否利用重载内核进行反沙箱操作:在检测到预设回调函数中存在的待识别系统文件为sys格式时,确定所述待识别系统文件中是否存在预设字符串;在确定所述待识别系统文件中存在所述预设字符串时,确定所述待识别系统文件所对应的导入表中是否存在预设应用程序编程接口信息;在检测到所述导入表中存在所述预设应用程序编程接口信息时,确定所述待识别应用程序利用重载内核进行反沙箱操作。这样,可以确定待识别应用程序为利用重载内核进行反沙箱操作的应用程序。
[0012]可选地,所述将基于所述待识别应用程序启动的待识别系统文件替换为目标系统文件,包括:将所述待识别系统文件的路径信息替换为所述目标系统文件的目标路径信息;所述目标路径信息在所述沙箱的监控范围内。这样,通过替换待识别系统文件与目标系统文件的路径信息实现了替换两者的目的,在一定程度上简化了替换过程,降低了替换错误的概率。
[0013]可选地,所述检测所述待识别应用程序是否利用重载内核进行反沙箱操作的步骤还包括:在检测到所述待识别系统文件的路径信息为所述目标路径信息时,确定所述待识别应用程序利用重载内核进行反沙箱操作;或者在检测到下一待识别系统文件的路径信息为所述目标路径信息时,确定下一待识别应用程序利用重载内核进行反沙箱操作。这样,可以通过路径信息确定一个或多个待识别应用程序是否利用重载内核进行了反沙箱操作,确认过程更加简单便捷。
[0014]可选地,所述沙箱防御方法还包括:对所述待识别应用程序或者所述下一待识别应用程序进行逆向分析,并基于逆向分析结果更新所述目标系统文件。这样,可以基于逆向分析结果完善初始的目标系统文件,以增强目标系统文件的健壮性和适用性。
[0015]第二方面,本申请实施例提供了一种沙箱防御装置,该装置包括:接收模块,用于接收待识别应用程序的相关信息;所述相关信息包括所述待识别应用程序的可执行文件;防御模块,用于在检测到所述待识别应用程序利用重载内核进行反沙箱操作时,将基于所述待识别应用程序启动的待识别系统文件替换为目标系统文件;其中,所述待识别系统文件包括视窗操作系统下运行的sys格式的文件。这样,可以在检测到利用重载内核进行反沙箱操作的待识别应用程序时,通过替换基于其启动的待识别系统文件的方式本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种沙箱防御方法,其特征在于,包括:接收待识别应用程序的相关信息;所述相关信息包括所述待识别应用程序的可执行文件;在检测到所述待识别应用程序利用重载内核进行反沙箱操作时,将基于所述待识别应用程序启动的待识别系统文件替换为目标系统文件;其中,所述待识别系统文件包括视窗操作系统下运行的sys格式的文件。2.根据权利要求1所述的方法,其特征在于,所述待识别应用程序通过以下步骤实现所述反沙箱操作:在启动对应的零环应用程序之后,指示所述零环应用程序进行内核重载;在检测到所述零环应用程序启动成功之后,调用与重载内核对应的应用程序编程接口,以躲避沙箱的检测,实现所述反沙箱操作。3.根据权利要求1或2所述的方法,其特征在于,在所述接收待识别应用程序的相关信息之后,所述方法还包括:调用预设回调函数;所述预设回调函数通过创建系统服务启动所述目标系统文件;在检测到预设回调函数中存在的待识别系统文件为sys格式时,检测所述待识别应用程序是否利用重载内核进行反沙箱操作。4.根据权利要求3所述的方法,其特征在于,基于以下步骤检测所述待识别应用程序是否利用重载内核进行反沙箱操作:在检测到预设回调函数中存在的待识别系统文件为sys格式时,确定所述待识别系统文件中是否存在预设字符串;在确定所述待识别系统文件中存在所述预设字符串时,确定所述待识别系统文件所对应的导入表中是否存在预设应用程序编程接口信息;在检测到所述导入表中存在所述预设应用程序编程接口信息时,确定所述待识别应用程序利用重载内核进行反沙箱操作。5.根据权利要求1、2或4任一项所述的方法,其特征在于,所述将基于所述...

【专利技术属性】
技术研发人员:王宇
申请(专利权)人:北京天融信科技有限公司北京天融信软件有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1