图数据库助力高效威胁情报处理

攻防
2年前

20220115220214.png

  面对杂乱无章的大量数据,想要高效抽取有用的威胁情报,离不开图数据库的强力助推。

  组织壮大到一定程度,总免不了面对网络威胁的日常侵袭。可以说,组建一支团队专门处理威胁情报是很有必要的。但威胁情报涉及多方面因素,需要前所未有的复杂方法加以处理。首先就得弄清楚该怎样合理利用数据来应对安全威胁。

  威胁情报涉及多个方面。各类实体的入口点或接入点种类庞杂、分布广泛,包括网站、应用、后台办公系统和用户账户等等。这些系统都可能具有各种复杂的关联和关系,而且不仅仅相互之间关系复杂,其关联还可能随时间的推移而加深。对于大型组织而言,能收集到的数据量几乎是无限的。

  事实上,这些数据集可以囊括成千上万亿个数据点。分开来看,各个数据实体似乎没什么意义。但综合到一起,弄清各个数据实体间可能的关系,可能就会暴露出一些问题了。因此,图数据库非常适合用来梳理杂乱无章的数据,看清数据背后的真相。

为什么选择图数据库?

  常见关系型数据库的性能会随数据量的增加而下降。特别是,处理复杂数据的关系操作时,这种性能下降尤为明显。简而言之,关系型数据库早已过时,既不适用于遍历上亿级别的数据点,也不适合用来关联数据。

  所以,尽管距离图数据库的诞生已经有些年头,这种数据库却是在最近才获得更多关注。威胁情报恰好是很适合使用图数据库来处理的理想用例。图数据库能做的可不仅仅是提取数据,揭示数据之间和数据集之间的关系才是这类数据库的专长。图数据库的工作原理很复杂。我们需要知道的就是,图数据库不同于RDBMS(关系型数据库管理系统),这类数据库将关于数据的深层关系特征存储在数据本身中。

基本数据功能需求

  图数据库解决方案的核心是快速写入数据和查询数据的能力。像政府机构或跨国公司这样的组织,其数据点规模可能是十亿级别的,所以他们可能希望数据库能够支持批量离线导入日常产生的数据。因为他们每天产生的关系数据可能是百亿级别的。这些数据需要在几个小时之内写入数据库,这样系统才能为第二天再次迎接百亿级别数据量做好准备。

  另外,图数据库是支持在线实时查询的理想选择。查询性能应是毫秒级的。筛选功能也必不可少。比如说,数据科学家就很可能需要按属性查询数据库顶点和边。

  所以,基本上,所选图数据库应能够实时离线写入数据,并能够查询在线图数据。这些基本功能是大数据分析的基础,是实现大规模威胁情报所必不可少的。

模块化图数据库

  确定图数据库结构时需要考虑的另一重要因素是:需要处理多少数据?正如上面所提到的,大型组织,尤其是拥有大量资产,捕获或存储了大量数据点的大型组织,往往会产生千亿乃至万亿级图数据实体。

  计算引擎和存储引擎分离是明智的选择。这样一来,两种引擎都可以独立扩展和管理了。可扩展性支持既可以带来便利,又能够实现冗余。而DevOps团队可能还需要考虑的是,自己是否需要具备不中断生产环境服务就能在线扩展集群的能力。

威胁情报图基础

  我们可以分解威胁入侵机会和防护点,将之融入其各个网络层,从而着手阐明图模型的作用。例如,底层可以包含文件中的散列值和文件存储与传输,前者作为弱点,后者作为防御层机会。往上一层,IP或域名可以作为威胁点,其网络层则可视为防御点。再往上走,我们可以将手机号码及其用户视为威胁点,而用户与设备身份验证则作为防御点。

  各个层点上,黑客和网络安全响应团队通常处于敌对位置。这一点可用于开始定义建模。通常,我们没有什么很好的方法可以通过特定关系将各个点联系起来。而采用图数据库,运用顶点、边和属性,这个问题就迎刃而解了。我们可以构建三维层级网络来了解攻击方法、所用工具等等。

  举个例子,联网设备需要网络层、设备层、账户层和用户层。每一层上,联网设备都有自己的标识。借助图数据库,我们可以完成对此设备的三维风险识别。

  我们应对账户和设备间的关系进行加权。比如说,如果某个账户经常用到某个设备,那我们就可以认为这个账户与该设备间存在强联系。于是,其间关系的权重应该更高。与之类似,如果账户使用设备进行犯罪活动,则可能意味着该账户与设备间的关联并不紧密。所以此账户与设备间的关系权重就较低。

  如此定义的边不仅仅具有权重属性,还应具备时间属性。这样才能将账户使用情况与设备典型使用时间相关联,而不是关联到非典型使用时间上。

开始使用图数据库

  关联数据集以构建有意义的大数据是很复杂的。从威胁情报到实时建议,各类应用皆是如此。不过,经验丰富的程序员可以轻松上手。毕竟,网络上有各个开源图数据库项目可供试水。



参考阅读

TI Inside 威胁情报生态初探

数世咨询发布:威胁情报市场指南

威胁情报在SOC中的价值