1. 背景形势
近年来,随着云计算的广泛应用和企业上云的深度普及,许多企业或个人用户将各种日志托管在云上进行留存,从而进行查询、审计等操作。什么是日志审计?为什么要做日志审计?企业如何落地云上日志审计方案?带着这些问题出发,本文将以阿里云日志服务(SLS)旗下的日志审计服务为视角切入,带领读者从当今网络安全形势和法律法规要求出发,解读云计算背景下,如何构建、运行、实践一个标准的企业级云上审计方案,从而更好地保障企业或组织的云上资产、云上数据的安全,确保企业业务持续安全稳定地运行。
2. 日志审计是法律刚需
网络安全和数据安全是数字经济时代最重要的安全支撑,日志审计是《网络安全法》、《数据安全法》等法律法规的刚需要求。例如《网络安全法》第二十一条第三小节中明确规定了“采取监测、记录网络运行状态、网络安全事件的技术措施,并按照规定留存相关的网络日志不少于六个月"。企业或组织在运行过程中,为了完成基础设施的安全维护、用户信息权益的保护,保障企业的网络数据安全,需要始终贯彻和落实以《网络安全法》、《数据安全法》为代表各种法律法规的要求,在生产实践中,按照《信息安全技术-网络安全等级保护基本要求》进行企业安全定级、根据企业对应的等级进行备案,完成整改和测评工作,始终落实自查自纠和接受相关行业机关的督查和测评。
例如,上海市通信管理局发布了关于开展 2023 年上海市电信和互联网行业网络和数据安全检查的通知(以下简称“通知”),该通知对公共互联网网络信息服务的基础电信企业、互联网企业、域名注册服务机等公司或组织如何开展落实网络和数据安全工作的建设、管理等详细工作提供了指导性意见。
3. 日志审计合规基础
企业或组织在业务运行过程中,会存在用户级操作行为,例如控制台操作,OpenAPI 调用等,这些行为会创建或改变用户的资源、配置,用户需要开启操作审计(Actiontrail)、配置审计(CloudConfig)等审计资源的日志的采集功能,通过对用户侧或平台侧事件的行为审计,记录并挖掘用户的资源配置变更和资源不合规事件,补全用户行为分析这块拼图,构建云计算平台操作者的行为画像。
业务的运行也伴随着大量的数据库操作、网络行为、安全攻防事件等。日志审计支持数据库类审计日志的采集,包括审计业务侧的 DML 和 DDL 日志,从而将 RDS、PolarDB、DRDS 等数据库的具体 SQL 信息进行转存、排查、识别等,完成完整的数据库洞察分析。日志审计服务也可以开启网络行为的记录采集,其中包括负载均衡访问日志(ALB/CLB)、VPC (ENI/VSwitch/VPC )的流日志、内网 DNS 的解析请求和应答日志等,这些云产品日志是网络安全分析的基石。日志审计服务还可以开启Web访问及攻击防护日志、云防火墙互联网流量及 VPC 流量日志、DDoS防护日志、云上资产安全、网络、主机等日志。这些安全攻防日志,可以记录云上域名访问、流量流向、威胁攻击及处理行为,记录服务器的安全隐患,实现对云上安全资产的集中安全管理。
此外,日志审计服务也可以开启 OSS 对象存储、 NAS 文件存储的日志审计日志,记录具体的访问和操作、读取、写入等行为,实现对阿里云存储产品的日志审计。
日志审计是企业或组织客户安全合规依赖的基础,是安全防护的重要一环。很多企业或组织自身具备成熟的合规审计团队,企业或组织可以在日志审计中配置所需要采集的云产品日志,从而审计或安全团队可以直接消费 SLS 日志审计服务采集到的日志,构建并输出合规的审计信息,从而完成安全审计流程,为企业云上安全持续护航。或者将 SLS 日志审计采集到的日志投递到远程 SIEM 端,通过成熟的安全事件响应分析系统进行高效快速的威胁检测,智能分析等。
4. 日志审计功能优势
日志审计服务依托于阿里云日志服务平台的强大能力,除了可以自动化管理日志使用户脱离手工维护日志外,还具备以下天然能力:
- 日志存储能力,每一条日志具有完整的存储生命周期,支持智能分层存储,减轻用户存储成本,用户可以在日志审计页面一键式设置存储天数和冷存天数,后续日志审计还计划支持归档存储,进一步减轻用户成本压力。
- 阿里云日志服务对复杂 SQL 进行了从存储层到 SQL 解析层的全链路优化,支持秒级查询千亿行日志,支持秒级处理十亿行日志,支持大规模复杂查询。
- 用户可以通过日志服务的数据加工服务进行数据的规整、富化、流转、脱敏和过滤等操作,从而完成数据规整,数据分派,数据融合等目标。
- 日志服务告警是一站式的告警、监控、降噪、事务管理、通知分派的智能运维平台,企业或组织用户可以在日志审计服务采集到的日志基础上进行告警管控、通知处理等行为。
- 日志服务支持可视化地展示用户的查询与分析结果。企业或组织用户可以根据分析需求选用合适的统计图表类型展示查询和分析结果,并将结果保存到实时刷新的仪表盘中。此外,企业或组织用户还可以将日志服务与第三方可视化工具对接。
- 日志服务提供数据实时消费功能,支持通过SDK实时消费数据。日志服务提供投递功能,支持通过控制台将数据实时投递至OSS、MaxCompute等阿里云产品。日志审计服务采集的日志均支持用户进行自定义消费或投递等行为,可以通过 https、syslog 等协议投递到远程 SIEM 端,也支持 Splunk 的 add on 插件。
除此之外,日志审计还具备其独有的功能优势:
- 丰富的云产品日志类型生态,日志审计支持 50 多种云产品日志类型,具体的云产品资源覆盖及地域覆盖可以参照文档。
- 实例的自动发现和日志的自动采集,打开云产品日志采集开关后,后续如果新增云产品实例,只要满足采集条件(如用户自定义采集策略限制)日志审计将会自动地将云产品实例对应的日志采集进来,无需用户手动操作。
- 中心化能力,日志审计可选日志区域化存储,更支持通过自动创建数据加工将日志存储到同一中心区域,在该中心project下进行统一查询分析,报表展示、告警配置等。
- 日志审计支持跨账号采集云产品日志,对于多账号用户来说,可以将不同账号下的日志采集到同一中心账号下,其他账号作为该中心账号的成员账号,实现跨账号的日志汇总和管理。
- 日志审计支持通过Terraform的方式进行采集编排和管理。
- 日志审计还支持丰富的内置报表、内置告警规则等功能。
5. 一站式开启
5.1 审计云产品覆盖概览
在前文已经介绍,日志审计支持 50 多种云产品日志类型,具体的使用限制和支持地域请参见概述文档。每一种日志类型所采集的日志字段可以参见汇总文档。
类型 |
日志类型 |
|
基础 |
操作审计 (ActionTrail) |
IAM/RAM登录日志、资源操作日志、OpenAPI的操作行为 |
配置审计 (CloudConfig) |
配置变更、资源合规日志 |
|
网络 |
SLB |
访问日志 |
ALB |
访问日志 |
|
VPC Flow |
网络流日志 |
|
DNS |
内网DNS解析请求和响应日志 |
|
安全 |
WAF(Web应用防火墙) |
访问日志、攻击日志 |
DDOS高防(原生/新BGP版/国际版) |
访问与攻击日志 |
|
DDoS原生防护 |
访问与攻击日志 |
|
云安全中心 |
15类日志 (主机7类, 网络- DNS/ Web/Session,基线/告警/漏洞日志、对ECS主机内或网络层的操作日志 |
|
云防火墙 |
互联网流量日志 |
|
堡垒机 |
操作命令日志 |
|
IDaaS(应用身份服务) |
用户行为和管理日志 |
|
PAM(特权访问管理中心) |
运维审计、操作审计日志 |
|
数据库 |
RDS(MySQL、PG) |
SQL审计日志、慢日志、性能日志、错误日志 |
Polardb(MySQL) |
SQL审计日志、慢日志、性能日志、错误日志 |
|
PolarDB-X1.0(原DRDS) |
SQL审计日志 |
|
存储 |
OSS |
资源操作, 数据操作, 数据访问日志, 计量日志、过期文件删除日志, CDN回流日志 |
NAS |
访问日志 |
|
工具 |
API网关 |
访问日志 |
应用 |
移动推送(国内) |
推送回调事件 |
应用集成(国内) |
操作日志 |
5.2 自动化和中心化
日志审计服务的自动化主要体现在两个方面:
1.日志自动化采集,一旦在日志审计服务中开启对应的云产品日志类型的采集,将会自动将该中心账号及全局配置的成员账号的云产品日志持续地从云产品侧投递到用户侧,当用户关闭采集,配置生效后,将停止投递。
2.实例自动化发现,对于 RDS、VPC、ALB、SLB、IDaaS 等实例粒度开启的日志投递,日志审计服务默认采集所有符合限定条件的云产品日志,只要用户所配置的账号下有实例新增,用户无需手动更改日志审计的配置,日志审计会及时地发现实例的变更,自动地开启对应实例的日志采集,采集到日志审计专属日志库下。
3.实例的自动过滤,用户可以通过配置采集策略,对账号、地域或实例等因素进行限制,从而实现精细化的日志采集目的。一旦配置采集策略规则后,只有满足采集策略的实例才将被自动采集到日志审计专属库下,而不满足采集策略的实例,会被自动过滤掉,从而降低了用户的采集成本。
日志审计的中心化功能主要是基于数据加工,从各个阿里云账号、各个地域采集到的日志,会存储到中心账号下的一个中心Project中,目前中心化存储可供选择的地域如下所示。
- 中国:华北1(青岛)、华北2(北京)、华北5(呼和浩特)、华北6(乌兰察布)、华东1(杭州)、华东2(上海)、华南1(深圳)、中国(香港)
- 海外:新加坡、日本(东京)、德国(法兰克福)、印度尼西亚(雅加达)
针对SLB、ALB、OSS、PolarDB-X 1.0、VPC和DNS,日志审计服务支持将各个配置的主账号(中心账号和成员账号)采集到的日志区域化存储到中心主账号下的各个与SLB、ALB、OSS、PolarDB-X 1.0和VPC实例处于相同地域的日志服务Project中(例如:杭州的OSS访问日志,存储到杭州的日志服务Project中)。
针对SLB、ALB、OSS、PolarDB-X 1.0、VPC和DNS的区域化存储,支持将各个地域的Logstore 中心化同步到一个中心化的Logstore中,以便做中心化查询、分析、告警、可视化、二次开发等。
另外需要特别注意的是,企业或组织在进行中心化选择时,需要特别注意其面对的法律法规要求和监管规范,例如评估是否允许数据进行跨境传输等。
6. 多账号管理
日志审计支持用户自定义鉴权和基于资源目录的组织关系进行多账号配置两种方式,在这里需要强调两个概念,中心账号和成员账号。对于日志审计而言,中心账号和成员账号都是主账号的层面,只是用户可以通过多账号配置下自定义鉴权或基于资源目录组织关系鉴权等手段,使得成员账号的日志也会被采集到中心账号下。
例如成员账号 A 下有 RDS 实例,并且有用户进行了数据库 DML 等操作,成员账号 B 下有 ALB 实例,且存在负载均衡的监听访问行为,因为中心账号配置了 成员 A 和成员 B,则成员账号 A 的 RDS 审计日志会被采集到中心账号下,成员账号 B 的 ALB 访问日志也会被采集到中心账号下的 Project 里。
日志审计服务支持跨账号采集云产品日志,用户可以通过资源目录管理模式完成多账号配置。其中资源目录管理模式是通过日志审计服务集成了阿里云资源目录实现的。关于资源目录的更多信息,可以参见什么是资源管理。
6.1 资源目录管理
用户可以通过管理账号或者委派管理员账号将企业内其他阿里云账号添加为成员,从而实现跨阿里云账号采集云产品日志。日志审计支持两种资源目录管理模式:全员和自定义,其具体功能说明参见下表。
方式 |
类型 |
说明 |
资源目录管理模式 |
全员 |
日志审计服务自动将资源目录下的所有成员纳入到采集名单中,并采集这些成员中已开启日志采集功能的云产品的日志。
|
自定义 |
您可以自定义选择目标成员到采集名单中,日志审计服务会采集这些成员中已开启日志采集功能的云产品的日志。
|
6.2 自定义鉴权管理
用户可以通过自定义鉴权的方式配置多账号日志采集。其鉴权的步骤主要分为以下几步:
- 成员账号创建AliyunLogAuditServiceMonitorAccess 权限策略,并按照文档要求填写具体的权限行为和资源信息;
- 成员账号创建基于日志服务受信的 sls-audit-service-monitor 服务角色,并将AliyunLogAuditServiceMonitorAccess 策略授权 sls-audit-service-monitor角色;
- 成员账号将sls-audit-service-monitor角色的信任策略替换为中心主账号ID@log.aliyuncs.com和log.aliyuncs.com。
- 中心账号在日志审计多账号配置控制台添加成员账号阿里云 ID。
7. 其他功能
7.1 Terraform 集成
Terraform是一种开源工具,可用于安全高效地预览、配置和管理云基础架构和资源。Terraform 具有适配于多云环境,可重复、可预测的方式配置资源,支持通过代码来管理和维护资源,具有较低的开发成本。日志审计集成了 Terrafrom,用户可以在 Terraform 中配置日志审计服务,控制日志的开启、关闭、采集、日志的存储周期等功能,更多细节可以参见使用 Terraform 配置日志审计服务。
7.2 内置报表
日志审计内置 100+报表,提供专业的可视化分析能力,用户可以直接使用。
7.3 内置告警
日志审计内置 100+告警规则,告警规则均依照CIS基准,提供内置的日志内容威胁风险检测和告警通知能力,用户可以直接开箱即用,快速配置开启,从而有助于快速发现日志审计合规问题。