CN113378182A - 一种提权漏洞检测方法、装置、设备及介质 - Google Patents

一种提权漏洞检测方法、装置、设备及介质 Download PDF

Info

Publication number
CN113378182A
CN113378182A CN202110789617.6A CN202110789617A CN113378182A CN 113378182 A CN113378182 A CN 113378182A CN 202110789617 A CN202110789617 A CN 202110789617A CN 113378182 A CN113378182 A CN 113378182A
Authority
CN
China
Prior art keywords
simulation
vulnerability
api
privilege
operating system
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110789617.6A
Other languages
English (en)
Other versions
CN113378182B (zh
Inventor
陈震宇
范渊
吴卓群
王欣
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hangzhou Dbappsecurity Technology Co Ltd
Original Assignee
Hangzhou Dbappsecurity Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hangzhou Dbappsecurity Technology Co Ltd filed Critical Hangzhou Dbappsecurity Technology Co Ltd
Priority to CN202110789617.6A priority Critical patent/CN113378182B/zh
Publication of CN113378182A publication Critical patent/CN113378182A/zh
Application granted granted Critical
Publication of CN113378182B publication Critical patent/CN113378182B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/577Assessing vulnerabilities and evaluating computer system security
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Debugging And Monitoring (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

本申请公开了一种提权漏洞检测方法、装置、设备及介质,包括:基于Unicorn创建CPU指令模拟器;创建各漏洞运行平台对应的模拟操作系统;其中,每个操作模拟系统以单个进程运行;基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,得到漏洞检测结果。这样以进程为容器节点,通过CPU模拟器以及多个操作模拟系统,进行提取漏洞检测,能够提升提权漏洞检测的效率,以及实现提权漏洞检测的跨平台检测。

Description

一种提权漏洞检测方法、装置、设备及介质
技术领域
本申请涉及漏洞检测技术领域,特别涉及一种提权漏洞检测方法、装置、设备及介质。
背景技术
当前,提权漏洞检测方案通常是传统沙箱分析,以OS系统容器节点,如Cuckoo,Sandboxie,Docker_box等,基于虚拟机部署OS系统分析,功耗大、集成度高、提权漏洞检测需要对API劫持和过程重复执行,分析效率低,且无法跨平台触发分析。
发明内容
有鉴于此,本申请的目的在于提供一种提权漏洞检测方法、装置、设备及介质,能够提升提权漏洞检测的效率,以及实现提权漏洞检测的跨平台检测。其具体方案如下:
第一方面,本申请公开了一种提权漏洞检测方法,包括:
基于Unicorn创建CPU指令模拟器;
创建各漏洞运行平台对应的模拟操作系统;其中,每个操作模拟系统以单个进程运行;
基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,得到漏洞检测结果。
可选的,所述创建各漏洞运行平台对应的模拟操作系统,包括:
创建各漏洞运行平台对应的模拟API,以便在漏洞程序调用各所述漏洞运行平台对应的真实API时,调用相应的所述模拟API。
可选的,所述基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,得到漏洞检测结果,包括:
基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,得到所述模拟API的执行数据;
利用所述模拟API的执行数据确定检测结果。
可选的,所述基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,得到所述模拟API的执行数据,包括:
基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,在所述模拟API的执行过程中,通过多个预设探针提取所述模拟API的执行过程数据和/或获取所述模拟API的执行结果数据,得到所述模拟API的执行数据。
可选的,所述利用所述模拟API的执行数据确定检测结果,包括:
利用所述模拟API的执行数据直接确定漏洞检测结果。
可选的,所述利用所述模拟API的执行数据确定检测结果,包括:
利用所述模拟API的执行数据以及预设规则确定漏洞检测结果。
可选的,所述基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,包括:
在执行到目标模拟API时,保存当前环境的上下文数据,得到对应的快照文件,若执行出现异常,则利用所述快照文件进行数据恢复;
其中,所述快照文件为内存或者整个模拟操作系统的快照文件。
第二方面,本申请公开了一种提权漏洞检测装置,包括:
CPU指令模拟器创建模块,用于基于Unicorn创建CPU指令模拟器;
模拟操作系统创建模块,用于创建各漏洞运行平台对应的模拟操作系统;其中,每个操作模拟系统以单个进程运行;
提权漏洞检测模块,用于基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,得到漏洞检测结果。
第三方面,本申请公开了一种电子设备,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现前述的提权漏洞检测方法。
第四方面,本申请公开了一种计算机可读存储介质,其特征在于,用于保存计算机程序,所述计算机程序被处理器执行时实现前述的提权漏洞检测方法。
可见,本申请先基于Unicorn创建CPU指令模拟器,之后创建各漏洞运行平台对应的模拟操作系统;其中,每个操作模拟系统以单个进程运行,最后基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,得到漏洞检测结果。也即,本申请基于Unicorn仿真CPU,并仿真各漏洞运行平台的环境,得到模拟操作系统,且每个模拟操作系统以单个进程运行,这样以进程为容器节点,通过CPU模拟器以及多个操作模拟系统,进行提取漏洞检测,能够提升提权漏洞检测的效率,以及实现提权漏洞检测的跨平台检测。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请公开的一种提权漏洞检测方法流程图;
图2为本申请公开的一种具体的操作系统模拟流程图;
图3为本申请公开的一种具体的提权漏洞检测方法示意图;
图4为本申请公开的一种具体的提权漏洞检测方法示意图;
图5为本申请公开的一种具体的提权漏洞检测方法流程图;
图6为本申请公开的一种具体的模拟API处理流程图;
图7为本申请公开的一种提权漏洞检测装置结构示意图;
图8为本申请公开的一种电子设备结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
当前,提权漏洞检测方案通常是传统沙箱分析,以OS系统容器节点,如Cuckoo,Sandboxie,Docker_box等,基于虚拟机部署OS系统分析,功耗大、集成度高、分析效率低,且无法跨平台触发分析。为此,本申请提供了一种提权漏洞检测方案,能够提升提权漏洞检测的效率,以及实现提权漏洞检测的跨平台检测。
参见图1所示,本申请实施例公开了一种提权漏洞检测方法,包括:
步骤S11:基于Unicorn创建CPU指令模拟器。
步骤S12:创建各漏洞运行平台对应的模拟操作系统;其中,每个操作模拟系统以单个进程运行。
例如,创建Windows/linux等不同平台的模拟操作系统。
参见图2所示,图2为本申请实施例公开了一种具体的操作系统模拟流程图,图2以Windows的模拟操作系统为例,系统仿真步骤包括:1.设置OS堆栈/空间;2.初始化系统PEB/TEB/LDR等数据结构;3.加载内存必要的DLL文件/修复;4.映射漏洞样本及修复重定位/IAT等操作;5.模拟漏洞样本相关API执行;6.设置漏洞样本入口执行;7.根据预设API和规则提权漏洞检测。1至6为模拟操作系统创建过程,创建完模拟操作系统之后,即可在模拟操作系统中进行漏洞检测。
在具体的实施方式中,可以创建各漏洞运行平台对应的模拟API,以便在漏洞程序调用各所述漏洞运行平台对应的真实API时,调用相应的所述模拟API。
需要指出的是,模拟API执行不需要从应用层到内核层到HAL层,直接是应用层模拟,因此执行效率高。
步骤S13:基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,得到漏洞检测结果。
在具体的实施方式中,可以基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,得到所述模拟API的执行数据;利用所述模拟API的执行数据确定检测结果。
其中,可以基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,在所述模拟API的执行过程中,通过多个预设探针提取所述模拟API的执行过程数据和/或获取所述模拟API的执行结果数据,得到所述模拟API的执行数据。
在一种具体的实施方式中,可以利用所述模拟API的执行数据直接确定漏洞检测结果。
在另一种具体的实施方式中,可以利用所述模拟API的执行数据以及预设规则确定漏洞检测结果。
也即,漏洞程序在各模拟模拟操作系统中运行,调用相应的模拟API执行,本申请实施例可以利用模拟API的执行数据直接确定漏洞检测结果,比如一些特定的CVE(即Common Vulnerabilities&Exposures,通用漏洞披露)程序,只需要执行数据即可分析。本申请实施例也可以利用模拟API的执行数据和预设规则协同确定漏洞检测结果。
例如,参见图3所示,图3为本申请实施例公开的一种具体的提权漏洞检测方法示意图。以Windows_Os提权漏洞场景为例,假设N个漏洞提权类型,触发的组件(DLL)或API不同,需要对同类API(多个)进行模拟API的漏洞仿真处理。图3有大量的敏感API,敏感API表示这些函数经常被提权漏洞利用或者本身就存在提权漏洞环节,这些API是重点模拟函数,对应不同的CVE提权漏洞,存在两类检测方案,针对特定CVE采用触发点检测即可,也即利用API执行数据检测即可,而多数的提权漏洞需要对提权利用链数据监视和多点探测,协同规则来捕获判断,利用链过程中,敏感API可以获取到很多有价值的执行数据,协同规则进行定性。如提权漏洞样本是否枚举EPROCESS规则,替换System.token敏感汇编指令,通过创建/注册多个窗口,释放句柄泄露,某个时机去泄露tagWND,也可能是回调导致和offset异常,或者解析某类型数据异常导致泄露。API函数执行的过程中,在某些关键点插入探针,提取数据做规则匹配。也可以通过API调用的序列及参数做为其他的辅助判断条件,检测命中及自定义放行或拦截。
进一步的,本申请实施例可以对各模拟操作系统进行以及不同类型的漏洞进行归类。并且,可以基于检测结果进行防御。
例如,参见图4所示,本申请实施例公开了一种具体的提权漏洞检测方法示意图。在具体的实施方式中,首先集成Unicorn模块代码,其提供了仿真CPU的能力,和操作系统无关,其次根据漏洞运行平台构造模拟操作系统,仿真Windows/linux等不同平台的模拟环境,在不同的模拟操作系统中进行漏洞提权检测,最后对不同平台、不同类型的漏洞进行归类,实现检测防御。图4中,Unicorn属于CPU指令模拟器,而Windows_Os、Linux_Os、Apk_Os均为模拟操作系统,以进程为容器节点,以单个进程运行,每个进程就是一个模拟出来的的操作系统,每个模拟的操作系统都可以进行漏洞分析,平台可以跑多个模拟系统进行仿真检测,比如,Linuxp平台仿真检测Windows、Linux、Apk的提权漏洞。最后对不同平台、不同类型的漏洞进行归类,实现检测防御。
可见,本申请实施例先基于Unicorn创建CPU指令模拟器,之后创建各漏洞运行平台对应的模拟操作系统;其中,每个操作模拟系统以单个进程运行,最后基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,得到漏洞检测结果。也即,本申请基于Unicorn仿真CPU,并仿真各漏洞运行平台的环境,得到模拟操作系统,且每个模拟操作系统以单个进程运行,这样以进程为容器节点,通过CPU模拟器以及多个操作模拟系统,进行提取漏洞检测,能够提升提权漏洞检测的效率,以及实现提权漏洞检测的跨平台检测。
参见图5所示,本申请实施例公开的一种具体的提权漏洞检测方法,包括:
步骤S21:基于Unicorn创建CPU指令模拟器。
步骤S22:创建各漏洞运行平台对应的模拟操作系统;其中,每个操作模拟系统以单个进程运行。
步骤S23:基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,在执行到目标模拟API时,保存当前环境的上下文数据,得到对应的快照文件,若执行出现异常,则利用所述快照文件进行数据恢复。
其中,目标模拟API可以为任一模拟API,或者指定模拟API,可以根据具体的场景设置。并且,所述快照文件为内存或者整个模拟操作系统的快照文件,可以根据具体的场景设置。
这样,通过快照文件可以恢复至上一API执行,以进行相应的漏洞分析。
例如,参见图6所示,图6为本申请提供的一种具体的模拟API处理流程图。并申请实施例可以模拟大量常用的API,可以完整运行漏洞利用程序。程序调用API实现功能,仿真中是调用的是模拟API,可以不真正的执行,也可以根据需求部分可以调用系统API,模拟API是完全可控的,包括返回的结果和实现的过程。比如,漏洞样本在Windows环境执行GetProcess系统函数,GetPorcess则调用模拟的EmuGetProcess函数,该函数可以是设定好的Map或者List列表,保存了进程数据,从而根据设定返回预期内的进程数据,也可以不执行任何代码返回空。另外API被调用会有开辟栈帧等操作,比如x86下,每个参数入栈4个字节大小,函数返回时候需要手动平衡堆栈。需要指出的是,处理模拟API执行不需要从应用层到内核层到HAL层,直接是应用层模拟带来的高效之外,应用层模拟上下文环境也在应用层,快照恢复只需要对上下文数据进行保存恢复即可。比如漏洞样本执行到GetProcessAPI,保存当前环境上下文数据,执行完成GetProcess之后回退上个API节点模拟执行其它几个API,每个API都可以做内存快照,进行内存综合比对判断,API节点多次恢复模拟执行,相对于现有技术的快照恢复,恢复的为模拟系统的数据,数据量小,且不用重启,准确的恢复到相应的API,更为高效。另外,本申请实施除了可以在漏洞执行的过程进行动态分析,还可以截取代码段进行静态分析。
参见图7所示,本申请实施例公开了一种提权漏洞检测装置,其特征在于,包括:
CPU指令模拟器创建模块11,用于基于Unicorn创建CPU指令模拟器;
模拟操作系统创建模块12,用于创建各漏洞运行平台对应的模拟操作系统;其中,每个操作模拟系统以单个进程运行;
提权漏洞检测模块13,用于基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,得到漏洞检测结果。
可见,本申请先基于Unicorn创建CPU指令模拟器,之后创建各漏洞运行平台对应的模拟操作系统;其中,每个操作模拟系统以单个进程运行,最后基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,得到漏洞检测结果。也即,本申请基于Unicorn仿真CPU,并仿真各漏洞运行平台的环境,得到模拟操作系统,且每个模拟操作系统以单个进程运行,这样以进程为容器节点,通过CPU模拟器以及多个操作模拟系统,进行提取漏洞检测,能够提升提权漏洞检测的效率,以及实现提权漏洞检测的跨平台检测。
其中,模拟操作系统创建模块12,具体用于创建各漏洞运行平台对应的模拟API,以便在漏洞程序调用各所述漏洞运行平台对应的真实API时,调用相应的所述模拟API。
在具体的实施方式中,提权漏洞检测模块13,具体包括:
执行数据获取模块,用于基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,得到所述模拟API的执行数据;
检测结果确定模块,用于利用所述模拟API的执行数据确定检测结果。
在具体的实施方式中,执行数据获取模块,具体用于:
基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,在所述模拟API的执行过程中,通过多个预设探针提取所述模拟API的执行过程数据和/或获取所述模拟API的执行结果数据,得到所述模拟API的执行数据。
在一种具体的实施方式中,检测结果确定模块,具体用于利用所述模拟API的执行数据直接确定漏洞检测结果。
在一种具体的实施方式中,检测结果确定模块,具体用于利用所述模拟API的执行数据以及预设规则确定漏洞检测结果。
进一步的,提权漏洞检测模块13,具体用于:
在执行到目标模拟API时,保存当前环境的上下文数据,得到对应的快照文件,若执行出现异常,则利用所述快照文件进行数据恢复。其中,所述快照文件为内存或者整个模拟操作系统的快照文件。
参见图8所示,本申请实施例公开了一种电子设备20,包括处理器21和存储器22;其中,所述存储器22,用于保存计算机程序;所述处理器21,用于执行所述计算机程序,前述实施例公开的提权漏洞检测方法。
关于上述提权漏洞检测方法的具体过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
并且,所述存储器22作为资源存储的载体,可以是只读存储器、随机存储器、磁盘或者光盘等,存储方式可以是短暂存储或者永久存储。
另外,所述电子设备20还包括电源23、通信接口24、输入输出接口25和通信总线26;其中,所述电源23用于为所述电子设备20上的各硬件设备提供工作电压;所述通信接口24能够为所述电子设备20创建与外界设备之间的数据传输通道,其所遵循的通信协议是能够适用于本申请技术方案的任意通信协议,在此不对其进行具体限定;所述输入输出接口25,用于获取外界输入数据或向外界输出数据,其具体的接口类型可以根据具体应用需要进行选取,在此不进行具体限定。
进一步的,本申请实施例还公开了一种计算机可读存储介质,用于保存计算机程序,其中,所述计算机程序被处理器执行时实现前述实施例公开的提权漏洞检测方法。
关于上述提权漏洞检测方法的具体过程可以参考前述实施例中公开的相应内容,在此不再进行赘述。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种提权漏洞检测方法、装置、设备及介质进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种提权漏洞检测方法,其特征在于,包括:
基于Unicorn创建CPU指令模拟器;
创建各漏洞运行平台对应的模拟操作系统;其中,每个操作模拟系统以单个进程运行;
基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,得到漏洞检测结果。
2.根据权利要求1所述的提权漏洞检测方法,其特征在于,所述创建各漏洞运行平台对应的模拟操作系统,包括:
创建各漏洞运行平台对应的模拟API,以便在漏洞程序调用各所述漏洞运行平台对应的真实API时,调用相应的所述模拟API。
3.根据权利要求2所述的提权漏洞检测方法,其特征在于,所述基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,得到漏洞检测结果,包括:
基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,得到所述模拟API的执行数据;
利用所述模拟API的执行数据确定检测结果。
4.根据权利要求3所述的提权漏洞检测方法,其特征在于,所述基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,得到所述模拟API的执行数据,包括:
基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,在所述模拟API的执行过程中,通过多个预设探针提取所述模拟API的执行过程数据和/或获取所述模拟API的执行结果数据,得到所述模拟API的执行数据。
5.根据权利要求3所述的提权漏洞检测方法,其特征在于,所述利用所述模拟API的执行数据确定检测结果,包括:
利用所述模拟API的执行数据直接确定漏洞检测结果。
6.根据权利要求3所述的提权漏洞检测方法,其特征在于,所述利用所述模拟API的执行数据确定检测结果,包括:
利用所述模拟API的执行数据以及预设规则确定漏洞检测结果。
7.根据权利要求2至6任一项所述的提权漏洞检测方法,其特征在于,所述基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,包括:
在执行到目标模拟API时,保存当前环境的上下文数据,得到对应的快照文件,若执行出现异常,则利用所述快照文件进行数据恢复;
其中,所述快照文件为内存或者整个模拟操作系统的快照文件。
8.一种提权漏洞检测装置,其特征在于,包括:
CPU指令模拟器创建模块,用于基于Unicorn创建CPU指令模拟器;
模拟操作系统创建模块,用于创建各漏洞运行平台对应的模拟操作系统;其中,每个操作模拟系统以单个进程运行;
提权漏洞检测模块,用于基于所述CPU指令模拟器、各所述模拟操作系统进行提权漏洞检测,得到漏洞检测结果。
9.一种电子设备,其特征在于,包括:
存储器,用于保存计算机程序;
处理器,用于执行所述计算机程序,以实现如权利要求1至7任一项所述的提权漏洞检测方法。
10.一种计算机可读存储介质,其特征在于,用于保存计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的提权漏洞检测方法。
CN202110789617.6A 2021-07-13 2021-07-13 一种提权漏洞检测方法、装置、设备及介质 Active CN113378182B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110789617.6A CN113378182B (zh) 2021-07-13 2021-07-13 一种提权漏洞检测方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110789617.6A CN113378182B (zh) 2021-07-13 2021-07-13 一种提权漏洞检测方法、装置、设备及介质

Publications (2)

Publication Number Publication Date
CN113378182A true CN113378182A (zh) 2021-09-10
CN113378182B CN113378182B (zh) 2023-05-12

Family

ID=77581932

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110789617.6A Active CN113378182B (zh) 2021-07-13 2021-07-13 一种提权漏洞检测方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN113378182B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113918950A (zh) * 2021-12-14 2022-01-11 成都无糖信息技术有限公司 一种基于模拟执行的沙箱构建方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100175108A1 (en) * 2009-01-02 2010-07-08 Andre Protas Method and system for securing virtual machines by restricting access in connection with a vulnerability audit
CN103678045A (zh) * 2013-12-31 2014-03-26 曙光云计算技术有限公司 虚拟机的数据备份方法
US9473522B1 (en) * 2015-04-20 2016-10-18 SafeBreach Ltd. System and method for securing a computer system against malicious actions by utilizing virtualized elements
CN111444509A (zh) * 2018-12-27 2020-07-24 北京奇虎科技有限公司 基于虚拟机实现的cpu漏洞检测方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100175108A1 (en) * 2009-01-02 2010-07-08 Andre Protas Method and system for securing virtual machines by restricting access in connection with a vulnerability audit
CN103678045A (zh) * 2013-12-31 2014-03-26 曙光云计算技术有限公司 虚拟机的数据备份方法
US9473522B1 (en) * 2015-04-20 2016-10-18 SafeBreach Ltd. System and method for securing a computer system against malicious actions by utilizing virtualized elements
CN111444509A (zh) * 2018-12-27 2020-07-24 北京奇虎科技有限公司 基于虚拟机实现的cpu漏洞检测方法及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113918950A (zh) * 2021-12-14 2022-01-11 成都无糖信息技术有限公司 一种基于模拟执行的沙箱构建方法

Also Published As

Publication number Publication date
CN113378182B (zh) 2023-05-12

Similar Documents

Publication Publication Date Title
Carmony et al. Extract Me If You Can: Abusing PDF Parsers in Malware Detectors.
Spreitzenbarth et al. Mobile-sandbox: having a deeper look into android applications
Huang et al. Crax: Software crash analysis for automatic exploit generation by modeling attacks as symbolic continuations
RU2514141C1 (ru) Способ эмуляции вызовов системных функций для обхода средств противодействия эмуляции
CN109101815B (zh) 一种恶意软件检测方法及相关设备
CN109255235B (zh) 基于用户态沙箱的移动应用第三方库隔离方法
CN110414239B (zh) 一种软件供应链安全分析方法及装置
KR101972825B1 (ko) 하이브리드 분석 기술을 이용한 임베디드 기기 취약점 자동 분석 방법, 장치 및 그 방법을 실행하는 컴퓨터 프로그램
RU2748518C1 (ru) Способ противодействия вредоносному программному обеспечению (ВПО) путем имитации проверочной среды
WO2017177003A1 (en) Extraction and comparison of hybrid program binary features
CN115062309B (zh) 一种新型电力系统下基于设备固件仿真的漏洞挖掘方法及存储介质
CN112287342A (zh) 物联网固件动态检测方法、装置、电子设备以及存储介质
CN111428233A (zh) 一种嵌入式设备固件的安全性分析方法
CN113378182B (zh) 一种提权漏洞检测方法、装置、设备及介质
Kim et al. FIRM-COV: high-coverage greybox fuzzing for IoT firmware via optimized process emulation
CN113935041A (zh) 面向实时操作系统设备的漏洞检测系统及方法
CN107273745B (zh) 一种动态链接库形式的恶意代码的动态分析方法
CN111291377A (zh) 一种应用漏洞的检测方法及系统
CN111767548A (zh) 一种漏洞捕获方法、装置、设备及存储介质
CN110781081A (zh) 一种移动应用回调强制触发方法、系统及存储介质
Dixit et al. Angerza: Automated exploit generation
CN111190813B (zh) 基于自动化测试的安卓应用网络行为信息提取系统及方法
CN114579457A (zh) 新型电力系统固件运行仿真平台及仿真方法
US11573887B2 (en) Extracting code patches from binary code for fuzz testing
CN116775202A (zh) 模糊测试方法、装置、介质、电子设备及计算机程序产品

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant