基于SLS平台与日志审计构建Cloud SIEM方案

本文涉及的产品
对象存储 OSS,20GB 3个月
阿里云盘企业版 CDE,企业版用户数5人 500GB空间
云备份 Cloud Backup,100GB 3个月
简介: 本文介绍如何基于SLS平台与日志审计构建Cloud SIEM方案。

什么是SIEM?

SIEM的定义

安全事件和事件管理(security information and event management,SIEM)通过对来自各种数据源安全事件的收集和分析,来实现威胁检测、安全事件管理和合规性检测。SIEM是在安全信息管理(SIM)——收集、分析并报告日志数据,与安全事件管理(SEM)——实时分析日志和事件数据以提供威胁监视、事件关联和事件响应的基础上发展而来的。


Gartner发布的2021年度SIEM市场魔力象限分析报告中,对SIEM市场给出了新的定义:

  • 实时收集安全事件日志和telemetry数据(流和数据包),用于威胁检测和合规性用例;
  • 实时并持续分析数据,以检测攻击和其他感兴趣的活动;
  • 调查安全事件以确定其潜在的严重性和对业务的影响;
  • 报告上述活动;
  • 存储相关事件和日志。

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

SIEM魔力象限

魔力象限是Gartner对行业中的供应商进行评估比较的一个工具,基于行业市场中各供应商的执行力和前瞻性表现,生成魔力象限图和相应的分析报告。其中,纵轴为供应商的“执行力”(Ability to Execute),用于评估供应商将其愿景变成市场现实的能力;横轴为供应商的“前瞻性”(Completeness of Vision)。最终,结合企业的执行力和前瞻性评估,将供应商划分到领导者(LEADERS)、挑战者(CHALLENGERS)、有远见者(VISIONARIES)和特定领域者(Niche Players)四个象限。


上图为Gartner给出的SIEM魔力象限,接下来将就重点介绍几个重要的厂商。

重要的SIEM厂商

Exabeam是魔力象限的领导者。Exabeam 的 SIEM 解决方案可作为 SaaS(Exabeam Fusion SIEM)使用,也可用于混合、联合部署。它包括 Exabeam数据湖、高级分析、威胁捕获、实体分析、案例管理和事件响应。基于定制部署的模块化架构,用户可以灵活购买。Exabeam 的机器学习 (ML) 驱动的用户和实体行为检测,能为用户提供风险评分和自动的上下文富化能力。

Securonix在魔力象限处于领先地位。 其SIEM解决方案包括下一代 SIEM、安全数据湖、UEBA、SOAR、NDR、威胁情报、对手行为分析和几个特定于用例的应用程序。在数据隐私控制、威胁情报方面有很好的支持。

Splunk是魔力象限的领导者。Splunk 的安全产品组合连续多年被 Gartner 市场研究公司评为业界领先技术。通过“将数据转化为一切(Data-to-Everything)”平台,提供了一整套融合了SIEM、UEBA、SOAR的完整解决方案。

Elastic处于魔力象限中特定领域者的位置。Elastic以开源为基础,通过Logstash、Elasticsearch、Kibana组合奠定了数据的基本采集、分析、可视化能力。其中,Logstash作为一个日志聚合器,可以收集和处理来自几乎任何数据源的数据;Elasticsearch是存储引擎,用于解析大量数据;Kibana作为可视化层,用于可视化处理及问题分析。Elastic 7.14 版发布了首个免费开放的Limitless XDR,能够在一个平台中提供一体化的 SIEM 和 Endpoint Security 功能。

SLS与Splunk功能对比

注意:Splunk在平台基础上提供了开箱机用的解决方案(如其完整的SIEM、UEBA、SOAR方案等),SLS更多是一个平台提供这方面的支撑和二次定制与开发。本文主要就平台层面做一些对比和参考。

Splunk Data-to-Everything平台

Splunk提供了一整套强大的“Splunk Data-to-Everything平台”,助力用户冲破数据和行动之间的障碍,赋权IT、安全、物联网和业务运营团队,使其能够实时了解业务、将数据转化为业务成果。该平台主要包括:

  • Data Stream Processor提供了一个实时流处理解决方案,实现了数据的统一收集、处理,并支持多云。
  • 高可用且能够按照需求弹性扩展的集群架构,快速响应业务的发展变化。
  • 灵活的SPL语句实现了在长时间跨度、海量数据中快速搜索,实现高效的问题分析和原因定位。
  • Schema on read设计可将数据应用于某项schema,将数据处理从入库切换为出库时进行,从而实现数据的快速提取。
  • 监控分析应用和集中控制台,及时发现预警过程中出现的异常,并发出通知。
  • 基于角色访问控制,提供应用、仪表板、视图乃至字段级别的数据访问控制,保障用户访问和数据使用的安全性
  • 借助ML、SPL,提供开箱即用的AI功能。
  • 提供了完备的安全编排、自动化和响应(SOAR)解决方案,帮助用户实现了更多安全操作的自动化。

基于此平台,可为IT、安全、Observability(可观察性)等方面的决策、问题和行动提供数据支持。

SLS 云原生可观测平台

SLS作为阿里巴巴、蚂蚁等日志中台产品,同时服务阿里云上万级客户的基础产品,每天处理几十PB 日志/Metric/Trace数据,为AIOps、大数据分析、运营服务、大数据安全等场景提供支撑,解决工程师可观察性的问题。

SLS核心平台能力在于围绕可观察性的各种监控数据,提供统一的存储与计算能力。

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

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

SLS、Splunk平台功能对比

比较中红色字体表示更优。

分类

比较项

SLS

Splunk Cloud

Splunk On-Prem

基础框架

服务、存储可用性

SLA:服务3个9,存储11个9

对外宣称100%可用

支持集群分布式,多备份部署

价格

弹性价格,基于存储(支持冷热存储)、流量与索引按量收费。

按照节点、负载、导入量按量收费。但Forwarder需自建

根据每日最大导入量来订阅不同规格的软件费,硬件存储等需自购

数据可扩展性

PB级别

TB级别

PB级别

数据导入

主机、应用

通过logtail采集主机、应用日志,支持日志、metric的采集。

Splunk forwarder提供了基本数据接入能力,Splunkbase中有很多针对主机、应用的提供的开箱即用的集成插件或APP;除此以外,还提供了Splunk Insights服务器安全监控解决方案。

标准协议

丰富的生态支持,标准协议、开源软件都有很好的支持。

Splunkbase中提供的开箱即用的集成插件或APP

云服务(阿里云)数据

目前已支持40+云产品的数据接入。推出的日志审计服务提供了跨账号、跨地域采集的能力。

仅SLS提供Alibaba Cloud Log Service Add-on for Splunk可用,用于将SLS的数据投递到Splunk。

云服务(AWS、Azure)数据

支持CloudWatch告警的开箱机用接入,其他类型可通过API/SDK或三方工具接入。

提供大量由官方或三方开发的集成插件或App

数据处理

数据流式处理

通过数据加工,对结构化或非结构化的日志进行实时处理。目前已包含200+算子,开箱即用,免运维,无代码。

通过Data Stream Processor提供了实时流处理解决方案,支持客户多云策略。

数据 Roll-up & 聚合

实时日志采集提供日志聚类功能,精度可调整。

Schedued SQL也提供了数据聚合的功能。

可通过metric store做特定数据的聚合,或通过Summary Index与数据建模做特定加速聚合。

查询分析

查询分析语法

以SQL作为基础的查询和分析框架,同时在框架中融入PromQL语法和机器学习函数。

SPL 提供 140 多种命令,可用于搜索、关联、分析和可视化任何数据。schema on read的设计,能够实现数据的快速提取。

机器学习

内置了大量基于AI的巡检、预测、聚类、根因分析等算法,以SQL/DSL函数的形式向用户提供。

提供独立的ML工具包,覆盖主流场景的算法,有独立的交互与SPL扩展。

可视化

丰富的可视化与drill-down功能,也可以与第三方可视化工具(Grafana等)对接

丰富的可视化与drill-down功能,支持三方扩展,并提供相关应用市场。

告警及On-Call

告警监控

基于SQL/PromQL进行监控,支持机器学习增强。支持跨区域、跨库协同能力。并扩展支持动态标签/标注、动态严重度、无数据与恢复告警等。

整体基于SPL监控,不直接支持动态标签/标注、动态严重度、无数据与恢复告警等。

通知渠道

丰富的渠道支持,短信、语音、邮件、Webhook(钉钉、企业微信、飞书、Slack、通用Webhook)

丰富的渠道支持email/SMS/chat/phon/Slack/WeChat等,并提供相关官方或三方扩展。

告警管理降噪

基于指纹的告警去重,完善的抑制、静默、去重机制。

平台告警功能本身不直接支持告警降噪管理。上层方案如ITSI/ES有相应功能。

On-Call管理

提供完整的响应支持,包括值班、轮岗与通知触达,告警升级以及事务操作等。

通过Splunk On-Call(VictorOps)提供完整的响应支持,包括值班、轮岗与通知触达,告警升级以及事务操作等。

编排自动化

支持触发FC,WebHook触发等;也支持编程方式消费告警事件。内置自动化编排模块较少。

通过Splunk Phantom提供完整的响应自动化编排能力,包括威胁情报集成、审批流程、上下文富化、playbook以及相关生态市场。

生态系统

Add-on/内置App

提供了丰富的APP用于接入各类数据,并提供了开箱即用的方案。数据源的覆盖度,正在不断增加中。

提供上千个由官方或三方开发的针对不同数据源或应用的集成插件或App,可提供开箱即用的方案。

基于上述的比较,在构建SIEM解决方案所关注的功能点上,SLS已经具备了相对完整的能力,甚至有些方面(例如,服务可用性、价格、数据处理分析能力、告警管理等)都有不错的表现。接下来,重点介绍如何使用SLS构建SIEM方案。

SLS特性及场景支持

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,便于用户方便部署。

参考文档

Gartner SIEM 2021 - SIEM Gartner Magic Quadrant

Splunk Data-to-Everything,平台的力量

Splunk .conf20发布

Splunk依托数据实现主动安全

SLS构建可观察性数据中台















相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
4天前
|
存储 监控 安全
日志审计是什么?为什么企业需要日志审计?
日志审计是对信息系统中产生的日志进行收集、分析和存储的过程,记录系统活动如用户登录、操作行为等。企业通过日志审计可满足合规要求(如金融、医疗行业的法规),及时发现安全威胁(如异常登录、数据泄露),并为事故调查提供依据。工具如EventLog Analyzer能帮助企业生成合规报表,确保符合PCI DSS、HIPAA等标准,并支持实时监控与存档分析,保障网络安全与数据隐私。
|
2月前
|
XML 安全 Java
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
本文介绍了Java日志框架的基本概念和使用方法,重点讨论了SLF4J、Log4j、Logback和Log4j2之间的关系及其性能对比。SLF4J作为一个日志抽象层,允许开发者使用统一的日志接口,而Log4j、Logback和Log4j2则是具体的日志实现框架。Log4j2在性能上优于Logback,推荐在新项目中使用。文章还详细说明了如何在Spring Boot项目中配置Log4j2和Logback,以及如何使用Lombok简化日志记录。最后,提供了一些日志配置的最佳实践,包括滚动日志、统一日志格式和提高日志性能的方法。
696 31
【日志框架整合】Slf4j、Log4j、Log4j2、Logback配置模板
|
1月前
|
监控 安全 Apache
什么是Apache日志?为什么Apache日志分析很重要?
Apache是全球广泛使用的Web服务器软件,支持超过30%的活跃网站。它通过接收和处理HTTP请求,与后端服务器通信,返回响应并记录日志,确保网页请求的快速准确处理。Apache日志分为访问日志和错误日志,对提升用户体验、保障安全及优化性能至关重要。EventLog Analyzer等工具可有效管理和分析这些日志,增强Web服务的安全性和可靠性。
|
3月前
|
XML JSON Java
Logback 与 log4j2 性能对比:谁才是日志框架的性能王者?
【10月更文挑战第5天】在Java开发中,日志框架是不可或缺的工具,它们帮助我们记录系统运行时的信息、警告和错误,对于开发人员来说至关重要。在众多日志框架中,Logback和log4j2以其卓越的性能和丰富的功能脱颖而出,成为开发者们的首选。本文将深入探讨Logback与log4j2在性能方面的对比,通过详细的分析和实例,帮助大家理解两者之间的性能差异,以便在实际项目中做出更明智的选择。
402 3
|
16天前
|
SQL 关系型数据库 MySQL
MySQL事务日志-Undo Log工作原理分析
事务的持久性是交由Redo Log来保证,原子性则是交由Undo Log来保证。如果事务中的SQL执行到一半出现错误,需要把前面已经执行过的SQL撤销以达到原子性的目的,这个过程也叫做"回滚",所以Undo Log也叫回滚日志。
MySQL事务日志-Undo Log工作原理分析
|
1月前
|
存储 监控 安全
什么是事件日志管理系统?事件日志管理系统有哪些用处?
事件日志管理系统是IT安全的重要工具,用于集中收集、分析和解释来自组织IT基础设施各组件的事件日志,如防火墙、路由器、交换机等,帮助提升网络安全、实现主动威胁检测和促进合规性。系统支持多种日志类型,包括Windows事件日志、Syslog日志和应用程序日志,通过实时监测、告警及可视化分析,为企业提供强大的安全保障。然而,实施过程中也面临数据量大、日志管理和分析复杂等挑战。EventLog Analyzer作为一款高效工具,不仅提供实时监测与告警、可视化分析和报告功能,还支持多种合规性报告,帮助企业克服挑战,提升网络安全水平。
|
3月前
|
存储 缓存 关系型数据库
MySQL事务日志-Redo Log工作原理分析
事务的隔离性和原子性分别通过锁和事务日志实现,而持久性则依赖于事务日志中的`Redo Log`。在MySQL中,`Redo Log`确保已提交事务的数据能持久保存,即使系统崩溃也能通过重做日志恢复数据。其工作原理是记录数据在内存中的更改,待事务提交时写入磁盘。此外,`Redo Log`采用简单的物理日志格式和高效的顺序IO,确保快速提交。通过不同的落盘策略,可在性能和安全性之间做出权衡。
1780 14
MySQL事务日志-Redo Log工作原理分析
|
2月前
|
消息中间件 存储 监控
微服务日志监控的挑战及应对方案
【10月更文挑战第23天】微服务化带来模块独立与快速扩展,但也使得日志监控复杂。日志作用包括业务记录、异常追踪和性能定位。
|
2月前
|
存储 监控 安全
什么是日志管理,如何进行日志管理?
日志管理是对IT系统生成的日志数据进行收集、存储、分析和处理的实践,对维护系统健康、确保安全及获取运营智能至关重要。本文介绍了日志管理的基本概念、常见挑战、工具的主要功能及选择解决方案的方法,强调了定义管理目标、日志收集与分析、警报和报告、持续改进等关键步骤,以及如何应对数据量大、安全问题、警报疲劳等挑战,最终实现日志数据的有效管理和利用。
219 0
|
4月前
|
Kubernetes API Docker
跟着iLogtail学习容器运行时与K8s下日志采集方案
iLogtail 作为开源可观测数据采集器,对 Kubernetes 环境下日志采集有着非常好的支持,本文跟随 iLogtail 的脚步,了解容器运行时与 K8s 下日志数据采集原理。

相关产品

  • 日志服务