[发明专利]基于Python的安全威胁情报获取方法及系统在审
申请号: | 202110031461.5 | 申请日: | 2021-01-11 |
公开(公告)号: | CN112765432A | 公开(公告)日: | 2021-05-07 |
发明(设计)人: | 于爽 | 申请(专利权)人: | 北京微步在线科技有限公司 |
主分类号: | G06F16/951 | 分类号: | G06F16/951;G06K9/62;G06F9/54;G06F9/48 |
代理公司: | 北京金信知识产权代理有限公司 11225 | 代理人: | 侯宪志;喻嵘 |
地址: | 100080 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 python 安全 威胁 情报 获取 方法 系统 | ||
本申请公开了一种基于Python的安全威胁情报获取方法及系统,其中,该方法包括:将获取的地址信息添加到消息队列;通过分布式爬虫调度多个协程并发从所述消息队列获取所述地址信息,并基于随机匹配的源地址异步爬取与所述地址信息相对应网页数据;基于预置的匹配模型对所述网页数据进行匹配操作,以获取安全威胁情报。利用该方法能够提高网页数据爬取的并行度,对内存消耗较低,能够显著提高网页数据的爬取速度,进而显著提高安全威胁情报的获取速度。
技术领域
本申请涉及安全防护技术领域,特别涉及一种基于Python的安全威胁情报获取方法及系统。
背景技术
安全威胁情报,又称失陷指标(Indicators of Compromise,IOC情报),一旦主机行为与安全威胁情报相匹配,则表明该主机已经失陷。安全威胁情报通常是通过爬虫爬取目标主机的网页,并基于网页数据来获取,但爬虫基于多线程方式进行网页爬取的并行度较低,且内存消耗较快,致使网页爬取速度较慢。
发明内容
有鉴于现有技术中存在的上述问题,本申请提供了一种基于Python的安全威胁情报获取方法及系统,本申请实施例采用的技术方案如下:
一种基于Python的安全威胁情报获取方法,包括:
将获取的地址信息添加到消息队列;
通过分布式爬虫调度多个协程并发从所述消息队列获取所述地址信息,并基于随机匹配的源地址异步爬取与所述地址信息相对应网页数据;
基于预置的匹配模型对所述网页数据进行匹配操作,以获取安全威胁情报。
在一些实施例中,所述将获取的地址信息添加到消息队列,包括:
在内存空间中构建消息队列,获取包含所述地址信息的地址列表,将所述地址列表添加到所述消息队列。
在一些实施例中,在一些实施例中,所述通过分布式爬虫调度多个协程并发从所述消息队列获取所述地址信息,并基于随机匹配的源地址异步爬取与所述地址信息相对应网页数据,包括:
通过所述分布式爬虫调度多个所述协程并发从所述消息队列获取所述地址信息,并从预置地址池中随机获取源地址;
通过所述协程基于随机获取的源地址,向对应于所述地址信息的目标设备发送用于获取所述网页数据的第一请求,并挂起完成所述第一请求发送操作的协程;
待接收到返回自目标设备的网页数据,唤醒所挂起的协程,并通过所述协程存储所述网页数据。
在一些实施例中,所述基于预置的匹配模型对所述网页数据进行匹配操作以获取安全威胁情报,包括:
基于预置的正则匹配模型对所述网页数据进行正则匹配操作,以获取所述安全威胁情报。
在一些实施例中,在基于预置的正则匹配模型对所述网页数据进行正则匹配操作,以获取所述安全威胁情报之前,还包括:
对所述网页数据进行预处理以去除所述网页数据中特定字符。
在一些实施例中,所述方法还包括:
对获取的所述安全威胁情报进行过滤,以滤除误报的安全威胁情报,并存储过滤后的所述安全威胁情报以供调用。
在一些实施例中,所述安全威胁情报至少包括域名,所述对获取的所述安全威胁情报进行过滤,以滤除误报的安全威胁情报,包括:
在所述域名与白名单中的信息相匹配的情况下,从所述安全威胁情报中滤除所述域名。
在一些实施例中,所述安全威胁情报至少包括域名,所述对获取的所述安全威胁情报进行过滤,以滤除误报的安全威胁情报,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京微步在线科技有限公司,未经北京微步在线科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110031461.5/2.html,转载请声明来源钻瓜专利网。