一种阻止基于原生代码攻击操作系统的方法及装置制造方法及图纸

技术编号:22387796 阅读:49 留言:0更新日期:2019-10-29 06:38
本发明专利技术提供了一种阻止基于原生代码攻击操作系统的方法及装置,从操作系统的应用程序框架层对应的框架源代码中选取与预设函数有关的目标框架源代码,获取目标框架源代码中调用的系统目录。根据指令源代码中调用系统目录的目标指令构建在操作系统的原生代码下运行的攻击代码,并根据成功攻击操作系统的目标攻击代码修复操作系统。在找到消耗系统资源和设备资源的目标指令后,基于操作系统的原生代码构建攻击代码,运行攻击代码查找操作系统中基于原生代码的易受攻击点。实现了基于原生代码层对操作系统中易受攻击点的检测和修复,消除了操作系统的运行过程的安全隐患。

A method and device to prevent operating system attack based on native code

【技术实现步骤摘要】
一种阻止基于原生代码攻击操作系统的方法及装置
本专利技术涉及操作系统安全性
,尤其是涉及一种阻止基于原生代码攻击操作系统的方法及装置。
技术介绍
操作系统(operatingsystem)是管理机器硬件与软件资源的计算机程序,同时也是机器系统的内核与基石。操作系统需要处理如管理与配置内存、决定系统资源供需的优先次序、控制输入设备与输出设备、操作网络与管理文件系统等基本事务,同时操作系统也提供一个让用户与系统交互的操作界面。然而,操作系统也常因为漏洞受到攻击,如何检测出操作系统存在的漏洞和如何对漏洞进行修复成为保证操作系统安全运行的两个重要方面。在实际应用过程中,专利技术人发现现有的用于检测Android操作系统收到攻击的检测方法都是基于Java代码层面分析的,无法检测出基于原生代码攻击Android操作系统的行为,导致操作系统的运行存在安全隐患。
技术实现思路
本专利技术实施例提供阻止基于原生代码攻击操作系统的方法及装置,用以解决现有技术中无法检测出基于原生代码攻击Android操作系统的行为,导致操作系统的运行存在安全隐患的问题。针对以上技术问题,本专利技术的实施例提供了一种阻止基于原生代码攻击操作系统的方法,包括:获取操作系统的应用程序框架层对应的框架源代码和所述操作系统的指令对应的指令源代码,从框架源代码中获取与预设函数有关的目标框架源代码,并获取目标框架源代码中调用的系统目录;对从所述目标框架源代码中获取的每一系统目录,从指令源代码中获取调用系统目录的目标指令,根据目标指令构建在操作系统的原生代码下运行的攻击代码;由构建的攻击代码攻击所述操作系统,获取成功攻击所述操作系统的目标攻击代码,根据目标攻击代码修复所述操作系统,以阻止通过目标攻击代码攻击所述操作系统。本专利技术的实施例提供了一种阻止基于原生代码攻击操作系统的装置,包括:获取模块,用于获取操作系统的应用程序框架层对应的框架源代码和所述操作系统的指令对应的指令源代码,从框架源代码中获取与预设函数有关的目标框架源代码,并获取目标框架源代码中调用的系统目录;构建模块,用于对从所述目标框架源代码中获取的每一系统目录,从指令源代码中获取调用系统目录的目标指令,根据目标指令构建在操作系统的原生代码下运行的攻击代码;修复模块,用于由构建的攻击代码攻击所述操作系统,获取成功攻击所述操作系统的目标攻击代码,根据目标攻击代码修复所述操作系统,以阻止通过目标攻击代码攻击所述操作系统。本专利技术的实施例提供了一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现以上所述的阻止基于原生代码攻击操作系统的方法的步骤。本专利技术的实施例提供了一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以上所述的阻止基于原生代码攻击操作系统的方法的步骤。本专利技术实施例提供了一种阻止基于原生代码攻击操作系统的方法及装置,从操作系统的应用程序框架层对应的框架源代码中选取与预设函数有关的目标框架源代码,获取目标框架源代码中调用的系统目录。根据指令源代码中调用系统目录的目标指令构建在操作系统的原生代码下运行的攻击代码,并根据成功攻击操作系统的目标攻击代码修复操作系统。在找到消耗系统资源和设备资源的目标指令后,基于操作系统的原生代码构建攻击代码,运行攻击代码查找操作系统中基于原生代码的易受攻击点。实现了基于原生代码层对操作系统中易受攻击点的检测和修复,消除了操作系统的运行过程的安全隐患。附图说明为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1是本专利技术一个实施例提供的一种阻止基于原生代码攻击操作系统的方法的流程示意图;图2是本专利技术另一个实施例提供一种阻止基于原生代码攻击操作系统的装置的结构框图;图3是本专利技术另一个实施例提供的电子设备的结构框图。具体实施方式为使本专利技术实施例的目的、技术方案和优点更加清楚,下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。图1是本实施例提供的一种阻止基于原生代码攻击操作系统的方法的流程示意图,参见图1,该方法包括:101:获取操作系统的应用程序框架层对应的框架源代码和所述操作系统的指令对应的指令源代码,从框架源代码中获取与预设函数有关的目标框架源代码,并获取目标框架源代码中调用的系统目录;102:对从所述目标框架源代码中获取的每一系统目录,从指令源代码中获取调用系统目录的目标指令,根据目标指令构建在操作系统的原生代码下运行的攻击代码;103:由构建的攻击代码攻击所述操作系统,获取成功攻击所述操作系统的目标攻击代码,根据目标攻击代码修复所述操作系统,以阻止通过目标攻击代码攻击所述操作系统。本实施例提供的方法由安装有用于执行上述步骤101-103程序的设备执行,该设备可以是计算机、服务器或者专用于对操作系统的易受攻击点进行检测的检测设备。目标框架源代码为与预设函数有关的框架源代码,包括直接调用或者间接调用预设函数的框架源代码,或者被预设函数调用的框架源代码。攻击代码为构建的对操作系统进行攻击的程序,攻击代码在操作系统的原生代码下运行,即攻击代码的运行环境与上层应用没有关系。操作系统的源代码包括所有用于实现操作系统功能的代码,包括与上层应用有关的代码,而操作系统的源代码指的是与上层应用没有关系,用于实现操作系统底层功能或者用于实现操作系统底层和操作系统上层交互的功能的代码。其中,需要注意的是,本实施例中的系统目录指的是目标框架源代码中调用的系统目录,并不泛指整个操作系统中的任一系统目录。例如,获取Android操作系统的应用程序框架层(Framework层)的框架源代码,从Framework层获取与预设函数有关的目标框架源代码,并获取目标框架源代码调用的系统目录。再从Android操作系统的指令源代码中获取调用系统目录的目标指令,根据目标指令自动化构建攻击代码,通过攻击代码对操作系统进行攻击来检测操作系统的易受攻击点,进而对易受攻击点进行修复,阻止基于这些易受攻击点对操作系统进行攻击的行为。本实施例提供了一种阻止基于原生代码攻击操作系统的方法,从操作系统的应用程序框架层对应的框架源代码中选取与预设函数有关的目标框架源代码,获取目标框架源代码中调用的系统目录。根据指令源代码中调用系统目录的目标指令构建在操作系统的原生代码下运行的攻击代码,并根据成功攻击操作系统的目标攻击代码修复操作系统。在找到消耗系统资源和设备资源的目标指令后,基于操作系统的原生代码构建攻击代码,运行攻击代码查找操作系统中基于原生代码的易受攻击点。实现了基于原生代码层对操作系统中易受攻击点的检测和修复,消除了操作系统的运行过程的安全隐患。进一步地,在上述实施例的基础上,所述从框架源代码中获取与预设函数有关的目标框架源代码,本文档来自技高网...

【技术保护点】
1.一种阻止基于原生代码攻击操作系统的方法,其特征在于,包括:获取操作系统的应用程序框架层对应的框架源代码和所述操作系统的指令对应的指令源代码,从框架源代码中获取与预设函数有关的目标框架源代码,并获取目标框架源代码中调用的系统目录;对从所述目标框架源代码中获取的每一系统目录,从指令源代码中获取调用系统目录的目标指令,根据目标指令构建在操作系统的原生代码下运行的攻击代码;由构建的攻击代码攻击所述操作系统,获取成功攻击所述操作系统的目标攻击代码,根据目标攻击代码修复所述操作系统,以阻止通过目标攻击代码攻击所述操作系统。

【技术特征摘要】
1.一种阻止基于原生代码攻击操作系统的方法,其特征在于,包括:获取操作系统的应用程序框架层对应的框架源代码和所述操作系统的指令对应的指令源代码,从框架源代码中获取与预设函数有关的目标框架源代码,并获取目标框架源代码中调用的系统目录;对从所述目标框架源代码中获取的每一系统目录,从指令源代码中获取调用系统目录的目标指令,根据目标指令构建在操作系统的原生代码下运行的攻击代码;由构建的攻击代码攻击所述操作系统,获取成功攻击所述操作系统的目标攻击代码,根据目标攻击代码修复所述操作系统,以阻止通过目标攻击代码攻击所述操作系统。2.根据权利要求1所述的阻止基于原生代码攻击操作系统的方法,其特征在于,所述从框架源代码中获取与预设函数有关的目标框架源代码,并获取目标框架源代码中调用的系统目录,包括:从框架源代码中获取被监听的系统服务类对应的第一框架源代码,从第一框架源代码中获取调用同步锁或者被同步锁调用的第二框架源代码;从第一框架源代码中获取调用第二框架源代码的第三框架源代码;从除了第一框架源代码之外的框架源代码中获取调用第二框架源代码和/或第三框架源代码,且包含循环逻辑或者读写逻辑的第四框架源代码;将第二框架源代码、第三框架源代码和第四框架源代码作为目标框架源代码,获取目标框架源代码中调用的系统目录。3.根据权利要求1所述的阻止基于原生代码攻击操作系统的方法,其特征在于,所述根据目标指令构建在操作系统的原生代码下运行的攻击代码,包括:对每一目标指令,生成使得目标指令在所述操作系统的原生代码下执行的次数大于第一预设次数的代码,作为攻击代码;其中,当目标指令在操作系统的原生代码下执行的次数小于或等于所述第一预设次数时,不影响所述操作系统的运行。4.根据权利要求1所述的阻止基于原生代码攻击操作系统的方法,其特征在于,所述由构建的攻击代码攻击所述操作系统,获取成功攻击所述操作系统的目标攻击代码,包括:获取生成的用于检测攻击代码是否成功攻击所述操作系统的检测指令,对每一攻击代码,判断在攻击代码攻击所述操作系统的过程中,所述操作系统是否执行所述检测指令失败或者执行所述检测指令的时长大于预设时长,若是,则攻击代码成功攻击所述操作系统,获取成功攻击所述操作系统的目标攻击代码。5.根据权利要求3所述的阻止基于原生代码攻击操作系统的方法,其特征在于,所述根据目标攻击代码修复所述操作系统,以阻止通过目标攻击代码攻击所述操作系统,包括:对每一目标攻击代码,生成用于限制目标攻击代码对应的目...

【专利技术属性】
技术研发人员:侯勤胜应凌云聂眉宁
申请(专利权)人:北京奇安信科技有限公司
类型:发明
国别省市:北京,11

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

1