CN104850780A - 一种高级持续性威胁攻击的判别方法 - Google Patents
一种高级持续性威胁攻击的判别方法 Download PDFInfo
- Publication number
- CN104850780A CN104850780A CN201510203698.1A CN201510203698A CN104850780A CN 104850780 A CN104850780 A CN 104850780A CN 201510203698 A CN201510203698 A CN 201510203698A CN 104850780 A CN104850780 A CN 104850780A
- Authority
- CN
- China
- Prior art keywords
- program
- terminal
- api calls
- system api
- discrimination
- 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.)
- Pending
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明涉及一种高级持续性威胁攻击的判别方法,步骤如下:采集终端样本程序系统API调用序列;通过MapReduce模块提取其API调用短序列,然后计算短序列的信息增益,筛选出信息增益大的程序行为特征;再次扫描该系统API调用序列,得到终端样本程序的行为特征;统计机器学习模型模块使用每个样本程序的行为特征作为输入,对其进行训练,直至其对训练样本程序分类正确率达到90%以上时,确定模型参数,将其作为APT攻击判别器;采集目标终端程序的系统调用序列;对目标程序,采集其API调用序列、提取其行为特征后,便可判别其是否存在攻击行为。本发明对APT攻击的检测能力强,缩短程序行为特征的提取时间。
Description
技术领域
本发明涉及信息安全技术领域,尤其涉及一种高级持续性威胁攻击的判别方法。
背景技术
高级持续性威胁(Advanced Persistent Threat)攻击是黑客以窃取核心资料为目的,针对客户所发动的网络攻击和侵袭行为。从攻击渠道上看,APT攻击渠道多样。目前被曝光的知名APT事件中,社交攻击、0day漏洞利用、物理摆渡等方式层出不穷,而传统的检测往往只注重边界防御,系统边界一旦被绕过,后续的攻击步骤实施的难度将大大降低。从行为上看,APT攻击行为特征难以提取。APT普遍采用0day漏洞获取权限,通过未知木马进行远程控制,而传统基于特征匹配的检测设备总是要先捕获恶意代码样本,才能提取特征并基于特征进行攻击识别,这就存在先天的滞后性。为了躲避传统检测设备,APT更加注重动态行为和静态文件的隐蔽性。例如通过隐蔽通道、加密通道避免网络行为被检测,或者通过伪造合法签名的方式避免恶意代码文件本身被识别,这就给传统基于签名的检测带来很大困难。从攻击时间上看,APT攻击的持续时间长。APT攻击分为多个步骤,从最初的信息搜集,到信息窃取并外传往往要经历几个月甚至更长的时间。而传统的检测方式是基于单个时间点的实时检测,难以对跨度如此长的攻击进行有效跟踪。正是APT攻击所体现出的上述特点,使得传统以实时检测、实时阻断为主体的防御方式难以有效发挥作用。
针对APT攻击,众安全厂商给出了多种解决方案。“传统特征匹配+虚拟执行引擎”方案,通过沙箱模拟运行环境,把未知程序运行一遍,从程序的行为判断其合法性。“公有云+白名单”方案,通过在云上部署黑白名单库,对安装在用户终端上的终端软件提供注册服务,凡在白名单库中未注册过的文件均被禁止访问。“私有云+黑白名单”方案,通过维护黑白名单,对文件是否存在恶意行为进行判断,并与安全网关进行联动,在不影响转发性能的前提下增强安全网关的检测能力。在上述方案中,“传统特征匹配”、“黑白名单”技术都不够灵活,根据事先定义的特征或名单,不能有效得阻隔未知的APT攻击。另外,还有融合多个网络事件源、使用关联分析引擎进行APT攻击检测的方法。此方法的不足在于,APT攻击具有隐蔽性,网络的流量特征不明显,另外APT使用加密通道,阻碍了对数据包的深入分析。
针对以上APT攻击检测方案的不足之处,有方案提出以终端程序的API调用序列作为程序行为特征,建立程序行为规则库,并依据规则库对未知程序是否存在APT攻击进行判定。这种方法的优势在于它利用了APT攻击的行为特征较稳定的特点,即使攻击者使用加密通道绕过了安全边界检测并且使用加壳的病毒文件躲过了传统杀毒工具的检测,只要其动作行为暴露出固有的特点,就能被识别、发现。这种方法的不足在于规则库的灵活性不足,对未知的APT攻击,其检测能力非常有限,而且规则库的维护难度会随着规则数量的增加而攀升。
发明内容
本发明针对现有技术的不足,提出一种高级持续性威胁攻击的判别方法,该方法对APT攻击的检测能力强,识别APT攻击效果显著,扩大了可分析的终端程序系统调用序列的规模,缩短了程序行为特征的提取时间。
一种高级持续性威胁攻击的判别方法:
包括终端程序行为采集模块,用于采集每个终端样本程序的系统API调用序列;MapReduce模块,作为海量程序行为日志分析器;统计机器学习模型模块,作为APT攻击的判别器;其特征在于,包括如下步骤:
a.所述终端程序行为采集模块采集每个终端样本程序系统API调用序列;
b.所述MapReduce模块用于扫描每个终端样本程序的系统API调用序列,通过滑动窗口方式提取所述系统API调用序列的短序列,计算每个系统API调用短序列的信息增益,按照信息增益的大小排序,解析出终端样本程序的行为特征;
c.所述统计机器学习模型模块使用每个样本程序的行为特征作为输入,对统计机器学习模型模块进行训练,直至所述统计机器学习模型模块对训练样本程序分类错误率达到指定阈值;
d.完成以上步骤之后,便开始采集任意终端程序的系统API调用序列,对采集到的每个系统API调用序列进行扫描,查看其中是否存在步骤b筛选出的行为特征,如果扫描到的系统API调用序列存在步骤b筛选出的行为特征,生成对应的程序行为特征向量;将所述程序行为特征向量作为已训练好的APT攻击判别器的输入,便可判别目标终端程序是否存在攻击行为。
进一步的,所述的终端样本程序包括终端合法样本程序和终端攻击样本程序。
进一步的,一种高级持续性威胁攻击的判别方法所述的步骤a中,终端程序行为采集模块通过钩子程序采集所述系统API调用序列。
进一步的,一种高级持续性威胁攻击的判别方法所述的步骤b中,采用滑动窗口提取系统API调用序列的短序列时,是以线程为单位的,即从线程的第一个系统调用记录开始向后滑动,到线程的最后一个系统调用记录为止。
进一步的,一种高级持续性威胁攻击的判别方法所述的步骤b中,计算每个系统API调用序列的短序列信息增益时,采用了香农的信息熵算法。
进一步的,一种高级持续性威胁攻击的判别方法所述的步骤b中,通过Hadoop集群解析终端样本程序的行为特征。
进一步的,一种高级持续性威胁攻击的判别方法所述的步骤c中,统计机器学习模型模块采用支持向量机。
进一步的,一种高级持续性威胁攻击的判别方法所述的步骤c中,所述指定阀值设定为90%以上。
附图说明
图1是本发明的方法流程图。
具体实施方式
下面结合说明书附图来说明本发明的具体实施方式。
如图1所示,是本发明技术方案的方法流程图,从图中可见,本发明具体包括以下步骤:
步骤101:通过终端程序行为采集模块采集每个终端样本程序系统API调用序列;
步骤102:通过MapReduce模块,采用滑动窗口方式提取所述系统API调用序列的短序列;
步骤103:计算每个系统API调用短序列信息增益,筛选出信息增益值大的短序列作为程序行为特征;
步骤104:通过MapReduce模块再次扫描每个终端样本程序的系统API调用序列,得到终端样本程序的行为特征;
步骤105:统计机器学习模型模块使用每个样本程序的行为特征作为输入,对统计机器学习模型模块进行训练,直至所述统计机器学习模型模块对训练样本程序分类错误率达到90%,确定统计机器学习模型模块的参数;
步骤106:统计机器学习模型模块作为APT攻击判别器;
步骤107:完成以上步骤之后,便可以开始采集目标终端程序的系统调用序列了;
步骤108:对采集到的每个系统调用序列进行扫描,查看其中是否存在前述的程序行为特征短序列;
步骤109:将短序列作为已训练好的APT攻击判别器的输入;
步骤110:便可判别目标终端程序是否存在攻击行为了。
以上,通过例示说明了本发明的实施方式,但本发明的范围不限定于上述例示,在
权利要求所记载的范围内,可根据目的进行变更、变形。
Claims (8)
1.一种高级持续性威胁攻击的判别方法,其特征在于,包括终端程序行为采集模块,用于采集每个终端程序的系统API调用序列;MapReduce模块,作为海量程序行为日志分析器;统计机器学习模型模块,作为APT攻击的判别器;包括如下步骤:
a.所述终端程序行为采集模块采集每个终端样本程序系统API调用序列;
b.所述MapReduce模块用于扫描每个终端样本程序的系统API调用序列,通过滑动窗口方式提取所述系统API调用序列的短序列,计算每个系统API调用短序列的信息增益,按照信息增益的大小排序,解析出终端样本程序的行为特征;
c.所述统计机器学习模型模块使用每个样本程序的行为特征作为输入,对统计机器学习模型模块进行训练,直至所述统计机器学习模型模块对训练样本程序分类错误率达到指定阈值;
d.完成以上步骤之后,便开始采集目标终端程序的系统API调用序列,对采集到的每个系统API调用序列进行扫描,查看其中是否存在步骤b筛选出的行为特征,如果扫描到的系统API调用序列存在步骤b筛选出的行为特征,生成对应的程序行为特征向量;将所述程序行为特征向量作为已训练好的APT攻击判别器的输入,便可判别目标终端程序是否存在攻击行为。
2.根据权利要求1所述的高级持续性威胁攻击的判别方法,其特征在于,所述的终端样本程序包括终端合法样本程序和终端攻击样本程序。
3.根据权利要求1所述的高级持续性威胁攻击的判别方法,其特征在于所述的步骤a中,终端程序行为采集模块通过钩子程序采集所述系统API调用序列。
4.根据权利要求1所述的高级持续性威胁攻击的判别方法,其特征在于所述的步骤b中,采用滑动窗口提取系统API调用序列的短序列时,是以线程为单位的,即从线程的第一个系统调用记录开始向后滑动,到线程的最后一个系统调用记录为止。
5.根据权利要求1所述的高级持续性威胁攻击的判别方法,其特征在于所述的步骤b中,计算每个系统API调用序列的短序列信息增益时,采用了香农的信息熵算法。
6.根据权利要求1所述的高级持续性威胁攻击的判别方法,其特征在于所述的步骤b中,通过Hadoop集群解析终端样本程序的行为特征。
7.根据权利要求1所述的高级持续性威胁攻击的判别方法,其特征在于所述的步骤c中,统计机器学习模型模块采用支持向量机。
8.根据权利要求1所述的高级持续性威胁攻击的判别方法,其特征在于所述的步骤c中,所述指定阀值设定为90%以上。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510203698.1A CN104850780A (zh) | 2015-04-27 | 2015-04-27 | 一种高级持续性威胁攻击的判别方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510203698.1A CN104850780A (zh) | 2015-04-27 | 2015-04-27 | 一种高级持续性威胁攻击的判别方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104850780A true CN104850780A (zh) | 2015-08-19 |
Family
ID=53850419
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510203698.1A Pending CN104850780A (zh) | 2015-04-27 | 2015-04-27 | 一种高级持续性威胁攻击的判别方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104850780A (zh) |
Cited By (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105227548A (zh) * | 2015-09-14 | 2016-01-06 | 中国人民解放军国防科学技术大学 | 基于办公局域网稳态模型的异常流量筛选方法 |
CN105656886A (zh) * | 2015-12-29 | 2016-06-08 | 北京邮电大学 | 一种基于机器学习的网站攻击行为的检测方法及装置 |
CN105677572A (zh) * | 2016-02-04 | 2016-06-15 | 华中科技大学 | 基于自组织映射模型云软件性能异常错误诊断方法与系统 |
CN105871883A (zh) * | 2016-05-10 | 2016-08-17 | 上海交通大学 | 基于攻击行为分析的高级持续性威胁检测方法 |
CN107579944A (zh) * | 2016-07-05 | 2018-01-12 | 南京联成科技发展股份有限公司 | 基于人工智能和MapReduce安全攻击预测方法 |
CN107729748A (zh) * | 2017-09-20 | 2018-02-23 | 杭州安恒信息技术有限公司 | 一种描述文件在沙箱中运行轨迹图的方法 |
CN107786524A (zh) * | 2016-08-31 | 2018-03-09 | 中国电信股份有限公司 | 高级持续性威胁的检测方法和装置 |
CN108038374A (zh) * | 2017-12-26 | 2018-05-15 | 郑州云海信息技术有限公司 | 一种检测实时威胁的方法 |
CN108073809A (zh) * | 2017-12-25 | 2018-05-25 | 哈尔滨安天科技股份有限公司 | 基于异常组件关联的apt启发式检测方法及系统 |
CN108848102A (zh) * | 2018-07-02 | 2018-11-20 | 北京网藤科技有限公司 | 一种apt攻击预警系统及其预警方法 |
CN109492389A (zh) * | 2018-10-31 | 2019-03-19 | 施勇 | 一种机器学习自动化行为分析的行为威胁分析方法 |
CN110891048A (zh) * | 2015-12-24 | 2020-03-17 | 华为技术有限公司 | 一种检测终端安全状况方法、装置及系统 |
CN111708681A (zh) * | 2020-06-15 | 2020-09-25 | 北京优特捷信息技术有限公司 | 一种日志处理方法、装置、设备及存储介质 |
CN114584351A (zh) * | 2022-02-21 | 2022-06-03 | 北京恒安嘉新安全技术有限公司 | 一种监控方法、装置、电子设备以及存储介质 |
CN115208659A (zh) * | 2022-07-13 | 2022-10-18 | 杭州安恒信息技术股份有限公司 | 一种内网攻击的模拟检测方法、装置、设备及介质 |
WO2023166336A1 (en) * | 2022-03-04 | 2023-09-07 | Tutliani Puneet | System and method to prevent an attack on an application programming interface |
-
2015
- 2015-04-27 CN CN201510203698.1A patent/CN104850780A/zh active Pending
Non-Patent Citations (3)
Title |
---|
张波云: "《计算机病毒智能检测技术研究》", 《中国博士学位论文全文数据库-信息科技辑》 * |
牛冰茹等: "《一种改进的基于攻击树的木马分析与检测》", 《计算机应用与软件》 * |
王硕等: "《基于API序列分析和支持向量机的未知病毒检测》", 《计算机应用》 * |
Cited By (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105227548B (zh) * | 2015-09-14 | 2018-06-26 | 中国人民解放军国防科学技术大学 | 基于办公局域网稳态模型的异常流量筛选方法 |
CN105227548A (zh) * | 2015-09-14 | 2016-01-06 | 中国人民解放军国防科学技术大学 | 基于办公局域网稳态模型的异常流量筛选方法 |
CN110891048B (zh) * | 2015-12-24 | 2021-09-03 | 华为技术有限公司 | 一种检测终端安全状况方法、装置及系统 |
US11431676B2 (en) | 2015-12-24 | 2022-08-30 | Huawei Technologies Co., Ltd. | Method, apparatus, and system for detecting terminal security status |
CN110891048A (zh) * | 2015-12-24 | 2020-03-17 | 华为技术有限公司 | 一种检测终端安全状况方法、装置及系统 |
CN105656886A (zh) * | 2015-12-29 | 2016-06-08 | 北京邮电大学 | 一种基于机器学习的网站攻击行为的检测方法及装置 |
CN105677572B (zh) * | 2016-02-04 | 2018-09-04 | 华中科技大学 | 基于自组织映射模型云软件性能异常错误诊断方法与系统 |
CN105677572A (zh) * | 2016-02-04 | 2016-06-15 | 华中科技大学 | 基于自组织映射模型云软件性能异常错误诊断方法与系统 |
CN105871883B (zh) * | 2016-05-10 | 2019-10-08 | 上海交通大学 | 基于攻击行为分析的高级持续性威胁检测方法 |
CN105871883A (zh) * | 2016-05-10 | 2016-08-17 | 上海交通大学 | 基于攻击行为分析的高级持续性威胁检测方法 |
CN107579944B (zh) * | 2016-07-05 | 2020-08-11 | 南京联成科技发展股份有限公司 | 基于人工智能和MapReduce安全攻击预测方法 |
CN107579944A (zh) * | 2016-07-05 | 2018-01-12 | 南京联成科技发展股份有限公司 | 基于人工智能和MapReduce安全攻击预测方法 |
CN107786524A (zh) * | 2016-08-31 | 2018-03-09 | 中国电信股份有限公司 | 高级持续性威胁的检测方法和装置 |
CN107786524B (zh) * | 2016-08-31 | 2020-11-10 | 中国电信股份有限公司 | 高级持续性威胁的检测方法和装置 |
CN107729748A (zh) * | 2017-09-20 | 2018-02-23 | 杭州安恒信息技术有限公司 | 一种描述文件在沙箱中运行轨迹图的方法 |
CN107729748B (zh) * | 2017-09-20 | 2019-11-08 | 杭州安恒信息技术股份有限公司 | 一种描述文件在沙箱中运行轨迹图的方法 |
CN108073809A (zh) * | 2017-12-25 | 2018-05-25 | 哈尔滨安天科技股份有限公司 | 基于异常组件关联的apt启发式检测方法及系统 |
CN108038374A (zh) * | 2017-12-26 | 2018-05-15 | 郑州云海信息技术有限公司 | 一种检测实时威胁的方法 |
CN108848102A (zh) * | 2018-07-02 | 2018-11-20 | 北京网藤科技有限公司 | 一种apt攻击预警系统及其预警方法 |
CN108848102B (zh) * | 2018-07-02 | 2021-04-13 | 北京网藤科技有限公司 | 一种apt攻击预警系统及其预警方法 |
CN109492389A (zh) * | 2018-10-31 | 2019-03-19 | 施勇 | 一种机器学习自动化行为分析的行为威胁分析方法 |
CN109492389B (zh) * | 2018-10-31 | 2020-08-21 | 上海境领信息科技有限公司 | 一种机器学习自动化行为分析的行为威胁分析方法 |
CN111708681A (zh) * | 2020-06-15 | 2020-09-25 | 北京优特捷信息技术有限公司 | 一种日志处理方法、装置、设备及存储介质 |
CN114584351A (zh) * | 2022-02-21 | 2022-06-03 | 北京恒安嘉新安全技术有限公司 | 一种监控方法、装置、电子设备以及存储介质 |
WO2023166336A1 (en) * | 2022-03-04 | 2023-09-07 | Tutliani Puneet | System and method to prevent an attack on an application programming interface |
CN115208659A (zh) * | 2022-07-13 | 2022-10-18 | 杭州安恒信息技术股份有限公司 | 一种内网攻击的模拟检测方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104850780A (zh) | 一种高级持续性威胁攻击的判别方法 | |
US10721249B2 (en) | Method for web application layer attack detection and defense based on behavior characteristic matching and analysis | |
CN106790186B (zh) | 基于多源异常事件关联分析的多步攻击检测方法 | |
CN112738015B (zh) | 一种基于可解释卷积神经网络cnn与图检测的多步攻击检测方法 | |
CN108092948B (zh) | 一种网络攻击模式的识别方法和装置 | |
Bilge et al. | Disclosure: detecting botnet command and control servers through large-scale netflow analysis | |
US8683585B1 (en) | Using file reputations to identify malicious file sources in real time | |
EP3068095A2 (en) | Monitoring apparatus and method | |
CN108134761B (zh) | 一种apt检测系统及装置 | |
US20170061126A1 (en) | Process Launch, Monitoring and Execution Control | |
US9992216B2 (en) | Identifying malicious executables by analyzing proxy logs | |
Fraunholz et al. | YAAS-On the Attribution of Honeypot Data. | |
Banerjee et al. | Network traffic analysis based iot botnet detection using honeynet data applying classification techniques | |
CN104933364A (zh) | 一种基于调用行为的恶意代码自动化同源判定方法及系统 | |
CN115134166B (zh) | 一种基于蜜洞的攻击溯源方法 | |
CN108229153A (zh) | 一种高级持续性威胁攻击的判别方法 | |
CN106911665B (zh) | 一种识别恶意代码弱口令入侵行为的方法及系统 | |
CN111859374A (zh) | 社会工程学攻击事件的检测方法、装置以及系统 | |
CN103634264A (zh) | 一种基于行为分析的主动诱捕方法 | |
CN110445772A (zh) | 一种基于主机关系的互联网主机扫描方法及系统 | |
KR20100066908A (ko) | 윈도우 실행파일 추출방법, 및 장치 | |
CN112769734B (zh) | 网络攻击的检测方法、装置和计算机可读存储介质 | |
Kim et al. | A study on a cyber threat intelligence analysis (CTI) platform for the proactive detection of cyber attacks based on automated analysis | |
Yadav et al. | Comparative study of datasets used in cyber security intrusion detection | |
US11671449B2 (en) | Method for automatic aggregating and enriching data from honeypots |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150819 |
|
RJ01 | Rejection of invention patent application after publication |