CIS Control 8 简介
CIS Control 8 Center for Internet Security (CIS) 第 8 版 涵盖审计日志管理。 (在第 7 版中,本主题由 Control 6 涵盖。)该安全控制详细说明了建立和维护审计日志的重要保障措施,包括日志的收集、存储、时间同步、保留期限和审阅。
在系统实施过程中,会独立配置两种类型的日志:
- 系统日志 提供有关系统级事件的数据,例如进程的开始和结束时间。
- 审计日志 包含登录和文件访问等用户级事件。审计日志对于调查网络安全事件至关重要,并且与系统日志相比需要投入更多的配置工作。
日志管理
由于 IT 环境会产生大量事件,你需要进行日志管理,以确保捕获有价值的信息并能够快速分析。所有软件和硬件资产(包括防火墙、代理、VPN 以及远程访问系统)都应配置为保留有价值的数据。
此外,最佳实践建议组织定期扫描其日志,并将其与 IT 资产清单进行对比(该清单应根据 CIS Control 1 编制),以评估每项资产是否都在与您的网络保持活动连接,并按预期生成日志。
有效的日志管理中一个经常被忽视的方面是:需要让所有系统都与中央的 Network Time Protocol (NTP) 服务器进行时间同步,以建立清晰的事件顺序。
日志管理的作用
日志管理包括收集、审查和保留日志,以及对网络或系统中的可疑活动发出告警。妥善的日志管理有助于组织发现出现在系统日志中的数据泄露或攻击的早期迹象。
它还帮助他们调查并从安全事件中恢复。审计日志(Audit logs)提供达到法证级别的详细线索,包括对攻击者来源、身份和方法论的逐步记录。审计日志对于事件法证同样至关重要,它能告诉你攻击何时、如何发生,访问了哪些信息,以及数据是被窃取还是被销毁。日志也对后续调查必不可少,并可用于定位任何已持续运行数周或数月而未被发现的攻击的起始时间。
以下是对 CIS Control 8:Audit Log Management 的拆解说明,以指导你的合规工作。
保障措施 8.1:建立并维护审计日志管理流程
建立并维护一个审计日志管理流程,用于定义企业的日志记录需求。至少应涵盖企业资产的审计日志的收集、审查和保留。每年至少审查并更新相关文档,或在发生可能影响该保障措施的重大企业变更时及时更新。
为什么需要审计日志记录?
审计日志会捕获并记录整个网络中 IT 设备的事件和变更。至少,日志数据应包含:
- 组 — 发起该活动的团队、组织或账号
- 主体 — 负责执行该操作的账号的 UUID、用户名和 API 令牌名称
- 事件名称 — 特定事件的标准名称
- 描述 — 面向人类阅读的说明,可能包含指向相关信息的链接
- 操作 — 对象如何被更改
- 操作类型 — 操作的类型,例如创建、读取、更新或删除
- 何时 — 经 NTP 同步的时间戳
- 何处 — 原产国、设备 ID 号或来源 IP 地址
系统管理员和审计人员使用这些信息来检查可疑的网络活动并排查问题。日志为正常行为提供基线,并帮助了解异常行为。
审计日志的优势
审计日志具有以下优势:
- 基于对活动的洞察所带来的安全性提升
- 证明符合 HIPAA 和 PCI DSS 等标准与法规
- 风险管理,用于控制风险水平,并向利益相关方展示尽职调查
审计日志记录的四个步骤
步骤 1:盘点您的系统和硬件,并建立初步优先级。
盘点网络内的所有设备和系统,包括:
- 计算机
- 服务器
- 移动设备
- 文件存储平台
- 防火墙、交换机和路由器等网络设备
为每个资产中存储的数据赋予价值。考虑这些资产所承担角色的价值,以及数据对业务目的的重要性(关键程度)。目标是为每个资产制定用于未来评估的风险估算。
步骤 2:整合并替换资产。
使用资产清单来评估老化的设备和平台是否需要更换。将实施替换或整合平台所需的预计时间纳入计划,并以最终目标为审计你的环境(auditing your environment)。
确定哪些资产可以轻松完成审计,以及哪些资产需要额外的审计工作。记录所有内容,以衡量进度,并为审计人员(auditors)创建参考资料。
步骤 3. 将剩余资源按可审计性从高到低进行分类。
检查剩余系统,并确定它们与数据存储或访问控制之间的关系。根据预计的审计可能性对资产进行分类。确保风险或价值最高的信息存储在最容易审计的系统中。
步骤 4. 寻找一种审计解决方案,能够在尽可能短的时间内覆盖最多的资产。
选择解决方案时,请寻找具备广泛工具集且客户服务出色的供应商。该供应商应拥有可验证的业绩记录,能够持续交付产品增强和更新,以跟上不断变化的审计要求以及风险环境。
为简化管理,请尽量减少许可证数量、联系人以及支持安排的复杂度。此外,还应寻找符合需求的灵活授权、可扩展性以及集中式的长期存储。
保障措施 8.2:收集审计日志
收集审计日志。确保按照企业的审计日志管理流程,在企业资产范围内启用日志记录。
每个组织都应审计以下内容:
- 系统,包括所有访问端点
- 设备,包括 Web 服务器、身份验证服务器、交换机、路由器和工作站
- 应用程序,包括防火墙和其他安全解决方案
保障措施 8.3:确保审计日志有足够的存储空间
确保日志目的地保持足够的存储空间,以符合企业的日志管理流程。
存储审计日志是大多数法律法规和标准的要求。此外,需要进行日志存储以支持取证分析,从而调查并处置某一事件。
需要保留的关键数据类型包括:
- 用户 ID 和凭据
- 终端身份
- 系统配置的变更
- 事件的日期和时间
- 成功和失败的日志尝试
NIST 出版物 SP 800-92 第 5.1 节和第 5.4 节 讨论政策制定以及长期存储管理。
日志保留期限
组织政策应决定每条日志应存储数据的时长,这取决于数据的价值及其他因素:
- 不存储 — 价值不高的数据
- 仅系统级 — 对系统管理有一定价值,但不足以发送到日志管理基础设施
- 既包括系统级也包括基础设施级 — 用于保留和集中管理所需的数据
- 仅基础设施级 — 当系统日志的存储容量有限时
该策略还会为所有日志源设置本地日志轮转。你可以配置日志按计划定期轮转,以及当日志达到最大大小时进行轮转。如果日志处于不允许轻松轮转的专有格式,你必须决定是停止记录日志、覆盖最旧的条目,还是停止日志生成器。
日志保留期限取决于您业务的性质以及组织的策略。大多数企业至少会保留两个月的审计日志、IDS 日志和防火墙日志。部分法规要求的时间范围从六个月到七年不等。
如果您必须在相对较长的时间内保留日志,应为所有归档数据选择统一的日志格式,并根据预算及其他因素选择特定类型的备份介质。验证已传输日志的完整性,并将介质安全地存放在异地(offsite)。
保护措施 8.4:标准化时间同步
标准化时间同步。在支持的情况下,在企业资产中至少配置两个同步的时间源。
生成日志的每台主机都会引用本地主时钟来为事件加时间戳。如果未能将日志与中央时间源同步,可能会在对事件时间线进行取证调查时造成问题,并导致对日志数据的错误解读。对资产之间的时间戳进行同步,有助于实现事件关联分析,并形成准确的审计追踪,尤其是在日志来自多台主机的情况下。
保障措施 8.5:收集详细审计日志
为包含敏感数据的企业资产配置详细的审计日志记录。包括事件来源、日期、用户名、时间戳、源地址、目的地址,以及其他有助于取证调查的有用要素。
如果没有细节,就无法对日志进行取证分析。除了保障措施中所述的信息之外,你还需要 捕获事件条目 因为它们会提供与已发生并影响到受保护设备的特定事件相关的信息。
收集详细审计日志 用于:
- 操作系统事件 — 系统启动和关机、服务启动和关机、网络连接变更或故障,以及成功和失败的尝试来更改系统安全设置和控制
- 操作系统审计记录 — 登录尝试、登录后执行的功能、账户更改、信息和操作
每个审计日志应提供以下内容:
- 时间戳
- 事件、状态以及任何错误代码
- 服务/命令/应用程序时间
- 与该事件相关的用户或系统账户
- 使用的设备以及源 IP 和目标 IP
- 终端会话 ID
- 网页浏览器
- 按需提供其他数据
保障措施 8.6:收集 DNS 查询审计日志
在企业资产上(如适用且受支持)收集 DNS 查询审计日志。
收集 DNS 查询审计日志的重要性
收集 DNS 查询审计日志可降低 DNS 攻击造成的影响。日志事件可能包含:
- 动态更新
- 区域传送
- 速率限制
- DNS 签名
- 其他重要细节
DNS 风险与攻击
DNS 劫持 使用恶意软件修改工作站配置的名称服务器,并导致 DNS 请求发送到恶意服务器。劫持可实现网络钓鱼、DNS 投毒(pharming)、恶意软件分发,以及发布被篡改的你的网站版本。
DNS 隧道 指通过访问 DNS 查询、包含数据载荷的术语与响应:这些载荷可能用于传输恶意软件、窃取的数据、双向协议、权限以及命令与控制信息。
拒绝服务(DoS)攻击 会不断增加服务器负载,直到服务器无法响应合法请求为止。
DNS 缓存投毒(也称为 spoofing)与劫持类似:由于存在漏洞,DNS 解析器会接受无效的源记录。
保障措施 8.7:收集 URL 请求审计日志
在适用且受支持的情况下,在企业资产上收集 URL 请求审计日志。
URL 请求可能会通过查询字符串暴露信息,并将敏感数据传递到 URL 中的参数。随后,攻击者可获取用户名、密码、令牌以及其他潜在敏感信息。使用 HTTPS 并不能解决此漏洞。
与 URL 请求相关的潜在风险包括:
- 强制浏览
- 路径遍历或篡改
- 资源注入
保障措施 8.8:收集命令行审计日志
收集命令行审计日志。示例实现包括从 PowerShell®、BASH®以及远程管理终端收集审计日志。
威胁行为者可以利用不安全的数据传输方式(例如 cookies 和表单),将命令注入到 Web 服务器的系统 Shell 中。随后,攻击者会利用存在漏洞的应用程序所拥有的权限。命令注入包括直接执行 Shell 命令、向运行环境中注入恶意文件,以及利用配置文件漏洞。
与命令行漏洞利用相关的一项风险是:在操作系统上执行任意命令,尤其是在应用程序将不安全的用户提供数据传递给系统 Shell 时。
因此,组织应记录有关命令行使用情况的数据。
保障 8.9:集中管理审计日志
在可能的范围内,将企业资产的审计日志收集与保留集中起来。
黑客经常使用删除本地日志文件的手法,以消除其活动的证据。集中化且 安全的数据库能够破解这一策略,并允许对多个系统中的日志进行对比。
保障 8.10:保留审计日志
在整个企业资产范围内保留审计日志,至少 90 天。
日志保留的好处包括:在系统被入侵很久之后才发现的攻击,能够更便于开展取证分析。许多标准和法规要求为合规而保留审计日志,而保留日志数据有助于确保数据完整性。
日志会跟踪记录中的所有变更,这样你就可以发现由外部来源执行的未授权修改,或由于内部开发或系统管理中的错误导致的修改。
保障措施 8.11:开展审计日志审查
通过审查审计日志来发现异常情况或异常事件,以判断是否可能存在潜在威胁。建议按每周或更频繁的频率进行审查。
检查日志以发现可能预示威胁的异常事件。使用这些日志将端点与资产清单进行匹配,并在需要时配置新的端点。此外,还应审查审计日志,以确保系统生成适当的日志。
每周或更频繁地进行审查。
保障措施 8.12 收集服务提供商日志
在支持的情况下收集服务提供商日志。示例实现包括收集身份验证和授权事件、数据创建与处置事件,以及用户管理事件。
尽管服务提供商可能会保证安全性,但你仍需要验证所接收日志的完整性,并确保供应商遵守相关法规。此外,如果发生事件,你将需要这些数据用于取证分析。
供应商应收集认证与授权事件、数据创建与处置事件以及用户管理事件。
随着云计算的发展,攻击者正越来越多地瞄准各类服务。攻击者可能会伪造 URL 并将用户重定向到人脸服务提供商网站,或造成其他损害。如果服务提供商遇到安全问题,可能无法及时通知其客户。此外,你可能会发现该服务提供商并未具备你所期望或所要求的安全水平。
摘要
控制 8 包含了用于审计日志管理的更新防护措施。这是一项至关重要的功能,要求在建立并维护审计日志时予以落实,包括收集、存储、时间同步、保留以及审阅。
每项防护措施都针对审计日志管理的一个方面,帮助你保持对标准的合规性,并在审计或遭受攻击时为你提供所需的信息。
常见问题(FAQ)
审计日志(audit log)是什么意思?
审计日志(audit log)是一种用于保留与用户级事件相关数据的方法。它包含特定信息,帮助识别行为者以及所采取的操作。
审计日志(audit log)的作用是什么?
该日志可用于在遭受攻击时进行保全取证分析,并用于确定日志数据的完整性。它还可以作为符合相关标准的证明。
审计日志中应包含哪些内容?
审计日志应包含以下内容:
- 组
- 行为主体
- 操作类型
- 事件名称和描述
- 时间戳
- 源位置
分享到
了解更多
关于作者
Dirk Schrader
安全研究高级副总裁(VP)
Dirk Schrader 是 Netwrix 的常驻 CISO(EMEA)以及安全研究高级副总裁(VP)。他拥有 CISSP(ISC²)和 CISM(ISACA)等资质,是一位在 IT 安全领域拥有 25 年经验的老兵。Dirk 致力于以现代化的方式应对网络威胁,从而推动网络韧性的发展。Dirk 曾参与全球范围内的网络安全项目:职业初期从技术与支持岗位做起,随后在大型跨国公司和小型初创企业中分别担任销售、市场与产品管理等职务。他已发表大量文章,强调为实现网络韧性,需要重视变更管理与漏洞管理。