关于 defender-for-storage
面向 Azure Storage 管理者的安全技能,介绍 Defender for Storage v2 对 Blob Storage、Azure Files 和 Data Lake Storage Gen2 的监测与防护。内容涵盖恶意软件扫描、敏感数据威胁检测、告警调优和事件响应。
主要功能
- 01监测异常存储访问活动
- 02扫描上传的 Blob 恶意软件
- 03检测敏感数据的可疑访问
- 04通过 Event Grid 处理扫描结果
- 05调优告警并制定响应流程
适用场景
- 01保护接收不可信上传的存储账户
- 02将恶意 Blob 移至隔离容器
- 03将存储告警发送到 Sentinel
- 04排查敏感数据的可疑访问
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ vinayaklatthe/ microsoft-security-skills --skill defender-for-storage安装后在 Claude Code 中输入/defender-for-storage确认已加载。
详细介绍
Microsoft Defender for Storage
Defender for Storage 可保护 Azure Blob Storage、Azure Files 和 Azure Data Lake Storage Gen2,抵御恶意上传、敏感数据外泄和可疑访问模式。 当前一代产品是 Defender for Storage v2,按存储帐户计费,并可选购上传时恶意软件扫描和敏感数据威胁检测附加功能。
适用场景
保护接收不可信来源或合作伙伴上传内容、托管应用程序内容(Web 应用、ML 数据集)或包含 Purview 分类敏感数据的 Azure Storage 帐户。使用此技能进行计划部署、恶意软件扫描调优,以及处理存储警报事件。
此技能不适用于 SQL/Cosmos 数据平面保护(defender-for-cloud-hardening)、VM 磁盘级恶意软件(defender-for-servers)或 M365 文件工作负载(defender-for-office-365)。
计划和附加功能
| 组件 | 功能 | 计费模式 |
|---|---|---|
| Defender for Storage v2(基础版) | 活动监控:异常访问、可疑数据提取、异常删除 | 按存储帐户/月 |
| 上传时恶意软件扫描 | Defender AV 扫描每个上传的 Blob,最大 2 GB;提供结果标记和 Event Grid 事件 | 按扫描 GB 数计费(可配置每个帐户的上限) |
| 敏感数据威胁检测 | 与 Purview 敏感信息类型集成;当可疑主体访问敏感 Blob 时发出警报 | 已包含在 v2 中(不额外收费) |
v1(按事务计费)已弃用。 将所有已启用 v1 的帐户迁移到 v2——它更便宜且费用可预测。
操作方法
-
在订阅范围启用 Defender for Storage v2,并开启恶意软件扫描,同时设置每个帐户的每月 GB 上限(默认 5,000 GB)。此上限可防止高吞吐量帐户产生失控成本。 验证:在 Defender for Cloud → 环境设置 → 订阅 → Storage 中,确认 v2 计划已开启且已启用恶意软件扫描。
-
针对特殊存储帐户设置覆盖项:
- 对仅追加日志帐户、大型遥测接收器,或已在应用程序层扫描的帐户,禁用恶意软件扫描。
- 对租户范围的诊断帐户(Activity Logs 导出、NSG 流日志),如果威胁检测没有价值,则完全禁用计划。
-
将扫描结果接入 Event Grid。 为每个受保护帐户设置一个 Event Grid 系统主题;订阅一个 Function/Logic App,以执行以下操作:
- 将恶意 Blob 移至隔离容器(或删除)。
- 将检测结果写入 Blob 的索引标记(
Malware-Scanning-scan-result-tag)。 - 通知 SOC。 验证:上传 EICAR 测试文件;在 2 分钟内,Blob 应标记为 Malicious,且隔离工作流应触发。
-
敏感数据威胁检测——等 Purview 对帐户完成分类后再启用。若未进行分类,该功能只会根据文件扩展名和标头启发式规则运行。与 Purview Data Map 配合使用可充分发挥其价值(参见
purview-data-map)。 -
调整警报。 先建立 7 天基线,然后抑制噪声较大的警报(例如,来自 CDN 边缘 IP 的预期 SAS 令牌使用)。通过 Defender for Cloud 连接器将剩余警报发送到 Sentinel。
-
在存储帐户中阻止公共匿名访问。 Defender 会对可疑匿名读取发出警报,但正确的控制措施是将
allowBlobPublicAccess = false,并通过 Azure Policy 强制执行。Defender 用于检测,而非预防。 -
“上传了恶意 Blob”警报的响应操作手册:
- 确认 Blob 上的检测结果标记。
- 将其移至隔离容器;撤销上传身份的所有 SAS/密钥。
- 使用
StorageBlobLogs上的 KQL,搜寻过去 24 小时内来自同一主体的相关上传。 - 通知所有者;提供证据后关闭警报。
防护措施
- 始终为每个帐户设置 GB 级别的恶意软件扫描上限。否则,行为异常的客户端若将同一个 50 GB 文件上传 1,000 次,可能导致六位数的扫描费用。
- 不会扫描大于 2 GB 的文件。 请通过应用层扫描进行补偿,或在不受信任的端点上阻止上传超过 2 GB 的文件。
- 恶意软件扫描是异步的。 不要假设延迟低于 1 秒,并据此设计“扫描后再让应用读取”的流程;扫描通常需要几秒到几分钟。使用 Event Grid 控制下游处理。
- 不要在诊断导出帐户上启用。 这些帐户用于只能追加的系统遥测;扫描既浪费资源,又会产生大量噪声。
- 敏感数据警报依赖 Purview。 如果没有 Purview 分类,你只能获得较弱的启发式信号。
- 公共匿名访问是配置问题,不是 Defender 问题。 应在平台层阻止。
常见反模式
- “在订阅中的每个存储帐户上启用,且不设排除项” — 诊断和日志帐户会导致成本激增。请覆盖此设置。
- “依赖恶意软件判定标记,却没有使用 Event Grid” — 恶意 Blob 仍然存在,在采取措施处理该标记之前仍可读取。
- “应用在上传后立即读取 Blob” — 会与异步扫描发生竞争。请根据扫描完成事件进行控制。
- “扫描上限保持为无限制” — 第一周就可能遭遇账单冲击。
- “从 v1 迁移时,在重新启用 v1 的同时启用 v2” — 请先禁用 v1,否则会重复计费。
- “将 Defender for Storage 用于 SharePoint/OneDrive,而不是使用 Purview DLP” — 工作负载错误。SharePoint 属于 M365,而不是 Azure Storage。
示例提示词
Enable Defender for Storage v2 across 50 subscriptions with malware scanning capped at 3 TB/account/month.Wire the malware scan Event Grid event to a Logic App that quarantines malicious blobs.Exclude diagnostic-export storage accounts from Defender for Storage via Azure Policy.Alert on sensitive data threat detection and route to Sentinel — what's needed from Purview first?Build the IR runbook for "Malicious file uploaded to blob" alerts.Estimate monthly cost for 200 storage accounts averaging 500 GB ingest each.
Microsoft Learn
- 概述:https://learn.microsoft.com/azure/defender-for-cloud/defender-for-storage-introduction
- 启用计划:https://learn.microsoft.com/azure/defender-for-cloud/defender-for-storage-introduction
- 恶意软件扫描:https://learn.microsoft.com/azure/defender-for-cloud/defender-for-storage-malware-scan
- 敏感数据威胁检测:https://learn.microsoft.com/azure/defender-for-cloud/defender-for-storage-data-sensitivity
- Event Grid 响应:https://learn.microsoft.com/azure/defender-for-cloud/defender-for-storage-configure-malware-scan
- 从 v1 迁移:https://learn.microsoft.com/azure/defender-for-cloud/defender-for-storage-classic-migrate
- 警报参考:https://learn.microsoft.com/azure/defender-for-cloud/alerts-reference#alerts-azurestorage