AIQL: Enabling Efficient Attack Investigation from System Monitoring Data abstract。

解决的问题

出于对抗 APT 攻击的需要,系统调用监控和即时溯源分析得到人们的重视。然而,现有的基于关系和图的查询系统缺乏对攻击活动关键属性的刻画,并且查询效率低下,因为他们语义无关的设计无法利用系统监控数据的属性来加速查询执行。
因此本文针对此问题提出解决方案。

Architecture

arch

为了解决上述问题,提出了一种建立在现有的监控工具和数据库之上的新型查询系统,该系统采用新型优化设计支持及时的攻击调查。

提供:

  • 特定领域的数据模型来拓展存储
  • 特定领域的查询语言,AIQL,集成了用于攻击调查的关键原语
  • 基于数据特征和查询语义的优化查询引擎

系统提供了特殊的结构来表示:

  • 多步骤攻击
  • 攻击依赖追溯
  • 异常系统行为

major types

数据模型和存储

数据模型

data model
data model

存储

时空分区 time and space partitioning

采集到的数据具有时空特点,查询一般查询某一段时间内的记录,所以对于数据存储从时间和空间上来进行分区:将agents组划分成表分区,以天为单位生成数据库,并对频繁查询的属性建立各种类型的索引。

超表 hypertable

使用 MPP(massively parallel processing) 来管理大规模数据。

时间同步

通过 网络时间协议 来进行时间偏移修正。

查询语言设计

查询执行引擎