CN113783736B - 一种提取ioc信息的方法及相关装置 - Google Patents
一种提取ioc信息的方法及相关装置 Download PDFInfo
- Publication number
- CN113783736B CN113783736B CN202111138025.4A CN202111138025A CN113783736B CN 113783736 B CN113783736 B CN 113783736B CN 202111138025 A CN202111138025 A CN 202111138025A CN 113783736 B CN113783736 B CN 113783736B
- Authority
- CN
- China
- Prior art keywords
- ioc
- syslog
- target
- information
- sample
- 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.)
- Active
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/06—Management of faults, events, alarms or notifications
- H04L41/069—Management of faults, events, alarms or notifications using logs of notifications; Post-processing of notifications
Abstract
本申请公开了一种提取IOC信息的方法,包括:分析样本syslog日志,建立IOC位置关系;所述IOC位置关系至少包括syslog主机名、分隔符以及分隔段号;将目标syslog日志中的所述syslog主机名与所述IOC位置关系中的所述syslog主机名进行匹配,确定目标IOC位置关系;根据所述目标IOC位置关系中的所述分隔符以及所述分隔段号,从所述目标syslog日志中提取IOC信息。应用该方法能够快速提取出IOC信息。本申请还公开了一种提取IOC信息的装置、设备以及计算机可读存储介质,均具有上述技术效果。
Description
技术领域
本申请涉及信息检测技术领域,特别涉及一种提取IOC信息的方法;还涉及一种提取IOC信息的装置、设备以及计算机可读存储介质。
背景技术
syslog是一种工业标准的协议,可用来记录设备的日志,所记录内容包括核心程序、系统程序的运行情况以及所发生的事件。Syslog日志的组成部分主要包含主机名、facility(日志标签,对应当前日志来源:守护进程、新闻、邮件或者用户自定义等)、priority(优先级)、message(日志主体)等。威胁检测日志采集模块一般采用rsyslog接收各个主机的syslog日志数据。syslog日志数据具有格式多样的特点,包括分隔符日志、KV日志、JSON日志等等,并且对实时性要求比较高。面对多样性的海量结构化日志格式,如何高效提取IOC信息即IP、域名信息,已成为关注的焦点。传统的提取IOC信息的方案是通过正则表达式或者Grok提取IOC信息,但是正则表达式在进行字符匹配时会发生回溯,一旦发生回溯,那么其消耗的时间就会变得很长,并且会消耗大量内存。
因此,如何快速提取IOC信息已成为本领域技术人员亟待解决的技术问题。
发明内容
本申请的目的是提供一种IOC信息的提取方法,能够快速提取IOC信息。本申请的另一个目的是提供一种IOC信息的提取装置、设备以及计算机可读存储介质,均具有上述技术效果。
为解决上述技术问题,本申请提供了一种IOC信息的提取方法,包括:
分析样本syslog日志,建立IOC位置关系;所述IOC位置关系至少包括syslog主机名、分隔符以及分隔段号;
将目标syslog日志中的所述syslog主机名与所述IOC位置关系中的所述syslog主机名进行匹配,确定目标IOC位置关系;
根据所述目标IOC位置关系中的所述分隔符以及所述分隔段号,从所述目标syslog日志中提取IOC信息。
可选的,所述分析样本syslog日志,建立IOC位置关系包括:
触发样本训练后,分析样本训练库中的所述样本syslog日志,得到所述样本syslog日志的所述syslog主机名;
根据所述样本syslog日志的所述分隔符将所述样本syslog日志分隔成多个分隔段;
分析各所述分隔段,得到所述样本syslog日志中的所述IOC信息所在的所述分隔段;
根据所述syslog主机名对所述样本syslog日志进行分组,并统计每组中各所述分隔段存在所述IOC信息的频率;
根据预设IOC提取频率阈值以及所述分隔段存在所述IOC信息的频率,确定所述分隔段号;
根据所述syslog主机名、所述分隔符以及所述分隔段号建立所述IOC位置关系;其中,当所述样本syslog日志中存在IOC前后缀时,所建立的所述IOC位置关系还包括所述IOC前后缀。
可选的,触发样本训练包括:
根据预设周期触发样本训练,或者当所述样本训练库中的所述样本syslog日志的数量达到预设阈值时,触发样本训练。
可选的,根据所述目标IOC位置关系中的所述分隔符以及所述分隔段号,从所述目标syslog日志中提取IOC信息包括:
根据所述目标IOC位置关系中的所分隔符对所述目标syslog日志的日志体进行分隔,得到多个分隔段;
根据所述目标IOC位置关系中的所述分隔段号确定所述IOC信息所在的所述分隔段;
当所述目标IOC位置关系中存在IOC前后缀时,根据所述目标IOC位置关系中的所述IOC前后缀,从所述IOC信息所在的所述分隔段中提取所述IOC信息;
当所述目标IOC位置关系中不存在所述IOC前后缀时,所述IOC信息所在的所述分隔段的内容为所述IOC信息。
可选的,还包括:
对所述目标syslog日志进行预处理,以过滤掉无用的syslog日志。
可选的,还包括:
当所述IOC位置关系中不存在与所述目标syslog日志中的所述syslog主机名相匹配的所述syslog主机名时,将所述目标syslog日志写入样本训练库。
为解决上述技术问题,本申请还提供了一种提取IOC信息的装置,包括:
建立模块,用于分析样本syslog日志,建立IOC位置关系;所述IOC位置关系至少包括syslog主机名、分隔符以及分隔段号;
匹配模块,用于将目标syslog日志中的所述syslog主机名与所述IOC位置关系中的所述syslog主机名进行匹配,确定目标IOC位置关系;
提取模块,用于根据所述目标IOC位置关系中的所述分隔符以及所述分隔段号,从所述目标syslog日志中提取IOC信息。
可选的,还包括:
预处理模块,用于对所述目标syslog日志进行预处理,以过滤掉无用的syslog日志。
为解决上述技术问题,本申请还提供了一种提取IOC信息的设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上任一项所述的提取IOC信息的方法的步骤。
为解决上述技术问题,本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上任一项所述的提取IOC信息的方法的步骤。
本申请所提供的提取IOC信息的方法,包括:分析样本syslog日志,建立IOC位置关系;所述IOC位置关系至少包括syslog主机名、分隔符以及分隔段号;将目标syslog日志中的所述syslog主机名与所述IOC位置关系中的所述syslog主机名进行匹配,确定目标IOC位置关系;根据所述目标IOC位置关系中的所述分隔符以及所述分隔段号,从所述目标syslog日志中提取IOC信息。
可见,本申请所提供的提取IOC信息的方法,通过分析syslog日志,建立了至少包含syslog主机名、分隔符以及分隔段号的IOC位置关系,进而依据此IOC位置关系,从syslog日志中提取IOC信息。相较于采用正则表达式提取IOC信息的方式,本申请所提供的提取IOC信息的方式能够更加快速的从多样且结构化日志中提取出IOC信息,同时可以避免采取正则表达式所带来的内存占用问题。
本申请所提供的提取IOC信息的装置、设备以及计算机可读存储介质均具有上述技术效果。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例所提供的一种提取IOC信息的方法的流程示意图;
图2为本申请实施例所提供的一种提取IOC信息的装置的示意图;
图3为本申请实施例所提供的一种提取IOC信息的设备的示意图。
具体实施方式
本申请的核心是提供一种IOC信息的提取方法,能够快速提取IOC信息。本申请的另一个核心是提供一种IOC信息的提取装置、设备以及计算机可读存储介质,均具有上述技术效果。
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
请参考图1,图1为本申请实施例所提供的一种提取IOC信息的方法的流程示意图,参考图1所示,该方法主要包括:
S101:分析样本syslog日志,建立IOC位置关系;所述IOC位置关系至少包括syslog主机名、分隔符以及分隔段号;
具体的,分隔符日志的日志主题内容有明确的分隔符。例如:
Imperva Inc.|SecureSphere|9.0.0|特征模型|参数类型违规|中|act=无|”
KV日志的日志内容以key-value的形式追加到日志体。例如:
"src_ip":"185.216.140.186","dst_ip":"119.29.66.111","src_port":54428
JSON日志的日志体结构为JSON结构。例如:
{"eventCount":1,"eventId":5624523032782677505}
由此可见,如果通过分隔符对日志进行分隔,分隔得到的每个部分都有其自身含义,而且针对结构化的日志,IOC信息所在的位置一般是固定不变。因此,通过发掘IOC位置关系,可以针对性的提取IOC信息,而无需解析其他的冗余部分,达到快速提取IOC的目的。
为此,本申请选取一些syslog日志作为样本syslog日志,对样本syslog日志进行分析,建立至少包含syslog主机名、分隔符以及分隔段号的IOC位置关系,多个IOC位置关系组合得到IOC位置关系库。其中,syslog主机名代表syslog日志的来源主机。分隔段号是指通过分隔符将日志体分隔成n个部分之后,每个部分的编号。
在一种具体的实施方式中,所述分析样本syslog日志,建立IOC位置关系包括:
触发样本训练后,分析样本训练库中的所述样本syslog日志,得到所述样本syslog日志的所述syslog主机名;
根据所述样本syslog日志的所述分隔符将所述样本syslog日志分隔成多个分隔段;
分析各所述分隔段,得到所述样本syslog日志中的所述IOC信息所在的所述分隔段;
根据所述syslog主机名对所述样本syslog日志进行分组,并统计每组中各所述分隔段存在所述IOC信息的频率;
根据预设IOC提取频率阈值以及所述分隔段存在所述IOC信息的频率,确定所述分隔段号;
根据所述syslog主机名、所述分隔符以及所述分隔段号建立所述IOC位置关系;其中,当所述样本syslog日志中存在IOC前后缀时,所建立的所述IOC位置关系还包括所述IOC前后缀。
具体而言,可分析样本syslog日志的日志头,得到样本syslog日志的syslog主机名。另外,可采用IP、域名正则表达式,分析得到IOC信息所在的分隔段。在统计每组中各分隔段存在IOC信息的频率的基础上,如果某一分隔段存在IOC信息的频率达到了预设IOC提取频率阈值,则保存该分隔段的编号即分隔段号,后续在建立IOC位置关系时,将该分隔段的分隔段号写入相应的IOC位置关系中。如果某个或某些分隔段存在IOC信息的频率未达到预设IOC提取频率阈值,则忽略该分隔段的编号即分隔段号。
例如,分隔段号为5的分割段存在IOC信息的频率为80%,预设IOC提取频率阈值为70%,那么保存分隔段号5。分隔段号为2的分割段存在IOC信息的频率为30%,预设IOC提取频率阈值为70%,那么忽略分隔段号2。
一个IOC位置关系中的分隔段号可能为一个,也可能为两个或两个以上。
由于有些syslog日志中的IOC信息具有前后缀,而有些syslog日志中的IOC信息不具有前后缀。因此,如果样本syslog日志中存在IOC前后缀,那么据此所建立的IOC位置关系除包含syslog主机名、分隔符以及分隔段号外,还包含IOC前后缀。如果样本syslog日志中不存在IOC前后缀,那么据此所建立的IOC位置关系不包含IOC前后缀。
进一步,触发样本训练方式可以包括:根据预设周期触发样本训练,或者当所述样本训练库中的所述样本syslog日志的数量达到预设阈值时,触发样本训练。
具体而言,本实施例提供了两种触发样本训练的方式。一个是以时间为条件触发样本训练,每当到达预设周期便触发样本训练。另一个是以数量为条件触发样本训练,每当样本训练库中的样本syslog日志的数量达到预设阈值便触发样本训练。
S102:将目标syslog日志中的所述syslog主机名与所述IOC位置关系中的所述syslog主机名进行匹配,确定目标IOC位置关系;
具体的,目标syslog日志是指实际要从中提取IOC信息的日志。在建立IOC位置关系的基础上,实际要从目标syslog日志中提取IOC信息时,首先将目标syslog日志的syslog主机名与已建立的IOC位置关系中的syslog主机名进行匹配。如果匹配成功,则以匹配到的syslog主机名所在的IOC位置关系作为目标IOC位置关系,并进一步以此目标IOC位置关系为依据从目标syslog日志中提取IOC信息。相反,如果匹配失败,则表明IOC位置关系不存在与此目标syslog日志的syslog主机名相关的记录。
其中,如果匹配失败,即当所述IOC位置关系中不存在与所述目标syslog日志中的所述syslog主机名相匹配的所述syslog主机名时,此时可将所述目标syslog日志写入所述样本训练库,后期以此目标syslog日志作为样本syslog日志进行样本训练,得到相应的IOC位置关系,以丰富IOC位置关系库。
S103:根据所述目标IOC位置关系中的所述分隔符以及所述分隔段号,从所述目标syslog日志中提取IOC信息。
具体的,在匹配确定目标IOC位置关系后,进一步根据该目标IOC位置关系中的分隔符以及分隔段号,从目标syslog日志中提取IOC信息。
在一种具体的实施方式中,根据所述目标IOC位置关系中的所述分隔符以及所述分隔段号,从所述目标syslog日志中提取IOC信息包括:
根据所述目标IOC位置关系中的所分隔符对所述目标syslog日志的日志体进行分隔,得到多个分隔段;
根据所述目标IOC位置关系中的所述分隔段号确定所述IOC信息所在的所述分隔段;
当所述目标IOC位置关系中存在IOC前后缀时,根据所述目标IOC位置关系中的所述IOC前后缀,从所述IOC信息所在的所述分隔段中提取所述IOC信息;
当所述目标IOC位置关系中不存在所述IOC前后缀时,所述IOC信息所在的所述分隔段的内容为所述IOC信息。
也就是说,在根据分隔符将目标syslog日志的日志体分隔成多个分隔段,并根据分隔段号确定所述IOC信息所在的所述分隔段后,如果目标IOC位置关系中包含IOC前后缀,则表明IOC信息所在的所述分隔段的内容包括IOC前后缀与IOC信息,此时进一步根据此IOC前后缀提取出IOC信息。相反,如果目标IOC位置关系中不包含IOC前后缀,则表明IOC信息所在的分隔段的内容只有IOC信息,此时直接提取分隔段的内容即为IOC信息。
进一步,在上述实施例的基础上,作为一种具体的实施方式,还包括:
对所述目标syslog日志进行预处理,以过滤掉无用的syslog日志。
具体而言,提取IOC信息主要针对的是威胁事件,对于安全事件,则无需提取其中的IOC信息,因此,为了避免不必要的提取操作,每次在接收到syslog日志后,首先对其进行预处理,过滤掉无用的syslog日志,即过滤掉安全事件,对剩余的syslog日志则进行IOC日志提取的操作。
以下结合具体的日志示例来阐述本申请所提供的提取IOC信息的实施方式:
日志示例1(KV结构):
2021-03-31T19:27:38+08:0010.10.15.18cd-Gateway;530000500118092735153389;ipv4;3;security_abnormal_pkt:user_name=;src_ip=10.10.10.111;src_port=62965;dst_ip=10.10.10.116;dst_port=21;name=tcp-flag;type=abnormal-packet;protocol=TCP;mac=70:57:bf:23:56:01;count=58;level=4;in_if_name=ge2;create_time=1617190048;end_time=1617190058;extend=;
日志示例2(CSV结构):
2021-03-25T20:39:55.152155+08:0020.20.20.20"XXXEye","XXXSecurity","XXX内部测试使用","devicename","20.20.20.10","0","0","/Dpi","syslog","4","2103252039540026564","10.20.90.28","54290","B4-B6-86-D8-8C-E0","20.20.20.68","22","70-57-BF-23-56-01","TCP","SSH","2021-03-2520:39:54","2021-03-2520:39:54","70","64","中国","浙江","杭州","中国","浙江","杭州"
分析日志示例1,得到:
syslog主机名为:10.10.15.18;
日志体为:
530000500118092735153389;ipv4;3;security_abnormal_pkt:user_name=;src_ip=10.10.10.111;src_port=62965;dst_ip=10.10.10.116;dst_port=21;name=tcp-flag;type=abnormal-packet;protocol=TCP;mac=70:57:bf:23:56:01;count=58;level=4;in_if_name=ge2;create_time=1617190048;end_time=1617190058;extend=;
分析日志示例2,得到:
syslog主机名为:20.20.20.20;
日志体为:"XXXEye","XXXSecurity","XXX内部测试使用","devicename","20.20.20.10","0","0","/Dpi","syslog","4","2103252039540026564","10.20.90.28","54290","B4-B6-86-D8-8C-E0","20.20.20.68","22","70-57-BF-23-56-01","TCP","SSH","2021-03-25 20:39:54","2021-03-25 20:39:54","70","64","中国","浙江","杭州","中国","浙江","杭州"
分析日志示例1,得到:分隔符为“;”,分隔段号为5和7,分别对应:src_ip=10.10.10.111;和dst_ip=10.10.10.116;IOC前后缀分别为“src_ip=”和“dst_ip=”,通过字符串前后固定字符匹配得到完整IOC信息:10.10.10.111和10.10.10.116。
分析日志示例2,得到:分隔符为“","”,分隔段号为4和11,IOC信息分别为:20.20.20.10和10.20.90.28,IOC前后缀为空。
由此,建立两条IOC位置关系,如下表所示:
表1
字段 | 值 |
Syslog主机名 | 10.10.15.18 |
分隔符 | ;(英文分号) |
分隔段号 | 5,7 |
IOC前后缀 | src_ip=和dst_ip= |
表2
字段 | 值 |
Syslog主机名 | 20.20.20.20 |
分隔符 | "" |
分隔段号 | 4,11 |
IOC前后缀 |
在实际提取IOC信息的场景下,根据syslog日志的syslog主机名,匹配对应IOC位置关系。然后根据匹配到的IOC位置关系中的分隔符对syslog日志的日志体进行分隔,然后根据分隔段号得到IOC信息所在段落。如果存在IOC前后缀,则采用前后缀字符串匹配提取完整的IOC信息,如果没有IOC前后缀则直接得到IOC信息。
综上所述,本申请所提供的提取IOC信息的方法,包括:分析样本syslog日志,建立IOC位置关系;所述IOC位置关系至少包括syslog主机名、分隔符以及分隔段号;将目标syslog日志中的所述syslog主机名与所述IOC位置关系库中的所述IOC位置关系中的所述syslog主机名进行匹配,确定目标IOC位置关系;根据所述目标IOC位置关系中的所述分隔符以及所述分隔段号,从所述目标syslog日志中提取IOC信息。可见,本申请所提供的提取IOC信息的方法,通过分析syslog日志,建立了至少包含syslog主机名、分隔符以及分隔段号的IOC位置关系,进而依据此IOC位置关系,从syslog日志中提取IOC信息。相较于采用正则表达式提取IOC信息的方式,本申请所提供的提取IOC信息的方式能够更加快速的从多样且结构化日志中提取出IOC信息,同时可以避免采取正则表达式所带来的内存占用问题。
本申请还提供了一种提取IOC信息的装置,下文描述的该装置可以与上文描述的方法相互对应参照。请参考图2,图2为本申请实施例所提供的一种提取IOC信息的装置的示意图,结合图2所示,该装置包括:
建立模块10,用于分析样本syslog日志,建立IOC位置关系;所述IOC位置关系至少包括syslog主机名、分隔符以及分隔段号;
匹配模块20,用于将目标syslog日志中的所述syslog主机名与所述IOC位置关系中的所述syslog主机名进行匹配,确定目标IOC位置关系;
提取模块30,用于根据所述目标IOC位置关系中的所述分隔符以及所述分隔段号,从所述目标syslog日志中提取IOC信息。
在上述实施例的基础上,作为一种具体的实施方式,所述建立模块10包括:
第一分析单元,用于触发样本训练后,分析样本训练库中的所述样本syslog日志,得到所述样本syslog日志的所述syslog主机名;
第一分隔单元,用于根据所述样本syslog日志的所述分隔符将所述样本syslog日志分隔成多个分隔段;
第二分析单元,用于分析各所述分隔段,得到所述样本syslog日志中的所述IOC信息所在的所述分隔段;
统计单元,用于根据所述syslog主机名对所述样本syslog日志进行分组,并统计每组中各所述分隔段存在所述IOC信息的频率;
第一确定单元,用于根据预设IOC提取频率阈值以及所述分隔段存在所述IOC信息的频率,确定所述分隔段号;
建立单元,用于根据所述syslog主机名、所述分隔符以及所述分隔段号建立所述IOC位置关系;其中,当所述样本syslog日志中存在IOC前后缀时,所建立的所述IOC位置关系还包括所述IOC前后缀。
在上述实施例的基础上,作为一种具体的实施方式,所述第一分析单元具体用于:
根据预设周期触发样本训练,或者当所述样本训练库中的所述样本syslog日志的数量达到预设阈值时,触发样本训练。
在上述实施例的基础上,作为一种具体的实施方式,所述提取模块包括:
第二分隔单元,用于根据所述目标IOC位置关系中的所分隔符对所述目标syslog日志的日志体进行分隔,得到多个分隔段;
第二确定单元,用于根据所述目标IOC位置关系中的所述分隔段号确定所述IOC信息所在的所述分隔段;
第一提取单元,用于当所述目标IOC位置关系中存在IOC前后缀时,根据所述目标IOC位置关系中的所述IOC前后缀,从所述IOC信息所在的所述分隔段中提取所述IOC信息;
第二提取单元,用于当所述目标IOC位置关系中不存在所述IOC前后缀时,所述IOC信息所在的所述分隔段的内容为所述IOC信息。
在上述实施例的基础上,作为一种具体的实施方式,还包括:
预处理模块,用于对所述目标syslog日志进行预处理,以过滤掉无用的syslog日志。
在上述实施例的基础上,作为一种具体的实施方式,还包括:
写入模块,用于当所述IOC位置关系中不存在与所述目标syslog日志中的所述syslog主机名相匹配的所述syslog主机名时,将所述目标syslog日志写入样本训练库。
本申请所提供的提取IOC信息的装置,通过分析syslog日志,建立了至少包含syslog主机名、分隔符以及分隔段号的IOC位置关系,进而依据此IOC位置关系,从syslog日志中提取IOC信息。相较于采用正则表达式提取IOC信息的方式,本申请所提供的提取IOC信息的方式能够更加快速的从多样且结构化日志中提取出IOC信息,同时可以避免采取正则表达式所带来的内存占用问题。
本申请还提供了一种提取IOC信息的设备,参考图3所示,该设备包括存储器1和处理器2。
存储器1,用于存储计算机程序;
处理器2,用于执行计算机程序实现如下的步骤:
分析样本syslog日志,建立IOC位置关系;所述IOC位置关系至少包括syslog主机名、分隔符以及分隔段号;将目标syslog日志中的所述syslog主机名与所述IOC位置关系中的所述syslog主机名进行匹配,确定目标IOC位置关系;根据所述目标IOC位置关系中的所述分隔符以及所述分隔段号,从所述目标syslog日志中提取IOC信息。
对于本申请所提供的设备的介绍请参照上述方法实施例,本申请在此不做赘述。
本申请还提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时可实现如下的步骤:
分析样本syslog日志,建立IOC位置关系;所述IOC位置关系至少包括syslog主机名、分隔符以及分隔段号;将目标syslog日志中的所述syslog主机名与所述IOC位置关系中的所述syslog主机名进行匹配,确定目标IOC位置关系;根据所述目标IOC位置关系中的所述分隔符以及所述分隔段号,从所述目标syslog日志中提取IOC信息。
该计算机可读存储介质可以包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
对于本申请所提供的计算机可读存储介质的介绍请参照上述方法实施例,本申请在此不做赘述。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置、设备以及计算机可读存储介质而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的提取IOC信息的方法、装置、设备以及计算机可读存储介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围。
Claims (8)
1.一种提取IOC信息的方法,其特征在于,包括:
分析样本syslog日志,建立IOC位置关系;所述IOC位置关系至少包括syslog主机名、分隔符以及分隔段号;
将目标syslog日志中的所述syslog主机名与所述IOC位置关系中的所述syslog主机名进行匹配,确定目标IOC位置关系;
根据所述目标IOC位置关系中的所述分隔符以及所述分隔段号,从所述目标syslog日志中提取IOC信息;所述IOC信息包括IP与域名信息;
所述分析样本syslog日志,建立IOC位置关系包括:
触发样本训练后,分析样本训练库中的所述样本syslog日志,得到所述样本syslog日志的所述syslog主机名;
根据所述样本syslog日志的所述分隔符将所述样本syslog日志分隔成多个分隔段;
分析各所述分隔段,得到所述样本syslog日志中的所述IOC信息所在的所述分隔段;
根据所述syslog主机名对所述样本syslog日志进行分组,并统计每组中各所述分隔段存在所述IOC信息的频率;
根据预设IOC提取频率阈值以及所述分隔段存在所述IOC信息的频率,确定所述分隔段号;
根据所述syslog主机名、所述分隔符以及所述分隔段号建立所述IOC位置关系;其中,当所述样本syslog日志中存在IOC前后缀时,所建立的所述IOC位置关系还包括所述IOC前后缀;
根据所述目标IOC位置关系中的所述分隔符以及所述分隔段号,从所述目标syslog日志中提取IOC信息包括:
根据所述目标IOC位置关系中的所分隔符对所述目标syslog日志的日志体进行分隔,得到多个分隔段;
根据所述目标IOC位置关系中的所述分隔段号确定所述IOC信息所在的所述分隔段;
当所述目标IOC位置关系中存在IOC前后缀时,根据所述目标IOC位置关系中的所述IOC前后缀,从所述IOC信息所在的所述分隔段中提取所述IOC信息;
当所述目标IOC位置关系中不存在所述IOC前后缀时,所述IOC信息所在的所述分隔段的内容为所述IOC信息。
2.根据权利要求1所述的提取IOC信息的方法,其特征在于,触发样本训练包括:
根据预设周期触发样本训练,或者当所述样本训练库中的所述样本syslog日志的数量达到预设阈值时,触发样本训练。
3.根据权利要求1所述的提取IOC信息的方法,其特征在于,还包括:
对所述目标syslog日志进行预处理,以过滤掉无用的syslog日志。
4.根据权利要求1所述的提取IOC信息的方法,其特征在于,还包括:
当所述IOC位置关系中不存在与所述目标syslog日志中的所述syslog主机名相匹配的所述syslog主机名时,将所述目标syslog日志写入样本训练库。
5.一种提取IOC信息的装置,其特征在于,包括:
建立模块,用于分析样本syslog日志,建立IOC位置关系;所述IOC位置关系至少包括syslog主机名、分隔符以及分隔段号;
匹配模块,用于将目标syslog日志中的所述syslog主机名与所述IOC位置关系中的所述syslog主机名进行匹配,确定目标IOC位置关系;
提取模块,用于根据所述目标IOC位置关系中的所述分隔符以及所述分隔段号,从所述目标syslog日志中提取IOC信息;所述IOC信息包括IP与域名信息;
建立模块包括:
第一分析单元,用于触发样本训练后,分析样本训练库中的所述样本syslog日志,得到所述样本syslog日志的所述syslog主机名;
第一分隔单元,用于根据所述样本syslog日志的所述分隔符将所述样本syslog日志分隔成多个分隔段;
第二分析单元,用于分析各所述分隔段,得到所述样本syslog日志中的所述IOC信息所在的所述分隔段;
统计单元,用于根据所述syslog主机名对所述样本syslog日志进行分组,并统计每组中各所述分隔段存在所述IOC信息的频率;
第一确定单元,用于根据预设IOC提取频率阈值以及所述分隔段存在所述IOC信息的频率,确定所述分隔段号;
建立单元,用于根据所述syslog主机名、所述分隔符以及所述分隔段号建立所述IOC位置关系;其中,当所述样本syslog日志中存在IOC前后缀时,所建立的所述IOC位置关系还包括所述IOC前后缀;
提取模块包括:
第二分隔单元,用于根据所述目标IOC位置关系中的所分隔符对所述目标syslog日志的日志体进行分隔,得到多个分隔段;
第二确定单元,用于根据所述目标IOC位置关系中的所述分隔段号确定所述IOC信息所在的所述分隔段;
第一提取单元,用于当所述目标IOC位置关系中存在IOC前后缀时,根据所述目标IOC位置关系中的所述IOC前后缀,从所述IOC信息所在的所述分隔段中提取所述IOC信息;
第二提取单元,用于当所述目标IOC位置关系中不存在所述IOC前后缀时,所述IOC信息所在的所述分隔段的内容为所述IOC信息。
6.根据权利要求5所述的提取IOC信息的装置,其特征在于,还包括:
预处理模块,用于对所述目标syslog日志进行预处理,以过滤掉无用的syslog日志。
7.一种提取IOC信息的设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至4任一项所述的提取IOC信息的方法的步骤。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述的提取IOC信息的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111138025.4A CN113783736B (zh) | 2021-09-27 | 2021-09-27 | 一种提取ioc信息的方法及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111138025.4A CN113783736B (zh) | 2021-09-27 | 2021-09-27 | 一种提取ioc信息的方法及相关装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113783736A CN113783736A (zh) | 2021-12-10 |
CN113783736B true CN113783736B (zh) | 2023-01-24 |
Family
ID=78853884
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111138025.4A Active CN113783736B (zh) | 2021-09-27 | 2021-09-27 | 一种提取ioc信息的方法及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113783736B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109344070A (zh) * | 2018-10-10 | 2019-02-15 | 郑州云海信息技术有限公司 | 一种目标定位方法、装置、系统及计算机可读存储介质 |
CN110427298A (zh) * | 2019-07-10 | 2019-11-08 | 武汉大学 | 一种分布式日志的自动特征提取方法 |
CN111046662A (zh) * | 2018-09-26 | 2020-04-21 | 阿里巴巴集团控股有限公司 | 分词模型的训练方法、装置、系统和存储介质 |
CN111708860A (zh) * | 2020-06-15 | 2020-09-25 | 北京优特捷信息技术有限公司 | 信息提取方法、装置、设备及存储介质 |
CN113127767A (zh) * | 2019-12-31 | 2021-07-16 | 中国移动通信集团四川有限公司 | 手机号码提取方法、装置、电子设备及存储介质 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9973521B2 (en) * | 2015-12-28 | 2018-05-15 | International Business Machines Corporation | System and method for field extraction of data contained within a log stream |
-
2021
- 2021-09-27 CN CN202111138025.4A patent/CN113783736B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111046662A (zh) * | 2018-09-26 | 2020-04-21 | 阿里巴巴集团控股有限公司 | 分词模型的训练方法、装置、系统和存储介质 |
CN109344070A (zh) * | 2018-10-10 | 2019-02-15 | 郑州云海信息技术有限公司 | 一种目标定位方法、装置、系统及计算机可读存储介质 |
CN110427298A (zh) * | 2019-07-10 | 2019-11-08 | 武汉大学 | 一种分布式日志的自动特征提取方法 |
CN113127767A (zh) * | 2019-12-31 | 2021-07-16 | 中国移动通信集团四川有限公司 | 手机号码提取方法、装置、电子设备及存储介质 |
CN111708860A (zh) * | 2020-06-15 | 2020-09-25 | 北京优特捷信息技术有限公司 | 信息提取方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113783736A (zh) | 2021-12-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9411957B2 (en) | Method and device for optimizing and configuring detection rule | |
US10440035B2 (en) | Identifying malicious communication channels in network traffic by generating data based on adaptive sampling | |
CN110768875A (zh) | 一种基于dns学习的应用识别方法及系统 | |
CN114157502B (zh) | 一种终端识别方法、装置、电子设备及存储介质 | |
CN111222019B (zh) | 特征提取的方法和装置 | |
US11888874B2 (en) | Label guided unsupervised learning based network-level application signature generation | |
CN108234345A (zh) | 一种终端网络应用的流量特征识别方法、装置和系统 | |
CN110912861B (zh) | 一种深度追踪团伙攻击行为的ai检测方法和装置 | |
CN111274218A (zh) | 一种电力信息系统多源日志数据处理方法 | |
EP3242240A1 (en) | Malicious communication pattern extraction device, malicious communication pattern extraction system, malicious communication pattern extraction method and malicious communication pattern extraction program | |
CN113486343A (zh) | 一种攻击行为的检测方法、装置、设备和介质 | |
CN113783736B (zh) | 一种提取ioc信息的方法及相关装置 | |
CN110602038B (zh) | 一种基于规则的异常ua检测和分析的方法及系统 | |
CN111079044B (zh) | 一种共享检测方法和装置 | |
CN109614382A (zh) | 一种应用的日志分割方法及装置 | |
CN110830416A (zh) | 网络入侵检测方法和装置 | |
CN112104628A (zh) | 一种自适应特征规则匹配的实时恶意流量检测方法 | |
CN115865525B (zh) | 日志数据处理方法、装置、电子设备和存储介质 | |
CN114070819B (zh) | 恶意域名检测方法、设备、电子设备及存储介质 | |
CN116708356B (zh) | Ip特征库生成方法 | |
CN106961423A (zh) | 一种信息发布方法 | |
CN115941314A (zh) | 一种基于snort的规则分类方法 | |
KR101886526B1 (ko) | 응용 트래픽 분류에 정교한 페이로드 시그니쳐 생성 방법 및 시스템 | |
CN117714326A (zh) | Vpn流量的识别方法、vpn识别模型的训练方法及设备 | |
CN114036898A (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 |