CN107515778A - 一种基于上下文感知的起源追踪方法及系统 - Google Patents

一种基于上下文感知的起源追踪方法及系统 Download PDF

Info

Publication number
CN107515778A
CN107515778A CN201710744222.8A CN201710744222A CN107515778A CN 107515778 A CN107515778 A CN 107515778A CN 201710744222 A CN201710744222 A CN 201710744222A CN 107515778 A CN107515778 A CN 107515778A
Authority
CN
China
Prior art keywords
event
state
module
journal entries
context
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
CN201710744222.8A
Other languages
English (en)
Other versions
CN107515778B (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.)
Wuhan University WHU
Original Assignee
Wuhan University WHU
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 Wuhan University WHU filed Critical Wuhan University WHU
Priority to CN201710744222.8A priority Critical patent/CN107515778B/zh
Publication of CN107515778A publication Critical patent/CN107515778A/zh
Application granted granted Critical
Publication of CN107515778B publication Critical patent/CN107515778B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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
    • 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/55Detecting local intrusion or implementing counter-measures
    • G06F21/552Detecting local intrusion or implementing counter-measures involving long-term monitoring or reporting
    • 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/55Detecting local intrusion or implementing counter-measures
    • G06F21/56Computer malware detection or handling, e.g. anti-virus arrangements
    • G06F21/566Dynamic detection, i.e. detection performed at run-time, e.g. emulation, suspicious activities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1416Event detection, e.g. attack signature detection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1408Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic by monitoring network traffic
    • H04L63/1425Traffic logging, e.g. anomaly detection
    • 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/45587Isolation or security of virtual machine instances
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/146Tracing the source of attacks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Virology (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本发明涉及一种基于上下文感知的起源追踪方法及系统。针对APT攻击多阶段持续时间长、渗透能力强、隐蔽性好的问题,该方案利用虚拟化技术透明的收集目标机器中的系统事件和网络事件,通过上下文感知连接这些事件,向攻击调查展现全局视角,从而实现有效的攻击起源追踪。该方案包括三个模块,事件收集模块透明的收集目标内存中的系统操作状态和网络操作状态,日志处理模块根据系统操作状态和网络操作状态,基于事件对象生成日志条目,起源追踪模块读取日志文件,基于共享特征关联日志条目生成全局视角提供给攻击调查,支持对可疑实体如进程、文件或套接字的查询。

Description

一种基于上下文感知的起源追踪方法及系统
技术领域
本发明涉及云安全技术领域与数字取证领域,尤其是云安全中虚拟机自省技术的运用,具体涉及一种基于上下文感知的起源追踪方法及系统。
背景技术
作为一项可以将计算资源抽象、分割,使其得到统一表示的重要技术,虚拟化成为了云计算取用自由、按需付费这一构想的基础。在虚拟化技术架构中,主机资源的虚拟化抽象由虚拟机管理器(Hypervisor)提供,主机上包括Host OS在内的多台虚拟机之所以能够良好运行全都依赖着这一薄薄的软件基石提供的虚拟化环境。
作为虚拟资源的总调度站,虚拟机管理器是计算机硬件与操作系统之间进行沟通管理的新层次,它能够通过监控虚拟机的行为和软硬件资源使用情况(例如执行指令等)来感知虚拟机的内部状态,实现对于虚拟机透明的安全监控。此种技术即所谓虚拟机自省(Virtual Machine Introspection,VMI),拥有特权的虚拟机(实质为已经虚拟化的主机操作系统)作为VMI主机,借助虚拟机管理器来获取其他普通虚拟机的状态、行为等信息,以待进一步的分析与检测。虚拟机隔离方面,VMM通过CPU提供的VM扩展功能来管理虚拟机上下文环境(Virtual Machine Context),从而实现虚拟机间的数据隔离。该项技术自由Garinkel首次提出相关概念至今已经获得了一些研究与应用,其在恶意软件分析、内核完整性检测等方面发挥作用,为云计算安全的基本组成元素——虚拟机安全提供强有力的支撑。虚拟机自省技术的其中一个应用方向是安全监控,由于VMI能够于虚拟机外部透明地对其进行分析,使得不安全因素的现象与特征暴露无遗。
APT攻击用于获取战略优势或利益,对现代社会的威胁持续增大。公认的第一例APT攻击,2010年的Stuxnet病毒,破坏伊朗核设施。2012年的Flame病毒,被认为是当时最复杂的用于定向攻击的恶意软件,瞄准中东和北非的目标窃取信息和截屏。2012年开始在中国政府和研究结构传播的OceanLotus病毒,于2014年爆发并窃取大量机密数据。2017年5月12日爆发的WannaCry勒索软件攻击,利用美国NSA泄露的漏洞EternalBlue在1天内感染了150多个国家的超过23万台计算机。
因此,急需对APT攻击的检测和分析,起源追踪技术可以揭示APT攻击的起源和结果,是比较有效的方法。通常起源追踪方法分析系统产生的审计日志来找出可疑实体的起源是什么,如何产生的,什么时候产生的。在攻击调查中,实体可能是进程,网络连接,文件等等。攻击起源追踪是试图找出攻击相关的证据,这些证据被称为攻击指纹。
但是APT攻击的特征使传统的基于审计日志的起源追踪方法很难成功进行。首先,APT攻击持续时间长,阶段多,攻击者花费大量时间侦查目标组织,然后进行渗透,最后窃取机密信息。在这些阶段中攻击者会跨越许多目标,因此多阶段攻击模式中的攻击指纹是时空散步于多个目标的不同日志中的。大多数现有的基于日志的入侵分析和检测系统只针对一种日志类型,它们很难用于检测APT攻击。其次,APT攻击通常利用0day或者1day漏洞进行渗透,这些渗透方案十分隐蔽,很难阻挡。利用这些方案攻击者可以获得很高的权限,甚至可以强制关闭目标中的日志系统。在攻击完成后,攻击者通常会清除下载的恶意软件,也会尝试修改日志文件,使得受害者很难追踪攻击。
发明内容
本发明的目的是提供一种可应用于云安全的基于上下文感知的起源追踪方案。针对APT攻击多阶段持续时间长、渗透能力强、隐蔽性好的问题,该方案利用虚拟化技术透明的收集目标机器中的系统事件和网络事件,通过上下文感知连接这些事件,向攻击调查展现全局视角,从而实现有效的攻击起源追踪。
一种基于上下文感知的起源追踪方法,其特征在于,包括:
步骤1,进行时间收集,具体是利用VMI技术透明的收集目标内存中的字段。内核函数"unlink"被进程调用来移除到文件索引节点的链接,它是内存变化的标志,因此我们在"unlink"代码中插桩,当它被调动时发送一个中断到VMM,用于触发事件收集模块来收集感兴趣的字段。根据运行时操作规则将收集的字段组成系统事件状态和网络事件状态,并进行日志处理;
步骤2,进行日志处理,具体是根据事件收集模块的输入,建立日志条目记录每个进程的生命信息和操作信息。生命信息包括进程的创建和关闭时间,以及父进程名称。操作信息包括进程操作的起始和结束时间,以及操作对象名称。这些日志条目将可以表示进程操作的时间关系。
步骤3,进行起源追踪,具体是读取日志,建模日志条目之间的关系,向分析者提供全局视角。
在上述的一种基于上下文感知的起源追踪方法,所述步骤1具体包括:
步骤1.1,在Dom0中启动Xentrace,监控VMM收到的信息。
步骤2.1,当虚拟机中的进程调用"unlink"时,"unlink"的插桩产生中断到VMM,该中断中包含虚拟机的domain ID等参数。
步骤3.1,Xentrace收到中断信息,调用VMI程序,根据参数对目标虚拟机进行字段收集。
步骤4。1,根据运行时操作规则将收集的字段组成系统事件状态和网络事件状态,并发送到日志处理模块,返回步骤1.1。
在上述的一种基于上下文感知的起源追踪方法,所述步骤2具体包括:
步骤2.1,遍历当前收到的事件状态与之前存储的事件状态对比,如果当前事件状态与之前事件状态一致,表示进程操作状态没有发生改变,不需要更新日志条目;如果存在差别,需要进一步检查。
步骤2.2,如果新增了一个进程创建状态Fork(p1,p2),模块为p1新建一个日志条目,记录进程创建时间,进程创建标识和父进程ID。
步骤2.3,如果进程创建相关的当前事件状态中无法可以匹配之前事件状态,表明进程已经在这次收集之前被关闭了,模块新建日志条目记录进程关闭时间和进程关闭标识。
步骤2.4,如果新增了一个进程操作状态,表明进程在收集之前启动了对某个对象的操作,模块新建日志条目记录该进程操作的时间戳,操作标识,和操作对象。
步骤2.5,如果进程操作相关的当前事件操作状态中没有一条可以匹配之前事件状态,表明进程关闭了操作,模块新建日志条目记录时间戳,关闭标识和操作对象。
步骤2.6,比较结束后,用当前事件状态替换之前事件状态,存储于缓存中。
在上述的一种基于上下文感知的起源追踪方法,所述步骤3具体包括:
步骤3.1,读取日志,根据进程的执行上下文建模日志条目间的关系。
步骤3.2,如果两个进程跟同一个目的地址建立过连接,它们彼此相关。
步骤3.3,如果两个进程跟同一个进程进行过IPC通信,它们彼此相关。
步骤3.4,如果两个进程操作过同一个文件,它们彼此相关。
步骤3.5,如果两个进程共享相同的父进程,或者其中一个是另一个的父进程,它们彼此相关。
一种基于上下文感知的起源追踪系统,其特征在于,包括:
时间收集模块:利用VMI技术透明的收集目标内存中的字段。内核函数"unlink"被进程调用来移除到文件索引节点的链接,它是内存变化的标志,因此我们在"unlink"代码中插桩,当它被调动时发送一个中断到VMM,用于触发事件收集模块来收集感兴趣的字段。根据运行时操作规则将收集的字段组成系统事件状态和网络事件状态,并调用日志处理模块;
日志处理模块:根据事件收集模块的输入,建立日志条目记录每个进程的生命信息和操作信息。生命信息包括进程的创建和关闭时间,以及父进程名称。操作信息包括进程操作的起始和结束时间,以及操作对象名称。这些日志条目将可以表示进程操作的时间关系。
起源追踪模块:用于读取日志,建模日志条目之间的关系,向分析者提供全
局视角。
在上述的一种基于上下文感知的起源追踪系统,所述时间收集模块具体执行步骤包括:
步骤1.1,在Dom0中启动Xentrace,监控VMM收到的信息。
步骤2.1,当虚拟机中的进程调用"unlink"时,"unlink"的插桩产生中断到VMM,该中断中包含虚拟机的domain ID等参数。
步骤3.1,Xentrace收到中断信息,调用VMI程序,根据参数对目标虚拟机进行字段收集。
步骤4。1,根据运行时操作规则将收集的字段组成系统事件状态和网络事件状态,并发送到日志处理模块,返回步骤1.1。
在上述的一种基于上下文感知的起源追踪系统,所述日志处理模块的具体执行步骤包括:
步骤2.1,遍历当前收到的事件状态与之前存储的事件状态对比,如果当前事件状态与之前事件状态一致,表示进程操作状态没有发生改变,不需要更新日志条目;如果存在差别,需要进一步检查。
步骤2.2,如果新增了一个进程创建状态Fork(p1,p2),模块为p1新建一个日志条目,记录进程创建时间,进程创建标识和父进程ID。
步骤2.3,如果进程创建相关的当前事件状态中无法可以匹配之前事件状态,表明进程已经在这次收集之前被关闭了,模块新建日志条目记录进程关闭时间和进程关闭标识。
步骤2.4,如果新增了一个进程操作状态,表明进程在收集之前启动了对某个对象的操作,模块新建日志条目记录该进程操作的时间戳,操作标识,和操作对象。
步骤2.5,如果进程操作相关的当前事件操作状态中没有一条可以匹配之前事件状态,表明进程关闭了操作,模块新建日志条目记录时间戳,关闭标识和操作对象。
步骤2.6,比较结束后,用当前事件状态替换之前事件状态,存储于缓存中。
在上述的一种基于上下文感知的起源追踪系统,所述起源追踪模块的具体执行步骤包括:
步骤3.1,读取日志,根据进程的执行上下文建模日志条目间的关系。
步骤3.2,如果两个进程跟同一个目的地址建立过连接,它们彼此相关。
步骤3.3,如果两个进程跟同一个进程进行过IPC通信,它们彼此相关。
步骤3.4,如果两个进程操作过同一个文件,它们彼此相关。
步骤3.5,如果两个进程共享相同的父进程,或者其中一个是另一个的父进程,它们彼此相关。
本发明利用虚拟化技术实现事件收集模块用于收集目标机器中的系统操作状态和网络操作状态,该模块对攻击者透明,有效避免攻击者对该模块干扰甚至强制关闭。日志处理模块关联系统操作状态和网络操作状态到日志条目中来表现进程系统操作事件或网络操作事件的时间性。起源追踪模块根据日志条目识别进程系统操作事件和网络操作事件的执行上下文,通过上下文感知连接这些事件,向攻击调查展现全局视角,从而实现有效的攻击起源追踪。
图表说明
图1为本发明机制的整体框架流程图。
具体实施方式
本发明提供一种可应用于云安全的基于上下文感知的起源追踪方案。针对APT攻击多阶段持续时间长、渗透能力强、隐蔽性好的问题,该方案利用虚拟化技术透明的收集目标机器中的系统事件和网络事件,通过上下文感知连接这些事件,向攻击调查展现全局视角,从而实现有效的攻击起源追踪。
相比于传统的起源追踪方法,本发明具有全局视角、对攻击者透明等特点。
(一)、具体来说,该方案包括事件收集模块、日志处理模块和起源追踪模块三个模块。本发明的机制框架流程图见图1所示。
一、事件收集模块
事件收集模块主要功能如下:
(1)利用VMI技术透明的收集目标内存中的字段。内核函数"unlink"被进程调用来移除到文件索引节点的链接,它是内存变化的标志,因此我们在"unlink"代码中插桩,当它被调动时发送一个中断到VMM,用于触发事件收集模块来收集感兴趣的字段。计划收集的字段如表1。
TABLE 1字段描述
(2)根据运行时操作规则将收集的字段组成系统事件状态和网络事件状态,并发送到日志处理模块,运行时操作规则如表2。
TABLE 2运行时操作规则
本模块包括以下步骤:
步骤1,在Dom0中启动Xentrace,监控VMM收到的信息。
步骤2,当虚拟机中的进程调用"unlink"时,"unlink"的插桩产生中断到VMM,该中断中包含虚拟机的domain ID等参数。
步骤3,Xentrace收到中断信息,调用VMI程序,根据参数对目标虚拟机进行字段收集。
步骤4,根据运行时操作规则将收集的字段组成系统事件状态和网络事件状态,并发送到日志处理模块,返回步骤1。
二、日志处理模块
日志处理模块主要实现了以下功能:
(1)根据事件收集模块的输入,建立日志条目记录每个进程的生命信息和操作信息。生命信息包括进程的创建和关闭时间,以及父进程名称。操作信息包括进程操作的起始和结束时间,以及操作对象名称。这些日志条目将可以表示进程操作的时间关系。
其流程分为以下步骤:
步骤1,遍历当前收到的事件状态与之前存储的事件状态对比,如果当前事件状态与之前事件状态一致,表示进程操作状态没有发生改变,不需要更新日志条目;如果存在差别,需要进一步检查。
步骤2,如果新增了一个进程创建状态Fork(p1,p2),模块为p1新建一个日志条目,记录进程创建时间,进程创建标识和父进程ID。
步骤3,如果进程创建相关的当前事件状态中无法可以匹配之前事件状态,表明进程已经在这次收集之前被关闭了,模块新建日志条目记录进程关闭时间和进程关闭标识。
步骤4,如果新增了一个进程操作状态,表明进程在收集之前启动了对某个对象的操作,模块新建日志条目记录该进程操作的时间戳,操作标识,和操作对象。
步骤5,如果进程操作相关的当前事件操作状态中没有一条可以匹配之前事件状态,表明进程关闭了操作,模块新建日志条目记录时间戳,关闭标识和操作对象。
步骤6,比较结束后,用当前事件状态替换之前事件状态,存储于缓存中。
三、起源追踪模块
起源追踪模块的主要功能如下:
(1)读取日志,建模日志条目之间的关系,向分析者提供全局视角。
本模块包括以下步骤:
步骤1,读取日志,根据进程的执行上下文建模日志条目间的关系。
步骤2,如果两个进程跟同一个目的地址建立过连接,它们彼此相关。
步骤3,如果两个进程跟同一个进程进行过IPC通信,它们彼此相关。
步骤4,如果两个进程操作过同一个文件,它们彼此相关。
步骤5,如果两个进程共享相同的父进程,或者其中一个是另一个的父进程,它们彼此相关。
(二)、本发明适用于云安全环境中攻击的起源追踪,包括以下步骤:
步骤1,在虚拟机的内核函数"unlink"代码中插桩。
步骤2,在Dom0启动Xentrace程序,,监控VMM收到的信息。
步骤3,当虚拟机中的进程调用"unlink"时,"unlink"的插桩产生中断到VMM,该中断中包含虚拟机的domain ID等参数。
步骤4,Xentrace收到中断信息,调用VMI程序,根据参数对目标虚拟机进行字段收集。
步骤5,根据运行时操作规则将收集的字段组成系统事件状态和网络事件状态,并发送到日志处理模块。
步骤6,日志处理模块根据事件收集模块的输入,建立日志条目记录每个进程的生命信息和操作信息。
步骤7,起源追踪模块读取日志,建模日志条目之间的关系,向分析者提供
全局视角。
本发明机制提供一个应用于云安全的基于上下文感知的起源追踪方案。本发明所属技术领域的技术人员可以对所描述的具体实施案例做各种各样的修改或补充或采用类似的方式替代,但并不会偏离本发明的精神或者超越所附权要求书所定义的范围。

Claims (8)

1.一种基于上下文感知的起源追踪方法,其特征在于,包括:
步骤1,进行时间收集,具体是利用VMI技术透明的收集目标内存中的字段;内核函数"unlink"被进程调用来移除到文件索引节点的链接,它是内存变化的标志,因此我们在"unlink"代码中插桩,当它被调动时发送一个中断到VMM,用于触发事件收集模块来收集感兴趣的字段;根据运行时操作规则将收集的字段组成系统事件状态和网络事件状态,并进行日志处理;
步骤2,进行日志处理,具体是根据事件收集模块的输入,建立日志条目记录每个进程的生命信息和操作信息;生命信息包括进程的创建和关闭时间,以及父进程名称;操作信息包括进程操作的起始和结束时间,以及操作对象名称;这些日志条目将可以表示进程操作的时间关系;
步骤3,进行起源追踪,具体是读取日志,建模日志条目之间的关系,向分析者提供全局视角。
2.根据权利要求1所述的一种基于上下文感知的起源追踪方法,其特征在于,所述步骤1具体包括:
步骤1.1,在Dom0中启动Xentrace,监控VMM收到的信息;
步骤2.1,当虚拟机中的进程调用"unlink"时,"unlink"的插桩产生中断到VMM,该中断中包含虚拟机的domain ID等参数;
步骤3.1,Xentrace收到中断信息,调用VMI程序,根据参数对目标虚拟机进行字段收集;
步骤4.1,根据运行时操作规则将收集的字段组成系统事件状态和网络事件状态,并发送到日志处理模块,返回步骤1.1。
3.根据权利要求1所述的一种基于上下文感知的起源追踪方法,其特征在于,所述步骤2具体包括:
步骤2.1,遍历当前收到的事件状态与之前存储的事件状态对比,如果当前事件状态与之前事件状态一致,表示进程操作状态没有发生改变,不需要更新日志条目;如果存在差别,需要进一步检查;
步骤2.2,如果新增了一个进程创建状态Fork(p1,p2),模块为p1新建一个日志条目,记录进程创建时间,进程创建标识和父进程ID;
步骤2.3,如果进程创建相关的当前事件状态中无法可以匹配之前事件状态,表明进程已经在这次收集之前被关闭了,模块新建日志条目记录进程关闭时间和进程关闭标识;
步骤2.4,如果新增了一个进程操作状态,表明进程在收集之前启动了对某个对象的操作,模块新建日志条目记录该进程操作的时间戳,操作标识,和操作对象;
步骤2.5,如果进程操作相关的当前事件操作状态中没有一条可以匹配之前事件状态,表明进程关闭了操作,模块新建日志条目记录时间戳,关闭标识和操作对象;
步骤2.6,比较结束后,用当前事件状态替换之前事件状态,存储于缓存中。
4.根据权利要求1所述的一种基于上下文感知的起源追踪方法,其特征在于,所述步骤3具体包括:
步骤3.1,读取日志,根据进程的执行上下文建模日志条目间的关系;
步骤3.2,如果两个进程跟同一个目的地址建立过连接,它们彼此相关;
步骤3.3,如果两个进程跟同一个进程进行过IPC通信,它们彼此相关;
步骤3.4,如果两个进程操作过同一个文件,它们彼此相关;
步骤3.5,如果两个进程共享相同的父进程,或者其中一个是另一个的父进程,它们彼此相关。
5.一种基于上下文感知的起源追踪系统,其特征在于,包括:
时间收集模块:利用VMI技术透明的收集目标内存中的字段;内核函数"unlink"被进程调用来移除到文件索引节点的链接,它是内存变化的标志,因此我们在"unlink"代码中插桩,当它被调动时发送一个中断到VMM,用于触发事件收集模块来收集感兴趣的字段;根据运行时操作规则将收集的字段组成系统事件状态和网络事件状态,并调用日志处理模块;
日志处理模块:根据事件收集模块的输入,建立日志条目记录每个进程的生命信息和操作信息;生命信息包括进程的创建和关闭时间,以及父进程名称;操作信息包括进程操作的起始和结束时间,以及操作对象名称;这些日志条目将可以表示进程操作的时间关系;
起源追踪模块:用于读取日志,建模日志条目之间的关系,向分析者提供全局视角。
6.根据权利要求5所述的一种基于上下文感知的起源追踪方法,其特征在于,所述时间收集模块具体执行步骤包括:
步骤1.1,在Dom0中启动Xentrace,监控VMM收到的信息;
步骤2.1,当虚拟机中的进程调用"unlink"时,"unlink"的插桩产生中断到VMM,该中断中包含虚拟机的domain ID等参数;
步骤3.1,Xentrace收到中断信息,调用VMI程序,根据参数对目标虚拟机进行字段收集;
步骤4;1,根据运行时操作规则将收集的字段组成系统事件状态和网络事件状态,并发送到日志处理模块,返回步骤1.1。
7.根据权利要求5所述的一种基于上下文感知的起源追踪方法,其特征在于,所述日志处理模块的具体执行步骤包括:
步骤2.1,遍历当前收到的事件状态与之前存储的事件状态对比,如果当前事件状态与之前事件状态一致,表示进程操作状态没有发生改变,不需要更新日志条目;如果存在差别,需要进一步检查;
步骤2.2,如果新增了一个进程创建状态Fork(p1,p2),模块为p1新建一个日志条目,记录进程创建时间,进程创建标识和父进程ID;
步骤2.3,如果进程创建相关的当前事件状态中无法可以匹配之前事件状态,表明进程已经在这次收集之前被关闭了,模块新建日志条目记录进程关闭时间和进程关闭标识;
步骤2.4,如果新增了一个进程操作状态,表明进程在收集之前启动了对某个对象的操作,模块新建日志条目记录该进程操作的时间戳,操作标识,和操作对象;
步骤2.5,如果进程操作相关的当前事件操作状态中没有一条可以匹配之前事件状态,表明进程关闭了操作,模块新建日志条目记录时间戳,关闭标识和操作对象;
步骤2.6,比较结束后,用当前事件状态替换之前事件状态,存储于缓存中。
8.根据权利要求5所述的一种基于上下文感知的起源追踪方法,其特征在于,所述起源追踪模块的具体执行步骤包括:
步骤3.1,读取日志,根据进程的执行上下文建模日志条目间的关系;
步骤3.2,如果两个进程跟同一个目的地址建立过连接,它们彼此相关;
步骤3.3,如果两个进程跟同一个进程进行过IPC通信,它们彼此相关;
步骤3.4,如果两个进程操作过同一个文件,它们彼此相关;
步骤3.5,如果两个进程共享相同的父进程,或者其中一个是另一个的父进程,它们彼此相关。
CN201710744222.8A 2017-08-25 2017-08-25 一种基于上下文感知的起源追踪方法及系统 Active CN107515778B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710744222.8A CN107515778B (zh) 2017-08-25 2017-08-25 一种基于上下文感知的起源追踪方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710744222.8A CN107515778B (zh) 2017-08-25 2017-08-25 一种基于上下文感知的起源追踪方法及系统

Publications (2)

Publication Number Publication Date
CN107515778A true CN107515778A (zh) 2017-12-26
CN107515778B CN107515778B (zh) 2020-12-18

Family

ID=60724238

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710744222.8A Active CN107515778B (zh) 2017-08-25 2017-08-25 一种基于上下文感知的起源追踪方法及系统

Country Status (1)

Country Link
CN (1) CN107515778B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109600387A (zh) * 2018-12-29 2019-04-09 360企业安全技术(珠海)有限公司 攻击事件的追溯方法及装置、存储介质、计算机设备
CN112364284A (zh) * 2020-11-23 2021-02-12 北京八分量信息科技有限公司 基于上下文进行异常侦测的方法、装置及相关产品
CN112434244A (zh) * 2020-11-23 2021-03-02 北京八分量信息科技有限公司 基于ueba进行日志处理的方法、装置及相关产品
CN112507265A (zh) * 2020-11-23 2021-03-16 北京八分量信息科技有限公司 基于树结构进行异常侦测的方法、装置及相关产品
CN113016161A (zh) * 2018-11-19 2021-06-22 Abb瑞士股份有限公司 工业系统中端点的基于事件的行为的分析
CN115296832A (zh) * 2022-06-06 2022-11-04 清华大学 应用服务端的攻击溯源方法及装置
CN116305247A (zh) * 2023-02-02 2023-06-23 广东为辰信息科技有限公司 一种车载应用软件过程数据的敏感信息检测方法及系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120054146A1 (en) * 2010-08-24 2012-03-01 International Business Machines Corporation Systems and methods for tracking and reporting provenance of data used in a massively distributed analytics cloud
CN103310152A (zh) * 2013-04-19 2013-09-18 哈尔滨工业大学深圳研究生院 基于系统虚拟化技术的内核态Rootkit检测方法
CN103824069A (zh) * 2014-03-19 2014-05-28 北京邮电大学 一种基于多主机日志关联的入侵检测方法
CN106027529A (zh) * 2016-05-25 2016-10-12 华中科技大学 一种基于溯源信息的入侵检测系统及方法
CN106778242A (zh) * 2016-11-28 2017-05-31 北京奇虎科技有限公司 基于虚拟机的内核漏洞检测方法及装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120054146A1 (en) * 2010-08-24 2012-03-01 International Business Machines Corporation Systems and methods for tracking and reporting provenance of data used in a massively distributed analytics cloud
CN103310152A (zh) * 2013-04-19 2013-09-18 哈尔滨工业大学深圳研究生院 基于系统虚拟化技术的内核态Rootkit检测方法
CN103824069A (zh) * 2014-03-19 2014-05-28 北京邮电大学 一种基于多主机日志关联的入侵检测方法
CN106027529A (zh) * 2016-05-25 2016-10-12 华中科技大学 一种基于溯源信息的入侵检测系统及方法
CN106778242A (zh) * 2016-11-28 2017-05-31 北京奇虎科技有限公司 基于虚拟机的内核漏洞检测方法及装置

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
ASIT MORE等: "Virtual machine introspection: towards:towards bridging the semantic gap", 《JOURNAL OF CLOUD COMPUTING: ADVANCES, SYSTEMS AND APPLICATIONS》 *
SHIQING MA等: "ProTracer: Towards Practical Provenance Tracing by Alternating Between Logging and Tainting", 《NDSS ’16》 *
张浩等: "云环境下APT攻击的防御方法综述", 《计算机科学》 *
陈进等: "基于新型VMI技术的内核Rootkit检测方案", 《计算机应用与软件》 *

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113016161A (zh) * 2018-11-19 2021-06-22 Abb瑞士股份有限公司 工业系统中端点的基于事件的行为的分析
CN113016161B (zh) * 2018-11-19 2024-04-30 Abb瑞士股份有限公司 工业系统中端点的基于事件的行为的分析
CN109600387A (zh) * 2018-12-29 2019-04-09 360企业安全技术(珠海)有限公司 攻击事件的追溯方法及装置、存储介质、计算机设备
CN112364284A (zh) * 2020-11-23 2021-02-12 北京八分量信息科技有限公司 基于上下文进行异常侦测的方法、装置及相关产品
CN112434244A (zh) * 2020-11-23 2021-03-02 北京八分量信息科技有限公司 基于ueba进行日志处理的方法、装置及相关产品
CN112507265A (zh) * 2020-11-23 2021-03-16 北京八分量信息科技有限公司 基于树结构进行异常侦测的方法、装置及相关产品
CN112364284B (zh) * 2020-11-23 2024-01-30 北京八分量信息科技有限公司 基于上下文进行异常侦测的方法、装置及相关产品
CN112507265B (zh) * 2020-11-23 2024-03-01 北京八分量信息科技有限公司 基于树结构进行异常侦测的方法、装置及相关产品
CN115296832A (zh) * 2022-06-06 2022-11-04 清华大学 应用服务端的攻击溯源方法及装置
CN115296832B (zh) * 2022-06-06 2024-01-26 清华大学 应用服务端的攻击溯源方法及装置
CN116305247A (zh) * 2023-02-02 2023-06-23 广东为辰信息科技有限公司 一种车载应用软件过程数据的敏感信息检测方法及系统
CN116305247B (zh) * 2023-02-02 2024-05-10 广东为辰信息科技有限公司 一种车载应用软件过程数据的敏感信息检测方法及系统

Also Published As

Publication number Publication date
CN107515778B (zh) 2020-12-18

Similar Documents

Publication Publication Date Title
CN107515778A (zh) 一种基于上下文感知的起源追踪方法及系统
Case et al. Memory forensics: The path forward
CN106790186B (zh) 基于多源异常事件关联分析的多步攻击检测方法
CN107612924B (zh) 基于无线网络入侵的攻击者定位方法及装置
Schwarz et al. JavaScript Template Attacks: Automatically Inferring Host Information for Targeted Exploits.
Moustafa et al. Data analytics-enabled intrusion detection: Evaluations of ToN_IoT linux datasets
CN110647744B (zh) 文件系统中的取证分析的方法、装置、介质和系统
Rathnayaka et al. An efficient approach for advanced malware analysis using memory forensic technique
CN107465702B (zh) 基于无线网络入侵的预警方法及装置
JP2021022400A (ja) 分析システム、方法、及び、プログラム
CN107579997A (zh) 无线网络入侵检测系统
CN103310152B (zh) 基于系统虚拟化技术的内核态Rootkit检测方法
CN107566401B (zh) 虚拟化环境的防护方法及装置
CN109597675B (zh) 虚拟机恶意软件行为检测方法及系统
CN103986706A (zh) 一种应对apt攻击的安全架构设计方法
CN116260628A (zh) 一种基于蜜网主动溯源方法
Li et al. Robbery on devops: Understanding and mitigating illicit cryptomining on continuous integration service platforms
CN115001789B (zh) 一种失陷设备检测方法、装置、设备及介质
CN113746781A (zh) 一种网络安全检测方法、装置、设备及可读存储介质
CN116340943A (zh) 应用程序保护方法、装置、设备、存储介质和程序产品
CN113596044B (zh) 一种网络防护方法、装置、电子设备及存储介质
CN107509200A (zh) 基于无线网络入侵的设备定位方法及装置
CN105550574B (zh) 基于内存活动的边信道攻击取证系统及方法
Rehman et al. The next generation of cloud security through hypervisor-based virtual machine introspection
Burji et al. Malware analysis using reverse engineering and data mining tools

Legal Events

Date Code Title Description
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