本文概述了一个基础结构和工作流过程,旨在帮助团队提供数字证据,以演示有效的监护链,以响应法律请求。 本文介绍如何在整个证据获取、保存和访问阶段维护有效的监护链。
注意
本文基于作者的理论和实践知识。 在将其用于法律目的之前,请向法律部门核实其适用性。
体系结构
体系结构设计遵循适用于 Azure 的云采用框架中的 Azure 登陆区域原则。
此方案使用中心辐射型网络拓扑,如下图所示:
下载此体系结构的 Visio 文件。
工作流
在该体系结构中,生产虚拟机 (VM) 是辐射型 Azure 虚拟网络的一部分。 VM 磁盘使用 Azure 磁盘加密进行加密。 有关详细信息,请参阅托管磁盘加密选项概述。 在生产订阅中,Azure Key Vault 存储 VM 的 BitLocker 加密密钥(BEK)。
注意
此方案还支持具有未加密磁盘的生产 VM。
安全运营中心(SOC)团队使用离散的 Azure SOC 订阅。 团队具有对该订阅的独占访问权限,该订阅包含必须受到保护、不可侵犯和受到监视的资源。 SOC 订阅中的 Azure 存储 帐户托管 不可变 blob 存储中的磁盘快照副本。 专用 密钥保管库 存储 VM 中快照和 BEK 的哈希值的副本。
为了响应捕获 VM 的数字证据的请求,SOC 团队成员登录到 Azure SOC 订阅,并使用来自 azure 自动化 的 Azure 混合 Runbook 辅助角色 VM 来运行 Copy-VmDigitalEvidence
Runbook。
自动化混合 Runbook 辅助角色 提供对捕获中包含的所有机制的控制。
Copy-VmDigitalEvidence
Runbook 实现以下宏步骤:
使用自动化帐户 系统分配的托管标识登录到 Azure。 此标识授予对目标 VM 资源和解决方案所需的其他 Azure 服务的访问权限。
生成 VM作系统(OS)和数据磁盘的磁盘快照。
将快照传输到 SOC 订阅的不可变 Blob 存储和临时文件共享。
使用文件共享中存储的副本计算快照的哈希值。
将获取的哈希值和 VM 的 BEK 存储在 SOC 密钥保管库中。
删除快照的所有副本,除了不可变 Blob 存储中的副本。
注意
生产 VM 的加密磁盘还可以使用密钥加密密钥(KEK)。
部署方案中提供的 Copy-VmDigitalEvidence
Runbook 不包括此方案。
组件
Azure 自动化自动完成频繁进行的、耗时的、易出错的云管理任务。 它用于自动执行捕获和传输 VM 磁盘快照的过程,以帮助确保证据完整性。
存储是一种云存储解决方案,包括对象、文件、磁盘、队列和表存储。 它托管不可变 Blob 存储中的磁盘快照,以保留处于不可恢复状态和不可编辑状态的证据。
Azure Blob 存储提供优化的云对象存储,用于管理大量非结构化数据。 它提供了优化的云对象存储,用于将磁盘快照存储为不可变 Blob。
Azure 文件存储 在云中提供完全托管的文件共享,可通过行业标准服务器消息块(SMB)协议、网络文件系统(NFS)协议和 Azure 文件 REST API 进行访问。 可以通过 Windows、Linux 和 macOS 的云部署或本地部署同时装载共享。 还可以使用 Azure 文件同步在 Windows Server 上缓存文件共享,以便在数据使用位置附近快速访问。 Azure 文件存储用作临时存储库,用于计算磁盘快照的哈希值。
Key Vault 可帮助保护加密密钥以及云应用和服务使用的其他机密。 可以使用 Key Vault 来存储磁盘快照的 BEK 和哈希值,以帮助确保安全访问和数据完整性。
Microsoft Entra ID 是一种基于云的标识服务,帮助你控制对 Azure 和其他云应用的访问。 它用于控制对 Azure 资源的访问,这有助于确保安全标识管理。
Azure Monitor 通过帮助你最大程度地提高资源性能和可用性,同时主动识别潜在问题,从而支持大规模作。 它存档活动日志,以审核所有相关事件以实现合规性和监视目的。
自动化
SOC 团队使用 自动化 帐户来创建和维护 Copy-VmDigitalEvidence
Runbook。 该团队还使用自动化来创建实现 Runbook 的混合 Runbook 辅助角色。
混合 runbook 辅助角色
混合 Runbook 辅助角色 VM 已集成到自动化帐户中。 SOC 团队专门使用此 VM 来运行 Copy-VmDigitalEvidence
Runbook。
必须将混合 runbook 辅助角色 VM 放置在可访问存储帐户的子网中。 通过将混合 runbook 辅助角色 VM 子网添加到存储帐户的防火墙允许列表规则,配置对存储帐户的访问。
仅向 SOC 团队成员授予对维护活动的访问权限。
若要隔离 VM 使用的虚拟网络,请避免将虚拟网络连接到中心。
混合 Runbook 辅助角色使用 自动化系统分配的托管标识 来访问目标 VM 的资源和解决方案所需的其他 Azure 服务。
系统分配的托管标识所需的最低基于角色的访问控制(RBAC)权限分为两类:
- 对包含解决方案核心组件的 SOC Azure 体系结构的访问权限
- 对包含目标 VM 资源的目标体系结构的访问权限
对 SOC Azure 体系结构的访问包括以下角色:
- SOC 不可变存储帐户上的“存储帐户参与者”
- KEY Vault 机密官 SOC 密钥保管库进行 BEK 管理
对目标体系结构的访问包括以下角色:
目标 VM 的资源组上的“参与者” ,它提供 VM 磁盘上的快照权限
Key Vault 机密官 用于存储 BEK 的目标 VM 密钥保管库,前提是 RBAC 用于控制 Key Vault 访问
访问策略,用于在用于存储 BEK 的目标 VM 的密钥保管库上 获取机密,前提是访问策略用于控制 Key Vault 访问
注意
若要读取 BEK,必须可从混合 runbook 辅助角色 VM 访问目标 VM 的密钥保管库。 如果已启用密钥保管库的防火墙,请确保允许通过防火墙访问混合 Runbook 辅助角色 VM 的公共 IP 地址。
存储帐户
SOC 订阅中的 存储帐户 将磁盘快照托管在配置有 法定保留 策略的容器中作为 Azure 不可变 Blob 存储。 不可变 Blob 存储将业务关键型数据对象存储在写入中一次,读取许多 (WORM) 状态。 对于用户指定的间隔,WORM 状态使数据不可恢复且不可编辑。
请确保启用 安全传输 和 存储防火墙 属性。 防火墙仅从 SOC 虚拟网络授予访问权限。
存储帐户还托管 Azure 文件共享 作为用于计算快照哈希值的临时存储库。
Key Vault(密钥保管库)
SOC 订阅有自己的密钥保管库实例,该实例托管 Azure 磁盘加密用于保护目标 VM 的 BEK 的副本。 主副本存储在目标 VM 使用的密钥保管库中。 此设置允许目标 VM 继续正常作,而不会中断。
SOC 密钥保管库还会存储混合 Runbook 辅助角色在捕获作期间计算的磁盘快照的哈希值。
确保在密钥保管库上启用 防火墙。 它必须仅从 SOC 虚拟网络授予访问权限。
Log Analytics
Log Analytics 工作区存储用于审核 SOC 订阅上所有相关事件的活动日志。 Log Analytics 是 Monitor 的一项功能。
方案详细信息
数字取证是一种科学,用于处理数字数据的恢复和调查,以支持刑事侦察或民事诉讼。 计算机取证是数字取证的分支,用于从计算机、VM 和数字存储介质捕获数据,并对这些数据进行分析。
公司必须保证他们提供的数字证据,以响应法律请求,表明在证据获取、保存和访问的各个阶段都存在有效的监护链。
可能的用例
公司的 SOC 团队可以实现此技术解决方案,以支持有效的数字证据监管链。
调查人员可以在专用于取证分析的计算机上附加使用此技术获取的磁盘副本。 他们可以附加磁盘副本,而无需打开或访问原始源 VM。
监管法规合规性链
如果需要将建议的解决方案提交到法规合规性验证过程,请考虑在监管解决方案验证过程中 注意事项 部分中的材料。
注意
应在验证过程中包括法律部门。
注意事项
这些注意事项实施 Azure 架构良好的框架的支柱原则,即一套可用于改进工作负荷质量的指导原则。 有关详细信息,请参阅 Well-Architected Framework。
本部分介绍了将此解决方案验证为托管链的原则。 为了帮助确保有效的保管链,数字证据存储必须演示足够的访问控制、数据保护和完整性、监视和警报以及日志记录和审核。
符合安全标准和法规
验证监管解决方案链时,要评估的要求之一是符合安全标准和法规。
体系结构 中包含的所有组件都是基于支持信任、安全性和 符合性的基础构建的 Azure 标准服务。
Azure 具有广泛的合规性认证,包括针对国家或地区定制的认证,以及医疗保健、政府、金融和教育等关键行业。
有关更新的审核报告的详细信息,这些报告详细说明了此解决方案中使用的服务的标准符合性,请参阅 服务信任门户。
Cohasset 的 Azure 存储合规性评估 提供有关以下要求的详细信息:
证券交易委员会 (SEC) 17 CFR § 240.17a-4(f),其中描述了有关交易成员、经纪人或经销商的相关规定。
美国金融业监管局 (FINRA) 规则 4511(c),其中的规定服从 SEC 规则 17a-4(f) 的格式和媒体要求。
商品期货交易委员会 (CFTC) 规章 17 CFR § 1.31(c)-(d),其中描述了有关商品期货交易的相关规定。
Cohasset 认为 Azure 存储, 具有 Blob 存储和策略锁定选项的不可变存储功能,以不可还原和不可写入的格式保留基于时间的 blob(或 记录),并满足 SEC 规则 17a-4(f)、FINRA 规则 4511(c)的相关存储要求以及 CFTC 规则 1.31(c)-(d) 的基于原则的要求。
最低权限
分配 SOC 团队的角色时,团队中只有两个人(称为 SOC 团队保管人)有权修改订阅及其数据的 RBAC 配置。 仅向其他人授予其执行工作所需访问的数据子集的最低访问权限。
最低访问权限
只有 SOC 订阅中的虚拟网络才能访问 SOC 存储帐户和存档证据的 Key Vault。 经过授权的 SOC 团队成员可以授予调查人员对 SOC 存储中证据的临时访问权限。
证据获取
Azure 审核日志可以通过记录执行 VM 磁盘快照的作来记录证据获取。 日志包括详细信息,例如拍摄快照的人员和拍摄时间。
证据完整性
使用 自动化 将证据移动到其最终存档目标,而无需人工干预。 此方法有助于保证证据项目保持不变。
向目标存储应用法定保留策略时,只要写入证据,证据就会立即冻结。 法律保留表明,在 Azure 中完全维护托管链。 它还表示,从磁盘映像在实时 VM 上到存储为存储帐户中的证据时,没有机会篡改证据。
最后,可以使用提供的解决方案作为完整性机制来计算磁盘映像的哈希值。 支持的哈希算法包括 MD5、SHA256、SKEIN 和 KECCAK(或 SHA3)。
证据提供
调查人员需要获得证据,以便他们可以执行分析。 必须跟踪和显式授权此访问权限。
为调查人员提供 共享访问签名(SAS)统一资源标识符(URI) 存储密钥来访问证据。 SAS URI 可以在创建时生成相关的日志信息。 每次使用 SAS 时,都可以获取证据的副本。
例如,如果法律团队需要转移保留的虚拟硬盘,则两个 SOC 团队保管人之一会生成一个只读 SAS URI 密钥,该密钥会在 8 小时后过期。 SAS 限制在指定时间范围内访问调查人员。
SOC 团队必须显式放置需要访问存储防火墙中允许列表的调查人员的 IP 地址。
最后,调查人员需要 SOC 密钥保管库中存档的 BEK 才能访问加密的磁盘副本。 SOC 团队成员必须提取 BEK,并通过安全通道将其提供给调查人员。
区域存储
为了符合性,某些标准或法规要求在同一 Azure 区域中维护证据和支持基础结构。
所有解决方案组件(包括存档证据的存储帐户)都托管在与正在调查的系统相同的 Azure 区域中。
卓越运营
卓越运营涵盖部署应用程序并使其在生产环境中运行的运营流程。 有关详细信息,请参阅设计卓越运营的审查清单。
监视和警报
Azure 向所有客户提供服务,用于监视和警报与其订阅和资源相关的异常情况。 这些服务包括:
注意
本文未介绍这些服务的配置。
部署此方案
按照 托管实验室部署链 说明在实验室环境中生成和部署此方案。
实验室环境表示本文中所述的体系结构的简化版本。 可以在同一订阅中部署两个资源组。 第一个资源组模拟生产环境,保留数字证据,而第二个资源组则保存 SOC 环境。
选择“部署到 Azure,以仅在生产环境中部署 SOC 资源组。
注意
如果在生产环境中部署解决方案,请确保自动化帐户的系统分配托管标识具有以下权限:
- 要处理的 VM 的生产资源组中的参与者。 此角色创建快照。
- 密钥保管库机密用户在生产密钥库中持有 BEK。 此角色读取 BEK。
如果密钥保管库已启用防火墙,请确保允许通过防火墙访问混合 Runbook 辅助角色 VM 的公共 IP 地址。
扩展配置
可以在本地或不同的云环境中部署混合 runbook 辅助角色。
在此方案中,必须自定义 Copy‑VmDigitalEvidence
Runbook,以便在不同的目标环境中捕获证据并将其存档到存储中。
注意
“部署此方案”部分中提供的 Copy-VmDigitalEvidence
Runbook 仅在 Azure 中开发和测试。 若要将解决方案扩展到其他平台,必须自定义 runbook 才能使用这些平台。
作者
Microsoft维护本文。 以下参与者撰写了本文。
主要作者:
- Fabio Masciotra | 首席顾问
- Simone Savi | 高级顾问
要查看非公开的 LinkedIn 个人资料,请登录到 LinkedIn。
后续步骤
有关 Azure 数据保护功能的详细信息,请参阅:
- 静态数据的存储加密
- 托管磁盘加密选项概述
- 以 WORM 状态存储具有不可变存储的业务关键 blob 数据
有关 Azure 日志记录和审核功能的详细信息,请参阅:
有关 Microsoft Azure 符合性的详细信息,请参阅: