CN108256329A - 基于动态行为的细粒度rat程序检测方法、系统及相应的apt攻击检测方法 - Google Patents

基于动态行为的细粒度rat程序检测方法、系统及相应的apt攻击检测方法 Download PDF

Info

Publication number
CN108256329A
CN108256329A CN201810131880.4A CN201810131880A CN108256329A CN 108256329 A CN108256329 A CN 108256329A CN 201810131880 A CN201810131880 A CN 201810131880A CN 108256329 A CN108256329 A CN 108256329A
Authority
CN
China
Prior art keywords
fine granularity
rat
data
behavior
programs
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
CN201810131880.4A
Other languages
English (en)
Other versions
CN108256329B (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 Qidun Information Technology Co ltd
Hangzhou Yidun Information Technology Co ltd
Original Assignee
Hangzhou Qi Shield Information 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 Qi Shield Information Technology Co Ltd filed Critical Hangzhou Qi Shield Information Technology Co Ltd
Priority to CN201810131880.4A priority Critical patent/CN108256329B/zh
Publication of CN108256329A publication Critical patent/CN108256329A/zh
Application granted granted Critical
Publication of CN108256329B publication Critical patent/CN108256329B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Virology (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种基于动态行为的细粒度RAT程序检测方法、系统以及相应的APT攻击检测方法,包括获取目标程序运行时的动态数据作为待检数据,并将所述的待检数据与各个细粒度行为的特征码进行匹配,若存在匹配成功的特征码,则将匹配成功的特征码对应的细粒度行为作为目标程序的标签,并根据目标程序的标签判断该目标程序是否为RAT程序。本发明基于动态数据进行识别,可靠性高,且基于细粒度进行识别,能够识别未知的RAT和APT。

Description

基于动态行为的细粒度RAT程序检测方法、系统及相应的APT 攻击检测方法
技术领域
本发明涉及信息安全技术领域,特别涉及一种基于动态行为的细粒度 RAT程序检测方法、系统以及相应的APT攻击检测方法。
背景技术
APT的全称为高级可持续威胁(Advanced Persistent Threat)。高级指的是APT会使用非常先进的攻击手段,如0day漏洞以及未知的恶意软件,而传统的安全防御手段大多还是基于signature的检测手段,难以检测未知的恶意代码。持续性指的是攻击针对性非常强,目的非常明确,攻击者通常会做大量的侦查工作,长期潜伏于企业中,慢慢地收集信息,并在特定的情况才会下爆发出来。目前APT攻击频繁被报道出来,一般攻击的对象是高价值目标,比如银行、军方、公司等。
据360公司的《2016年APT研究报告》称,截至2016年12月底, 360威胁情报中心已累计监测到的针对中国境内目标发动攻击的境内外 APT组织36个。在这36个APT组织中,针对中国境内目标的攻击最早可以追溯到2007年。而最近三个月(2016年9月-11月)内仍然处于活跃状态的APT组织至少有13个。
攻击目标中,大学占比为40%,大多为军事与国防、通信与计算机等专业的院校。企业占比25%,攻击者关注的企业领域以通信网络、电子电器、海洋与港口为主。其次政府与事业单位占比18.3%,重点领域以涉外机构、海洋、教育为主。还有科研机构占比11.1%,重点关注领域以海洋科学、涉外研究、前沿学科为主,其他机构或个人,占比5.6%。往往这些APT攻击都是通过事后审计的方式才被发现的,有些攻击甚至潜伏了好几年。如何能够快速有效地检测出APT攻击成为了一个重大问题。
APT攻击会给具有高价值信息的组织带来巨大的安全威胁,一个理想化的APT检测系统需要能够快速地检测到APT攻击,并且进行有效的事后审计分析,并且由于APT攻击的长时间潜伏特性,检测系统必须能够对系统长时间进行监测,并且给系统带来的负载足够低。首先,快速以及尽早地发现攻击能够让组织更快速地对攻击做出反应,比如隔离重要资源。第二,能够提供APT攻击的足够细粒度信息对事后审计来说是非常重要的。毕竟APT攻击是一个持续性非常长的攻击,如果检测系统只能检测到某一个攻击点,还原整个APT攻击流程图对于分析人员来说是非常困难的。最后,长期的监控必然会带来大量的日志信息,如何低负载,并且高效地收集和存储这些日志同样十分重要。
在调研了2008年至2016年共291篇真实APT攻击的白皮书后,发现RAT(RemoteAdministration Tool)在绝大多数APT攻击中占据了重要位置。RAT程序是一个远程控制软件,攻击者往往会通过钓鱼邮件引诱受害者下载RAT程序到本地,并且运行RAT程序。当RAT程序运行在受害者的机器上后,攻击者就能够向受害者机器发送命令,远程控制受害者,获取隐私信息,并为后续的深层扩散做准备。如果能够快速检测到RAT程序,并为安全管理员提供关于RAT程序的足够的语义和上下文信息,那么就能够一定程度上缓解APT攻击。
如何检测RAT程序可以归类到恶意代码检测上,这个方向在学术上已有很多研究。恶意代码检测的方法一直在寻找各种各样的模型来描述程序的行为。早期的检测方法一般于二进制代码中特定的字节序列来识别恶意代码。但随着混淆技术的流行,研究者不得不放弃特定字节序列,转而投向具有正则表达式的字节序列,其他的一些模型,如n-gram、API序列、系统依赖图也接连被提出,但最终这些研究只取得了微小的成果。最主要的原因在于,这些模型都不能够准确地表示出一个程序的核心特征,导致恶意代码的作者很容易逃逸检测。部分检测方法依赖于网络特征来识别 RAT,但在APT攻击中,RAT会非常小心谨慎,只产生非常少量的行为,因此在实际情况中他们并不能准确检测到RAT。虽然构建了一个面向系统的模型来进行恶意代码检测,但没有对恶意代码的细粒度行为进行识别,而是把整个恶意代码看成一个整体,因此不能够提供细粒度的语义信息。
在工业界,目前的安全防御产品还是以静态特征匹配(Signature-baseddetection)为主要检测手段,这种手段通过对已知的恶意代码样本进行分析,提取特征,并加入到病毒库中,当某个文件匹配到病毒库中的特征时,就认为这个文件是恶意的。这种手段的优点是能够快速并准确地判断出一个文件是否是曾经出现过恶意软件。缺点也非常明显,第一,只能够对已知的恶意代码进行检测,而APT攻击中用到的RAT都是未知的,往往不存在于病毒库中。第二,大多数检测对象是文件,一些高级的恶意软件能够不以文件的形式出现(如直接在内存中加载),那么这种检测方式将失效。
总结下来,目前的检测手段是不足以检测APT中使用的RAT。首先, APT使用的攻击手段十分高级,恶意代码是未知的,传统的基于特征的检测手段(Signature-basedDetection)就容易被绕过。其次,很多检测系统不能够为检测结果提供语义,即便检测到一个可疑的程序,但并不知道这个程序具体做了什么,需要花费大量人力去逆向分析恶意程序。最后,检测目标不应该限制于文件,因为高级的恶意代码可以不需要以文件形式存储。
发明内容
针对现有技术的不足本发明提供了一种基于动态行为的细粒度RAT 程序检测方法、系统以及相应的APT攻击检测方法。
本发明的基于动态行为的细粒度RAT程序检测方法,包括获取目标程序运行时的动态数据作为待检数据,并将所述的待检数据与各个细粒度行为的特征码进行匹配,若存在匹配成功的特征码,则将匹配成功的特征码对应的细粒度行为作为目标程序的标签,并根据目标程序的标签判断该目标程序是否为RAT程序;所述的各个细粒度行为的特征码通过如下步骤获取:
通过RAT程序运行不同细粒度行为,获取各个细粒度行为运行时的动态数据作为训练数据并记录各条动态数据对应的细粒度行为;
对所述训练数据进行特征匹配以提取各细粒度行为的特征码。
本发明基于动态数据进行(即基于动态分析进行),能够有效避免静态分析获取到的信息容易被混淆、内存加载等手段绕过的缺陷,提高了 RAT程序检测的可靠性。
此外,进行细粒度分析,除了能够有效的判断是否为RAT程序外,还可以确定出该RAT程序具体执行的是什么操作。
本发明的动态数据指的是system call(简称为syscall),syscall是应用程序与操作系统进行交互的接口,动态数据以序列的形式表示。比如 NtUserGetKeyState和NtUserGetKeyboardState这两个syscall可以被用来实现键盘记录,NtGDIStretchBlt和NtGDIBitBlt可以用来实现截屏。
所述对训练数据进行特征匹配以提取各细粒度行为的特征码包括:针对每一个细粒度行为对应的训练数据分别进行比对提取相同序列,并根据提取得到的相同序列形成该细粒度行为的特征码。
作为优选,本发明中采用Alignment算法对每一个细粒度行为对应的训练数据分别进行比对提取相同序列。
采用Alignment算法对每个细粒度行为对应的训练数据分别进行比对提取相同序列包括:
采用Local Alignment将该细粒度行为对应的训练数据进行两两比对提取得到第一版特征,并记录各个第一版特征所对应的训练数据;
针对所述的第一版特征进行至少一次Global Alignment,并以最后一次GlobalAlignment得到的结果作为对应的相同序列。
进一步优选,采用Alignment算法对每一类训练数据分别进行比对提取相同序列具体包括:
采用Local Alignment将该类训练数据进行两两比对提取得到第一版特征,并记录各个第一版特征所对应的训练数据;
采用Global Alignment将对应有共同训练数据的第一版特征码进行两两比对得到第二版特征作为对应的相同序列。
作为优选,所述获取各个细粒度行为的特征码还包括运行不同安全程序,并获取各个安全程序运行时的动态数据作为修正数据;
所述针对每一个细粒度行为对应的训练数据分别进行比对提取相同序列,并根据提取得到的相同序列形成该细粒度行为的特征码还包括:
将所有修正数据与提取得到的相同序列进行比对,保留不属于修正数据的相同序列作为该细粒度行为的特征码。
通过安全程序的动态数据对获取比对得到的相同序列进行删减,删除属于修正数据的相同序列,以保证最终得到的特征码的准确性,进而有利于提高检测的可靠性。
作为优选,所述获取的动态数据时还包括对获取的动态数据进行预处理。预处理包括统一格式以及去重操作,具体包括如下步骤:
统一动态数据的后缀类型进行格式统一;
针对连续出现多次的动态数据,删除重复,仅保留一条。
本发明中根据目标程序的标签数量或种类判断该目标程序是否为 RAT程序。
本发明还提供了一种基于动态行为的细粒度RAT程序检测系统,包括:
待检数据采集单元,用于获取目标程序运行时的动态数据作为待检数据;
数据匹配单元,用于将所述的待检数据与各个细粒度行为的特征码进行匹配,若存在匹配成功的特征码,则将匹配成功的特征码对应的细粒度行为作为目标程序的标签;
结果输出单元,并根据目标程序的标签判断该目标程序是否为RAT 程序;
训练单元,用于获取各个细粒度行为的特征码,包括:
训练数据采集模块,用于通过RAT程序运行不同细粒度行为,获取各个细粒度行为运行时的动态数据作为训练数据并记录各条动态数据对应的细粒度行为;
特征码提取模块,用于对所述训练数据进行特征提取得到各细粒度行为的特征码。
进一步,所述特征码提取模块按照各训练数据对应的细粒度行为的种类,针对每一类训练数据分别进行比对提取相同序列,并根据提取得到的相同序列形成该类训练数据对应细粒度行为的特征码。
本发明还提供了一种APT攻击检测方法,采用基于动态行为的细粒度RAT程序检测目标程序是否为RAT程序,并在检测结果为RAT程序时进一步检测该目标程序是否为未知RAT程序,若为RAT程序,则认为该 RAT程序为APT攻击。
本发明的检测该目标程序是否为未知RAT程序的方法基于静态分析进行,获取目标程序的静态特征,并将获取的静态特征与目前所有已知的 RAT程序的静态特征进行比对,若能够匹配则认为目标程序是已知RAT 程序,否则,认为该目标程序为未知的RAT程序。
需要说明的是,本发明的RAT程序检测方法、APT攻击检测方法在一定程度仅能够判断出为RAT程序和APT攻击的概率的高低,并不能完成完全判断出为RAT程序、APT攻击。与现有技术相比,本发明与现有技术相比具有如下有益效果:
(a)本发明的RAT程序检测方法和系统基于动态分析来做检测,将程序运行起来,观察程序运行时的产生的行为,比如程序读取了哪些文件、注册表,是否联网、发送和接收的数据量等信息。目前大多数检测系统都是基于静态分析来做检测,静态分析指的在不执行程序的情况下,对程序的文件进行分析,比如能够获取到文件的二进制数据。静态分析获取到的信息容易被混淆、内存加载等手段绕过。动态分析很好地解决静态分析存在的这一问题,无论程序如何被加密,通过什么方式加载,最终程序的动态行为都是不会改变的;
(b)本发明的RAT程序检测方法和系统能够识别程序的细粒度语义行为。目前的安全产品,只能告诉管理员某个程序是不是恶意的,但不能为分析人员提供充分的上下文信息,比如说这个程序做过什么行为。本发明提出的工具,能够识别出程序的细粒度语义行为,比如截屏、录音、远程Shell和键盘记录等操作。为了达到这个效果,本发明设计了一套算法,能够自动地为不同的语义行为生成动态特征。然后在程序的运行过程中,将程序的动态分析数据与生成的动态特征进行匹配,如果匹配上某一语义行为的特征,就认为该程序执行了这个行为;
(c)本发明的RAT程序检测方法和系统能够识别未知的RAT程序。目前的基于特征的检测方法,通过对已知的恶意代码样本进行分析,产生特征,加入病毒库。注意,这种方法会将恶意代码当作一个整体来分析,因此产生的特征就只能适用于某个特定的恶意代码。而本发明将一个恶意代码划分成多个语义行为来看待,并针对每个语义行为产生特征码。当有未知程序出现时,本发明会识别该程序的语义行为,最后根据该程序的所有语义行为进行判断。尽管一个未知的恶意代码具有不同的特征,但从语义行为的角度来看,它依旧由多个语义行为组成,每个语义行为在不同的恶意代码之间又往往变化不大,因此依赖细粒度语义行为识别的方式,本发明能够检测到未知的恶意软件(RAT程序);
(d)本发明的APT攻击检测方法在检测到未知RAT检测的基础上能够进一步判断RAT程序为APT的风险,提高了APT检测的可靠性。
附图说明
图1为本实施的一种为RAT程序的可能性风险等级判断规则示意图;
图2为本实施例的基于动态行为的细粒度RAT程序检测方法的流程图;
图3为本实施例中提取细粒度行为的特征码流程图;
图4为本实施例的基于动态行为的细粒度RAT程序检测系统的结构框图。
具体实施方式
下面将结合附图和具体实施例对本发明进行详细说明。
一种基于动态行为的细粒度RAT程序检测方法,获取目标程序运行时的动态数据作为待检数据,并将所述的待检数据与各个细粒度行为的特征码进行匹配,若存在匹配成功的特征码,则将匹配成功的特征码对应的细粒度行为作为目标程序的标签,并根据目标程序的标签判断该目标程序是否为RAT程序;所述的各个细粒度行为的特征码通过如下步骤获取:
通过RAT程序运行不同细粒度行为,获取各个细粒度行为运行时的动态数据作为训练数据并记录各条动态数据对应的细粒度行为;
对所述训练数据进行特征匹配以提取得到各细粒度行为的特征码。
所述的对训练数据进行特征匹配以提取得到各细粒度行为的特征码包括:按照各训练数据对应的细粒度行为的种类,针对每一类训练数据分别进行比对提取相同序列,并根据提取得到的相同序列形成该类训练数据对应细粒度行为的特征码。
本实施例中采用Alignment算法对每一类训练数据分别进行比对提取相同序列,具体包括:
采用Local Alignment将该类训练数据进行两两比对提取得到第一版特征;
针对所述的第一版特征进行至少一次Global Alignment,并以最后一次GlobalAlignment得到的结果作为最终版特征,并作为对应的相同序列。
具体进行Global Alignment的次数根据应用需求设定,若进行多次 GlobalAlignment(两次及两次以上)时,后一次Global Alignment在其上一次Global Alignment得到的结果上进行的。
考虑到实际情况,本实施例中仅进行一次Global Alignment,具体如下:采用Global Alignment将对应有共同训练数据的第一版特征码进行两两比对得到第二版特征作为对应的相同序列。
作为一种优选实现方式,所述获取各个细粒度行为的特征码还包括运行不同安全程序,并获取各个安全程序运行时的动态数据作为修正数据;
所述针对每一类训练数据分别进行比对提取相同序列,并根据提取得到的相同序列形成该类训练数据对应细粒度行为的特征码还包括:
将所有修正数据于提取得到的相同序列进行比对,保留不属于修正数据的相同序列作为该类训练数据对应细粒度行为的特征码。
作为一种优选实现方式,所述获取的动态数据时还包括对获取的动态数据进行预处理,预处理包括如下步骤:
统一动态数据的后缀类型进行格式统一;
针对连续出现多次的动态数据,删除重复,仅保留一条。
本实施例中根据目标程序的标签判断该目标程序是否为RAT程序包括:根据目标程序的标签数量或种类判断该目标程序是否为RAT程序。
基于标签数量判断时:标签数量越多,则为RAT程序的概率越大。设定一个数量阈值,若达到该数量阈值,则判断为RAT程序。该数量阈值可根据应用需求设定。
标签数量可以通过如下方式获取:通过特征码匹配得到的行为标签可以为各个细粒度行为对应的数量统计数据。若在进行特征码匹配时,仅用标签进行标记,则在根据标签数量判断是否为RAT程序时,首先需要统计标签数量。
基于标签种类判断时:标签种类越多,则为RAT程序的概率越大。设定一个种类阈值,若标签种类达到该种类阈值,则判断为RAT程序。
基于标签数量或种类判断该目标程序是否为RAT程序,实际上是以能够匹配上细粒度行为特征码的行为作为潜在恶意行为,相应的,所有潜在恶意行的集合即为潜在恶意行为集。针对目标程序,其包含的潜在恶意行为越多,则为RAT程序的可能性越高。
潜在恶意行为有很多种,如包括截屏,录音,键盘记录,上传文件并执行,远程Shell等,后续可以加入更多细粒度行为。
当潜在恶意行为集中潜在恶意行为种类的较少(如5-6个以下可以认为是种类较少)时,仅根据标签种类判断可靠性不高。进一步,作为一种优选实现方式,本实施例中引入扣分行为作为辅助判断,若存在扣分行为能够进一步提高为RAT行为的可能性。首先确定为RAT程序的可能性等级,然后再依据可能性等级确定是否为RAT程序。确定为RAT程序的可能性等级的判断规则如图1所示:
如果潜在恶意行为的种类大于等于3,那么判断为RAT的可能性为高;
如果潜在恶意行为的种类等于2,并且存在扣分行为,那么判断为RAT 的可能性为高;
如果潜在恶意行为的种类等于2,并且不存在扣分行为,并且匹配上的潜在恶意行为包含了键盘记录,那么判断为RAT的可能性为高;
如果潜在恶意行为的种类等于2,并且不存在扣分行为,并且匹配上的潜在恶意行为不包含键盘记录,那么判断为RAT的可能性为中;
如果潜在恶意行为的种类等于1,并且存在扣分行为,那么判断为RAT 的可能性为中;
如果潜在恶意行为的种类等于1,并且不存在扣分行为,并且匹配上的潜在恶意行为包含键盘记录,那么判断为RAT的可能性为中;
如果潜在恶意行为的种类等于1,并且不存在扣分行为,并且匹配上的潜在恶意行为不包含键盘记录,那么判断为RAT的可能性为低;
如果潜在恶意行为的种类等于0,那么判断为RAT的可能性为极低。
该优选实现方式中,根据首先确定可能性的等级,进一步确定是否为 RAT程序,这样能够增大判断是否为RAT的自由度。本实施例中将为RAT 程序的可能性等级由高至低划分为高、中、低、极低四个等级,通常确定可能性等级高为RAT程序,也可以根据需要设定可能性等级达到中即可判断为RAT程序。
需要说明的是,上述判断规则仅为一种实现方式,实际上本发明的引入扣分行为作为判断的判断规则可根据实际应用需求设定或调整。
进一步说明,还可以将标签数量和种类结合起来作为判断是否为RAT 程序的依据;当然,作为另一种优选实现方式,在此基础上,还可以进一步引入扣分行为进行辅助判断。
上述的扣分行为指具有持久化行为,表示程序为了能够在电脑重启后还能启动,需要执行一些持久化的行为。持久化行为的种类可以根据需要指定,并可进行删减或增加。采用现有的持久化行为检测工具即可检测到目前程序中的扣分行为,本实施例中可以使用微软官方提供的AutoRuns 工具检测,具体过程不进行详细阐述。
下面将以具体实施案例对本发明的最优实现方案进行说明。
如图2所示,一种基于动态行为的细粒度RAT程序检测方法包括如下步骤:
S1:收集训练数据和修正数据。
运行若干个不同的RAT程序,获取各个RAT程序运行不同细粒度行为时的动态数据作为训练数据,并记录各个训练数据的对应的细粒度行为;运行若干个不同的合法程序,并获取各个合法程序运行时的动态数据。
本实施例中动态数据指的是system call(简称为syscall),syscall是应用程序与操作系统进行交互的接口。比如NtUserGetKeyState和 NtUserGetKeyboardState这两个syscall可以被用来实现键盘记录, NtGDIStretchBlt和NtGDIBitBlt可以用来实现截屏。每条动态数据是由大量syscall组成。
本实施例中一共收集了40个RAT程序,其中每个RAT程序平均有5 个细粒度行为(包括键盘记录、截屏、录音、远程Shell、上传文件并执行),因此一共会产生200个具有label的样本(即训练数据)。
同时,选取了32个主流的合法应用程序(即合法程序),可以分为8 个类别(每个类别4个应用):(1)浏览器(2)文本编辑器(3)即时通讯工具(4)语音和视频软件(5)命令行工具(6)图像处理工具(7)文件下载工具(8)Windows系统自带的系统管理工具。
本实施例中收集训练数据和修正数据的结果具体如表1所示。
表1
本实施例中收集训练数据和修正数据的具体操作如下:
S1-1:收集RAT程序的细粒度行为的动态数据。
一个RAT程序可以分为控制端程序和被控制端程序,被控制端程序安装在受害者的机器上,控制端程序安装在攻击者的机器上,它们之间通过网络连接来相互通信。控制端会通过网络向被控制端发送命令,被控制端接收到命令后,根据命令的格式,执行相应的行为(截屏、录音、键盘记录等)。
在收集动态数据前,需要预先在被检测的主机(即受害者的机器)上安装数据收集器。当要收集某个RAT程序的细粒度行为的数据时,就启动数据收集器,并通过控制端向被控制端发送某个细粒度行为的命令,这样在被控制端执行相应行为的时候,这个细粒度行为的动态数据就记录下来了,并且为这个动态数据打上相应的行为标签,比如截屏、录音等。
对每一个RAT程序的每个细粒度行为都重复以上的操作,就获得了关于多个细粒度行为的大量动态数据,每个动态数据都会带有相应的行为标签。
S1-2:收集合法程序的动态行为。
首先,挑选大量常见的合法程序,包括Firefox浏览器,Chrome浏览器,QQ,Word,Powerpoint,Excel,记事本,网易云音乐,Teamviewer 等等。接下来,打开数据收集器,运行一个合法程序,并执行一些常用的行为,该合法程序的动态行为数据就被收集了下来。最终,重复以上的步骤,能够获得多个合法程序的动态数据。
S2:对收集到的训练数据和修正数据进行预处理。
对步骤S1收集的所有动态数据(包括训练数据和修正数据)进行预处理,去除掉一些噪音,以及统一数据的格式。
S2-1:统一数据格式。
在动态数据中,存在很多文件信息,而这些信息往往不具有统一的格式。比如说两个可执行文件的名字C:\Test\a.exe和D:\b.exe,对于训练算法来说,这个两个文件的名字和路径是没有意义的,只有exe这个后缀是有意义的,因此会将这一类的数据都替换成@Exe,统一格式。
本实施例中根据动态数据的文件信息(后缀)统一格式,具体规则如下:
后缀exe,msi,vbs的动态数据的文件信息统一为@Exe;
后缀eot,fon,ttc,ttf的动态数据的文件信息统一为@Font;
后缀bmp,gif,ico,png,jpg的动态数据的文件信息统一为 @Image;
后缀wav,wma,wmdb,wmv,wpl的动态数据的文件信息统一为 @Media;
其余后缀的动态数据的文件信息统一为@Data。
需要说明的是,动态数据的文件信息不仅仅包括以上列举出的种类,进一步,统一格式的规则可以根据应用需求进行调整,本发明并不局限于以上规则。
S2-2:去除连续重复的片段。
在程序代码中通常会出现一些循环语句,对应到动态数据上,就体现为某一动态数据连续且重复的出现。比如一个键盘记录的软件,它会不断地监听哪些按键被按下,这就会在几分钟内产生上万条重复的数据,而这些动态数据需要去除。设定的删除规则是:如果某个动态数据连续出现了 2次,那么就将其中一个删除。
S3:提取各个细粒度行为的特征码。
通常一个细粒度行为(称之为A)的多个动态数据,只有很小的一部分跟细粒度行为A是有关系的,称之该部分为核心片段;且这些核心片段存在于多个动态数据中。因此:通过算法自动将这些核心片段提取出来,当作这个细粒度行为的特征码。
通过提取特征码从多个动态数据(都属于同一个行为标签)中,提取出一个细粒度行为的特征。
由于动态数据以Syscall序列的形式表示,因此问题转换为如何从多个动态数据中提取出共同的序列(即Syscall序列)。提出了使用生物信息学中的Alignment算法来提取核心片段。Alignment算法通常用在生物学中,用来识别不同物种基因上的相似性。基因同样也是以序列的形式表示,这一点和动态数据非常相似。Alignment算法可以分为LocalAlignment和 Global Alignment算法,如果两条序列,只有小部分是相似的,那么使用Local Alignment会更适合,它能够从其中挑选出这一小部分片段。如果两条序列,大部分都是相同,只有小部分不同,那么使用Global Alignment 是更合适的,它能够将小部分的噪音自动去除。
如图3所示,本实施例中通过如下步骤提取细粒度行为x的特征码:
S3-1:针对细粒度行为x的m个动态数据,分别为细粒度行为x的动态数据1,……动态数据m。对该m个动态数据两两进行Local Alignment,得到n个第一版的特征,分别为第一版特征1、第一版特征2,……,第一版特征n,并记录各个第一版特征的来源。一共有m个数据,由于两两进行Local Alignment能得到一个第一版特征,因此n=(m*(m-1))/2。并且为每个第一版特征添加上一个标记,用来标识第一版数据来源于哪里,这个标记能够表示由产生这个第一版特征的两个动态数据的名字。
需要说明的是,Alignment算法中,在进行Local Alignment前会通过比对确定两条相似度较高的一个区间范围,然后在确定的相似度区间范围内进行Local Alignment,本实施例中不详细阐述。
以表2所示两个RAT程序(Albertino RAT程序2.2和XRAT程序2.0) 的截屏行为的部分动态数据(已经过S2预处理)进行Local Alignment后的结果。Albertino RAT程序2.2和XRAT程序2.0均具有多个片段(即 Syscall);根据各个片段在原始动态数据(即预处理前)中出现位置,比如表中的第一行,左边这一列的数字1表示NtAllocateVirtualMemory出现在Albertino RAT程序2.2的动态数据的序号为1,即为Albertino RAT程序2.2的动态数据中的第一个Syscall。
对于表2中的每一行,如果左边等于右边,代表这一行的两个Syscall 能够匹配上,如表2中的第一行,Albertino RAT程序2.2的第1个Syscall 能够匹配上XRAT程序2.0的第120个Syscall。如果左边是空白,右边不是空白,代表左边的动态数据缺失了某个Syscall,如表中的第二行。如果左边不是空白,右边是空白,代表右边的动态数据缺失了某个Syscall,如表中的第六行。如果左边和右边都不是空白,并且左右不相等,代表能左右数据不匹配的情况,如表2中的第三行。
最终,通过Local Alignment进行比对后,选取Alignment结果中左右相同的行按照数字从小到大的顺序排列(一共有17条),作为一条第一版特征。由于这个第一版特征由Albertino 2.2和XRAT 2.0这两个trace产生,因此为这个第一版特征添加上一个标记:Albertino RAT 2.2&XRAT 2.0。
如表2所示,本实施中得到的第一版特征为:
NtAllocateVirtualMemory
NtSetInformationThread
NtAllocateVirtualMemory
NtCallbackReturn
NtUserGetDC
NtGdiGetDeviceCaps
NtAllocateVirtualMemory
NtUserGetDC
NtGdiGetDCObject
NtGdiCreateCompatibleDC
NtGdiCreateDIBSection
NtAllocateVirtualMemory
NtGdiExtGetObjectW
NtGdiSelectBitmap
NtGdiBitBlt
NtGdiFlush
NtFreeVirtualMemory。
表2
S3-2:对第一版特征进行两两Global Alignment,具体操作如下:
从细粒度行为x的n个第一版特征随机挑选两个第一版特征,如果这两个特征的标记存在共同的数据来源(即对应有相同的训练数据),那么对这两个第一版特征进行GlobalAlignment,得到一个第二版特征,并且为这个特征添加上一个标记,用来标识第二版数据来源于哪里,这个标记由两个第一版特征的标记合并得到。最终得到p个第二版特征,在这里 p=(m*(m-1)*(m-2))/2。
表3
对n个第一版特征进行Global Alignment,如表3所示,选取的第1 条特征是由Albertino RAT 2.2和XRAT程序2.2在步骤S3-1中进行Local Alignment生成的第一版特征,第2条特征则是Albertino RAT 2.2和 imminentMonitor 3.9在S3-1中进行LocalAlignment生成的第一版特征。由于这两条第一版特征的标记存在共同来源Albertino RAT2.2,因此对这两个特征进行Global Alignment,选取Alignment结果中左右相同的行按照数字从小到大的顺序排列(一共有13条),作为一条第二版特征,该13 条第二版特征分别如下:
NtUserGetDC
NtGdiGetDeviceCaps
NtAllocateVirtualMemory
NtUserGetDC
NtGdiGetDCObject
NtGdiCreateCompatibleDC
NtGdiCreateDIBSection
NtAllocateVirtualMemory
NtGdiExtGetObjectW
NtGdiSelectBitmap
NtGdiBitBlt
NtGdiFlush
NtFreeVirtualMemory。
S3-3:过滤修正。利用训练数据得到的相同序列(此处理解为第二版特征)往往仍然拥有较多杂质,通过过滤修正能够提高得到的特征码的纯度,提高检测的准确率。具体过滤修正方法如下:
将p个第二版特征和多个合法程序的动态数据进行匹配,如果某条第二版特征匹配上,则将这一条第二版特征去除。最终保留q个第二版特征,分别为最终版特征1、最终版特征2,……最终版特征q,该q个最终版特征作为最终的相同序列,也即为细粒度行为x的特征码。
S4:收集目标程序运行时的动态数据作为待检数据。
实施前,在用户电脑上部署一个数据收集器,负责实时收集用户电脑上目标程序的动态数据,然后进行如步骤S2中的预处理操作即得到待检数据;
S5:将待检数据与特征码进行匹配确定目标程序的行为标签,并根据行为标签打分判断是否为RAT程序。
将预处理后的动态数据与各个细粒度行为的特征码进行比对,如果目标程序匹配上某个细粒度行为的特征码,就认为该目标程序做了该细粒度行为,为目标程序打上该细粒度行为的行为标签。根据目标程序的行为标签,综合判断目标程序是否为恶意的(RAT程序)。
综合判断目标程序是否为恶意的(RAT程序)时首先采用图1所示的判断规则确定为RAT程序的可能性等级,然后根据可能性等级确定是否为RAT程序。
本实施例的标签种类如下:潜在恶意行为集={截屏,录音,键盘记录,上传文件并执行,远程Shell},扣分行为=持久化行为。
本实施例持久化行为为开机自启动,通过Autoruns工具检测到得到。
上面红色背景部分改为假设有一个RAT程序被安装在了目标电脑(装有数据收集器)上,首先攻击者执行了截屏的操作,观察目标的电脑是否有价值,然后执行键盘记录操作,来偷取目标的账户和密码,等待一段时间后,攻击者执行远程Shell,将目标机器的重要信息以及键盘记录下来的账户密码传输回攻击者机器。
数据收集器会采集到这个RAT程序的动态数据(数据量非常大,有数十万条Syscall),进行预处理后与各个细粒度行为的特征码进行匹配,最终会匹配上截屏操作的特征码,键盘记录的特征码,以及远程Shell的特征码。
此外,在动态数据中,还发现了关于注册表的操作,改程序将一个 EXE文件加入到了注册表 HKEY_LOCAL_MACHINE\SOFTWARE\WOW6432Node\Microsoft\Windo ws\CurrentVersion\Run中,这使得这个EXE能够开机自启动。
即该程序包含了一个扣分行为(持久化行为),并且包含了三个潜在恶意行为(截屏,键盘记录,以及远程Shell),因此判断为恶意软件,且该目标程序执行的细粒度行为包括截屏,键盘记录,以及远程Shell,可确定为RAT的可能性高,即可确定该程序为RAT程序。
如图4所示,本实施例的基于动态行为的细粒度RAT程序检测系统,其特征在于,包括:
待检数据采集单元,用于获取目标程序运行时的动态数据作为待检数据;
数据匹配单元,用于并将所述的待检数据与各个细粒度行为的特征码进行匹配,若存在匹配成功的特征码,则将匹配成功的特征码对应的细粒度行为作为目标程序的标签;
结果输出单元,并根据目标程序的标签判断该目标程序是否为RAT 程序;
训练单元,用于获取各个细粒度行为的特征码,包括:
训练数据采集模块,用于通过RAT程序运行不同细粒度行为,获取各个细粒度行为运行时的动态数据作为训练数据并记录各条动态数据对应的细粒度行为;
特征码提取模块,用于对所述训练数据进行特征提取得到各细粒度行为的特征码。
作为一种优选实施方式,所述训练单元还包括修正数据采集模块,用于运行合法程度,获取各个合法程序运行时的动态数据作为修正数据。
本实施例的特征码提取模块按照各训练数据对应的细粒度行为的种类,针对每一类训练数据分别进行比对提取相同序列,并根据提取得到的相同序列形成该类训练数据对应细粒度行为的特征码。
本实施例的基于动态行为的细粒度RAT程序检测系统中,待检数据采集单元和训练数据采集模块实际上就是数据收集器,待检数据采集单元安装在待监测主机上,训练数据采集模块可以安装在任何一主机上。
本实施例还提供了一种APT攻击检测方法,首先采用上述RAT程序检测方法检测目标程序是否为RAT程序,并在检测结果为RAT程序进一步检测该目标程序是否为未知RAT程序,若为未知RAT程序,则认为该 RAT程序为APT攻击。
本实施例APT攻击检测方法中基于静态分析方法检测该目标程序是否为未知RAT程序,具体实现时首先获取目标程序的静态特征,并将获取的静态特征与目前所有已知的RAT程序的静态特征进行比对,若能够匹配则认为目标程序是已知RAT程序,否则,认为该目标程序为未知的 RAT程序。该方法为成熟的静态分析检测方法,本实施例中不进行详细赘述。
需要说明的是,本发明的APT攻击检测方法在一定程度仅能够判断出未知RAT程序为APT攻击的可能性较大,已知RAT程序为APT的可能性较低。
以上公开的仅为本发明的具体实施例,但是本发明并非局限于此,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。显然这些改动和变型均应属于本发明要求的保护范围保护内。此外,尽管本说明书中使用了一些特定的术语,但这些术语只是为了方便说明,并不对本发明构成任何特殊限制。

Claims (10)

1.一种基于动态行为的细粒度RAT程序检测方法,其特征在于,获取目标程序运行时的动态数据作为待检数据,并将所述的待检数据与各个细粒度行为的特征码进行匹配,若存在匹配成功的特征码,则将匹配成功的特征码对应的细粒度行为作为目标程序的标签,并根据目标程序的标签判断该目标程序是否为RAT程序;所述的各个细粒度行为的特征码通过如下步骤获取:
通过RAT程序运行不同细粒度行为,获取各个细粒度行为运行时的动态数据作为训练数据并记录各条动态数据对应的细粒度行为;
对所述训练数据进行特征匹配以提取各细粒度行为的特征码。
2.如权利要求1所述的基于动态行为的细粒度RAT程序检测方法,其特征在于,所述对训练数据进行特征匹配以提取各细粒度行为的特征码包括:针对每一个细粒度行为对应的训练数据分别进行比对提取相同序列,并根据提取得到的相同序列形成该细粒度行为的特征码。
3.如权利要求2所述的基于动态行为的细粒度RAT程序检测方法,其特征在于,采用Alignment算法对每一个细粒度行为对应的训练数据分别进行比对提取相同序列。
4.如权利要求3所述的基于动态行为的细粒度RAT程序检测方法,其特征在于,采用Alignment算法对每个细粒度行为对应的训练数据分别进行比对提取相同序列包括:
采用Local Alignment将该细粒度行为对应的训练数据进行两两比对提取得到第一版特征,并记录各个第一版特征所对应的训练数据;
针对所述的第一版特征进行至少一次Global Alignment,并以最后一次GlobalAlignment得到的结果作为最终版特征,并作为对应的相同序列。
5.如权利要求2所述的基于动态行为的细粒度RAT程序检测方法,其特征在于,所述获取各个细粒度行为的特征码还包括运行不同安全程序,并获取各个安全程序运行时的动态数据作为修正数据;
所述针对每一个细粒度行为对应的训练数据分别进行比对提取相同序列,并根据提取得到的相同序列形成该细粒度行为的特征码还包括:
将所有修正数据与提取得到的相同序列进行比对,保留不属于修正数据的相同序列作为该细粒度行为的特征码。
6.如权利要求1~5中任意一项所述的基于动态行为的细粒度RAT程序检测方法,其特征在于,所述获取动态数据时还包括对获取的动态数据进行预处理。
7.如权利要求6所述的基于动态行为的细粒度RAT程序检测方法,其特征在于,所述预处理包括如下步骤:
统一动态数据的后缀类型进行格式统一;
针对连续出现多次的动态数据,删除重复,仅保留一条。
8.如权利要求1~5中任意一项所述的基于动态行为的细粒度RAT程序检测方法,其特征在于,所述根据目标程序的标签判断该目标程序是否为RAT程序包括根据目标程序的标签数量或种类判断该目标程序是否为RAT程序。
9.一种基于动态行为的细粒度RAT程序检测系统,其特征在于,包括:
待检数据采集单元,用于获取目标程序运行时的动态数据作为待检数据;
数据匹配单元,用于将所述的待检数据与各个细粒度行为的特征码进行匹配,若存在匹配成功的特征码,则将匹配成功的特征码对应的细粒度行为作为目标程序的标签;
结果输出单元,并根据目标程序的标签判断该目标程序是否为RAT程序;
训练单元,用于获取各个细粒度行为的特征码,包括:
训练数据采集模块,用于通过RAT程序运行不同细粒度行为,获取各个细粒度行为运行时的动态数据作为训练数据并记录各条动态数据对应的细粒度行为;
特征码提取模块,用于对所述训练数据进行特征提取得到各细粒度行为的特征码。
10.一种APT攻击检测方法,其特征在于,采用权利要求1~8中任意一项所述的RAT程序检测方法检测目标程序是否为RAT程序,并在检测结果为RAT程序时进一步检测该目标程序是否为未知RAT程序,若为RAT程序,则认为该RAT程序为APT攻击。
CN201810131880.4A 2018-02-09 2018-02-09 基于动态行为的细粒度rat程序检测方法、系统及相应的apt攻击检测方法 Active CN108256329B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810131880.4A CN108256329B (zh) 2018-02-09 2018-02-09 基于动态行为的细粒度rat程序检测方法、系统及相应的apt攻击检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810131880.4A CN108256329B (zh) 2018-02-09 2018-02-09 基于动态行为的细粒度rat程序检测方法、系统及相应的apt攻击检测方法

Publications (2)

Publication Number Publication Date
CN108256329A true CN108256329A (zh) 2018-07-06
CN108256329B CN108256329B (zh) 2022-06-17

Family

ID=62744051

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810131880.4A Active CN108256329B (zh) 2018-02-09 2018-02-09 基于动态行为的细粒度rat程序检测方法、系统及相应的apt攻击检测方法

Country Status (1)

Country Link
CN (1) CN108256329B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110414228A (zh) * 2018-12-20 2019-11-05 腾讯科技(深圳)有限公司 计算机病毒的检测方法、装置、存储介质和计算机设备
CN110837640A (zh) * 2019-11-08 2020-02-25 深信服科技股份有限公司 恶意文件的查杀方法、查杀设备、存储介质及装置
CN111797394A (zh) * 2020-06-24 2020-10-20 广州大学 基于stacking集成的APT组织识别方法、系统及存储介质
CN112671741A (zh) * 2020-12-16 2021-04-16 平安普惠企业管理有限公司 一种网络防护的方法、装置、终端及存储介质
RU2769651C2 (ru) * 2020-08-24 2022-04-04 Акционерное общество "Лаборатория Касперского" Способ формирования сигнатуры для обнаружения неправомерного доступа к компьютеру, получаемого с помощью средств удаленного администрирования, и реализующая его система

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101183414A (zh) * 2007-12-07 2008-05-21 白杰 一种程序检测的方法、装置及程序分析的方法
CN103136471A (zh) * 2011-11-25 2013-06-05 中国科学院软件研究所 一种恶意Android应用程序检测方法和系统
CN106682515A (zh) * 2016-12-15 2017-05-17 中国人民解放军国防科学技术大学 恶意代码分析中行为能力的度量方法
CN106997367A (zh) * 2016-01-26 2017-08-01 华为技术有限公司 程序文件的分类方法、分类装置和分类系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101183414A (zh) * 2007-12-07 2008-05-21 白杰 一种程序检测的方法、装置及程序分析的方法
CN103136471A (zh) * 2011-11-25 2013-06-05 中国科学院软件研究所 一种恶意Android应用程序检测方法和系统
CN106997367A (zh) * 2016-01-26 2017-08-01 华为技术有限公司 程序文件的分类方法、分类装置和分类系统
CN106682515A (zh) * 2016-12-15 2017-05-17 中国人民解放军国防科学技术大学 恶意代码分析中行为能力的度量方法

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110414228A (zh) * 2018-12-20 2019-11-05 腾讯科技(深圳)有限公司 计算机病毒的检测方法、装置、存储介质和计算机设备
CN110414228B (zh) * 2018-12-20 2023-01-03 腾讯科技(深圳)有限公司 计算机病毒的检测方法、装置、存储介质和计算机设备
CN110837640A (zh) * 2019-11-08 2020-02-25 深信服科技股份有限公司 恶意文件的查杀方法、查杀设备、存储介质及装置
CN110837640B (zh) * 2019-11-08 2022-02-22 深信服科技股份有限公司 恶意文件的查杀方法、查杀设备、存储介质及装置
CN111797394A (zh) * 2020-06-24 2020-10-20 广州大学 基于stacking集成的APT组织识别方法、系统及存储介质
CN111797394B (zh) * 2020-06-24 2021-06-08 广州大学 基于stacking集成的APT组织识别方法、系统及存储介质
RU2769651C2 (ru) * 2020-08-24 2022-04-04 Акционерное общество "Лаборатория Касперского" Способ формирования сигнатуры для обнаружения неправомерного доступа к компьютеру, получаемого с помощью средств удаленного администрирования, и реализующая его система
CN112671741A (zh) * 2020-12-16 2021-04-16 平安普惠企业管理有限公司 一种网络防护的方法、装置、终端及存储介质
CN112671741B (zh) * 2020-12-16 2022-10-18 平安普惠企业管理有限公司 一种网络防护的方法、装置、终端及存储介质

Also Published As

Publication number Publication date
CN108256329B (zh) 2022-06-17

Similar Documents

Publication Publication Date Title
CN108256329A (zh) 基于动态行为的细粒度rat程序检测方法、系统及相应的apt攻击检测方法
Aslan et al. A new malware classification framework based on deep learning algorithms
Sun et al. Detecting anomalous user behavior using an extended isolation forest algorithm: an enterprise case study
CN103839003B (zh) 恶意文件检测方法及装置
CN108920954B (zh) 一种恶意代码自动化检测平台及方法
CN112866023B (zh) 网络检测、模型训练方法、装置、设备及存储介质
Ma et al. Active semi-supervised approach for checking app behavior against its description
Agrawal et al. Neural sequential malware detection with parameters
Zhu et al. Android malware detection based on multi-head squeeze-and-excitation residual network
Qin et al. API call based ransomware dynamic detection approach using textCNN
CN107688743A (zh) 一种恶意程序的检测分析方法及系统
CN110704841A (zh) 一种基于卷积神经网络的大规模安卓恶意应用检测系统及方法
Shrivastava et al. Forensic computing models: Technical overview
Paranthaman et al. Malware collection and analysis
Carney et al. The Trojan made me do it: A first step in statistical based computer forensics event reconstruction
Dubey et al. Digital forensics techniques and trends: a review.
Memon et al. Harvesting covert networks: a case study of the iMiner database
KR20130074224A (ko) 악성코드의 행동 패턴 수집장치 및 방법
Sali et al. Ram forensics: The analysis and extraction of malicious processes from memory image using gui based memory forensic toolkit
Chen et al. A survey on threat hunting: Approaches and applications
Chen Contextual binding and intelligent targeting
Zhang Application of Artificial Intelligence Technology in Computer Network Security.
Pierdomenico Applied Feature Extraction for Novel Malicious Software Identification Using Convolutional Neural Networks
Jemal et al. Detection of Ransomware Attack Using Deep Learning
Rao et al. Digital forensics and digital investigation to form a suspension bridge flanked by law enforcement, prosecution, and examination of computer frauds and cybercrime

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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20190621

Address after: Room 431, Building 7, No. 5, No. 3 Road, Genshan Branch, Jianggan District, Hangzhou City, Zhejiang Province, 310004

Applicant after: Hangzhou Yidun Information Technology Co., Ltd.

Address before: Room 411, Building 7, No. 5, No. 3 Road, Genshan Branch, Jianggan District, Hangzhou City, Zhejiang Province, 310004

Applicant before: Hangzhou Qi shield Information Technology Co., Ltd.

CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Yang Runqing

Inventor after: Xiong Chunlin

Inventor after: Li Zhenyuan

Inventor after: Song Zhe

Inventor before: Yang Runqing

Inventor before: Xiong Chunlin

Inventor before: Li Zhenyuan

Inventor before: Chen Yan

Inventor before: Song Zhe

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20210804

Address after: 310000 room 431, building 7, No. 5, Genshan Zhisan Road, Jianggan District, Hangzhou City, Zhejiang Province

Applicant after: Hangzhou Yidun Information Technology Co.,Ltd.

Applicant after: HANGZHOU QIDUN INFORMATION TECHNOLOGY Co.,Ltd.

Address before: Room 431, Building 7, No. 5, No. 3 Road, Genshan Branch, Jianggan District, Hangzhou City, Zhejiang Province, 310004

Applicant before: Hangzhou Yidun Information Technology Co.,Ltd.

GR01 Patent grant
GR01 Patent grant