Apache Spot项目介绍

ApacheS Spot

Posted by biaobean on October 29, 2016

2016年9月才被Apache基金会纳入孵化器的新开源项目Apache Spot,是一个网络日志分析端到端解决方案,旨在提供一个开放的框架,利用“大数据”和科学计算领域(如机器学习)的强大技术解决海量事件日志的安全监测和分析,并基于开放数据模型(Open Data Model)提供可扩展的网络安全用例构建。其主要组件包括:

  • 并行收集框架:借助开源的优化的解码器,解码二进制流和数据包,然后将数据加载到HDFS和其他Hadoop生态内的数据存储中。解码的数据以多种格式存储,因此它同时可用于搜索、机器学习、数据审计或者输出到其他系统。

  • 机器学习组件:系统将Apache Spark与优化的C代码相结合,运行可扩展的机器学习算法。机器学习组件可以用作将不良流量与良性分离的过滤器,也可以用于识别作网络流量中的特征行为。

  • 操作分析:在机器学习之外,还将对网络数据进行一系列已经经过验证的过程处理,包括上下文丰富、噪声过滤、白名单和启发式分析,从而得到频繁模式的短列表,用于识别安全威胁。

这些组件可以单独地使用或集成到其他解决方案中,并都支持CSV格式输出数据,从而最大限度地提高互操作性。

Spot的主要用例是网络流量(NetFlow,sFlow等),DNS和代理的网络流量分析。基本上,Spot通过使用监督和非监督机器学习的异常事件检测来识别威胁。

其前身是Open Network Insight(ONI)(https://github.com/Open-Network-Insight),由Intel和Cloudera公司合作开发的一个网络安全分析项目。

开放数据模型(Open Data Model)

Spot的开放数据模型战略旨在扩展Spot的现有功能,以释放比目前支持的更广泛的网络安全用例集。

开放数据模型可以按可以以批处理或流的方式部署,也可以按“读取”或“写入”来部署,并将将特定数据源和基于它构建的安全分析相分离。这种“职责分离”使Spot社区能够构建独立于特定技术的分析,并提供更改基础数据源但不影响分析的灵活性。这种方法还使安全供应商有机会在开放数据模型之上构建额外的产品,比如将Spot可以扩展为通用的面向事件的收集和分析工具,用于任何数据源可能存在网络威胁的场景。