基于SLS平台与日志审计构建Cloud SIEM方案-阿里云(云淘科技)

安全事件和事件管理(security information and event management,SIEM)通过对来自各种数据源安全事件的收集和分析,来实现威胁检测、安全事件管理和合规性检测。SIEM是在安全信息管理(SIM)——收集、分析并报告日志数据,与安全事件管理(SEM)——实时分析日志和事件数据以提供威胁监视、事件关联和事件响应的基础上发展而来的。本文为您介绍如何基于SLS平台与日志审计构建Cloud SIEM方案。

概述

SIEM技术主要关注于安全设备、网络基础设施、系统和应用程序产生的事件数据,数据源主要是日志数据,但SIEM技术也可以处理其他形式的数据,如网络telemetry数据(流和数据包)。SIEM同时提供了用于安全监控的事件实时分析、用户和实体行为的高级分析、针对大时间跨度的历史数据分析、事件调查和管理、报告(例如合规性要求)等。​

方案架构

SLS 云原生可观测平台

SLS作为阿里巴巴、蚂蚁等日志中台产品,同时服务阿里云上万级客户的基础产品,每天处理几十PB 日志/Metric/Trace数据,为AIOps、大数据分析、运营服务、大数据安全等场景提供支撑,解决工程师可观察性的问题。​SLS核心平台能力在于围绕可观察性的各种监控数据,提供统一的存储与计算能力。

  • 统一的存储能力:
    • 针对日志(log)。
    • 时序(metric)。
    • trace等各类数据提供了统一等存储能力。
  • 强大的分析引擎:
    • 数据加工引擎(DSL):主要面向数据加工和与预处理场景,解决格式多样化的问题。
    • SQL查询分析引擎(SQL):面向存储数据提供清晰、计算能力。
    • 智能分析引擎(AIOps):面对特定问题提供智能算法。
  • 丰富的可视化能力:通过可视化大盘全面观测系统状态。
  • 事件管理和on-call管理机制,及时监控异常并通知。

​基于此平台,在DevOps、ITOps、SecOps、BusinessOps等领域提供了丰富的场景支持。

方案实施

SIEM功能与SLS能力映射

从该图可以看出SLS已经具备了构建SIEM的基本能力。接下来从如下方面重点阐述使用SLS构建SIEM方案的关键点:

  • 丰富的数据采集、处理能力
  • 统一的查询分析能力:交互式的查询分析语法、ML算法支持、可视化分析能力
  • 威胁探测和响应:使用内置告警规则和自定义规则进行威胁探测,将发现的威胁事件通知给用户,并能够进行事件管理。

数据采集、处理能力

数据实时采集

SLS提供了丰富的采集手段,支持采集服务器与应用、开源软件、物联网、移动端、标准协议、阿里云产品等多种来源的数据。应用日志主要的接入手段有:

  • 客户端使用SDK直接写入:在应用程序(或依赖的框架)中将日志直接写到SLS。
  • 语言覆盖:提供了多个语言版本(.NET、Java、Python、PHP、C等)的SDK。
  • 场景覆盖:服务器应用、移动端、H5等。
  • 通过logtail作为agent采集:应用只负责把日志打到本地,由logtail作为代理采集到SLS侧。
  • 场景覆盖:Linux、Windows、Docker等。
  • 能力支持:支持多种文本类型(正则、Json等)的采集。Logtail提供了简单的数据处理(字段提取,过滤等)能力,对于安全数据提供了采集时脱敏能力(详见sensitive_keys配置项)。

​除此以外,还提供了对标准协议(HTTP/HTTPS、Syslog等)、第三方开源采集软件(Logstash、Fluentd)的对接。为了满足业务数据快速接入的需求,SLS在全球提供了20+接入点,同时对于跨域采集网络不稳定的问题,提供了全球加速方案。SLS还跟阿里云多个云产品深度融合,提供了便捷的云产品日志接入方式。用户可以直接将各云产品的审计数据采集到SLS侧进行后续的分析处理。支持的接入的云产品列表也在持续增加中。最新数据详见:

  • 云产品接入覆盖。
  • 日志审计服务覆盖。

数据加工

数据加工是SLS推出的一项可托管、高可用、可扩展的数据处理服务,主要对结构化或非结构化的日志进行实时的ETL处理。该功能目前包含200+算子,广泛应用与数据规整、数据聚合、富化、分发、汇总等场景。数据加工提供的数据脱敏算子,可以有效地减少敏感数据在加工、传输、使用等环节中的暴露,降低敏感数据泄露的风险,保护用户权益。常见脱敏场景有为手机号、银行卡号、邮箱、IP、AK、身份证号网址、订单号、字符串等敏感信息脱敏。​SIEM场景下,往往需要采集多种数据源的数据(格式可能比较杂乱),同时也有长时间跨度、海量数据的分析需求,而数据加工通过Schema On Write的方式提前进行数据规整,能够为后续的分析处理提供很大的便捷。

日志审计

日志审计服务是在SLS平台能力基础上提供的一款审计服务,支持多账户场景下实时自动化、中心化地采集阿里云上的云产品日志。具有如下优点:

  • 丰富的云产品支持,目前覆盖基础(ActionTrail、容器服务Kubernetes版)、存储(OSS、NAS)、网络(SLB、API网关)、数据库(关系型数据库RDS、云原生分布式数据库PolarDB-X 1.0、云原生数据库PolarDB)、安全(WAF、DDoS防护、云防火墙、云安全中心)。
  • 跨账号:与阿里云资源目录集成,支持将多个主账号下的日志采集到一个中心主账号下。
  • 一键式采集:一次性配置采集规则后,即可完成自动实时发现新资源并实时采集日志。
  • 中心化存储:将采集到的日志存储到某个地域的中心化Project中,方便后续查询分析、可视化与告警、二次开发等。
  • 丰富的内置告警规则,一键建立安全防护网。
  • 生态开放对接:与开源软件、阿里云大数据产品、第三方SOC软件无缝对接,充分发挥数据价值。

查询分析能力

查询分析引擎

SLS以SQL作为查询和分析框架,同时在框架中融入PromQL语法和机器学习函数。可以说:SLS SQL = Search + SQL92(Agg,WIndow,GroupBy…)+ PromQL + …在下图的例子中:

  • 先通过调用promql算子拿到主机每分钟的监控值。
  • 通过窗口函数对原始数据进行降采样,例如变为每秒的数值。
  • 通过外层的预测函数对查询结果进行预测。

机器学习加持

SLS内置了大量基于AI的巡检、预测、聚类、根因分析等算法,以SQL/DSL函数的形式向用户提供,在人工分析和自动巡检告警中都能使用到。

交互式可视化

SLS提供的可视化功能基于SLS统一的查询分析引擎,以图表的形式将查询与分析结果呈现出来,清晰呈现全局态势。同时,也可以与第三方可视化工具对接。

威胁探测和响应

智能告警运维系统

SLS告警是在SLS云原生可观测性平台上提供的一站式智能运维告警系统。它提供对日志、时序等各类数据的告警监控,亦可接受三方告警,对告警进行降噪、事件管理、通知管理等,新增40+功能场景,充分考虑研发、运维、安全以及运营人员的告警监控运维需求。​通过告警监控规则配置,定期检查评估,查询统计源日志、时序存储,按照监控编排逻辑评估结果,并触发告警或恢复通知。​SLS告警提供了超过数百个内置告警规则,开箱即用并持续增加中。这些规则库有覆盖了CIS(覆盖了账号安全、数据库安全等)和安全场景的最佳实践,用户仅需开启对应规则,即可享受到全天候的安全保障。​当告警规则探测到异常发生时,需要尽快的将威胁事件通知给相应的开发人员。SLS提供了丰富的通知渠道,便于威胁事件的全方位触达。当开发人员接收到告警事件通知后,需要采取一系列的事件管理动作,例如事件确认、指派处理人、处理动作记录等。告警

威胁情报

Gartner将威胁情报定位为某种基于证据的知识,包括上下文、机制、标示、含义和能够执行的建议。威胁情报描述了现存的、或者是即将出现针对资产的威胁或危险,并可以用于通知主体针对相关威胁或危险采取某种响应。业内大多数所说的威胁情报可以认为是狭义的威胁情报,其主要内容为用于识别和检测威胁的失陷标识,如文件HASH,IP,域名,程序运行路径,注册表项等,以及相关的归属标签。​威胁情报服务是阿里云提供的情报安全服务,结合威胁情报数据,通过对威胁来源进行实时自动化采集、分析、分类与关联,评估企业资产中存在的威胁并为改善安全状况提供建议。阿里云威胁情报服务可以展示了近30天全球所有网上用户和客户企业已遭受的威胁统计数据,目前支持针对IP、域名、文件提供威胁情报。​SLS日志审计服务与威胁情报服务深度集成,利用威胁情报服务提供的全球威胁情报评估能力,支持对接入SLS的多种云产品日志(ActionTrial、SLB、OSS、SAS等)进行威胁情报检测,有效识别云产品使用过程中存在的潜在威胁。也支持以告警方式将检测到的异常及时通知给相关的安全人员,从而提升威胁检查效率和响应速度。​下图展现了如何通过SLS日志审计服务进行云产品的威胁情报探测及响应的流程。

与第三方SIEM/SOC平台集成

SLS提供了与第三方SIEM方案(例如Splunk)对接的方式,以便确保阿里云上的所有法规、审计、与其他相关日志能够导入到用户的安全运维中心(SOC)中。针对于Splunk对接的场景,SLS提供了Alibaba Cloud Log Service Add-on for Splunk,便于用户方便部署。

发表评论