mcpField
D
defender-for-storage

defender-for-storage

github.com/vinayaklatthe安全17842 次安装19 周前更新
代码仓库

关于 defender-for-storage

面向 Azure Storage 管理者的安全技能,介绍 Defender for Storage v2 对 Blob Storage、Azure Files 和 Data Lake Storage Gen2 的监测与防护。内容涵盖恶意软件扫描、敏感数据威胁检测、告警调优和事件响应。

主要功能

  1. 01监测异常存储访问活动
  2. 02扫描上传的 Blob 恶意软件
  3. 03检测敏感数据的可疑访问
  4. 04通过 Event Grid 处理扫描结果
  5. 05调优告警并制定响应流程

适用场景

  1. 01保护接收不可信上传的存储账户
  2. 02将恶意 Blob 移至隔离容器
  3. 03将存储告警发送到 Sentinel
  4. 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——它更便宜且费用可预测。

操作方法

  1. 在订阅范围启用 Defender for Storage v2,并开启恶意软件扫描,同时设置每个帐户的每月 GB 上限(默认 5,000 GB)。此上限可防止高吞吐量帐户产生失控成本。 验证:在 Defender for Cloud → 环境设置 → 订阅 → Storage 中,确认 v2 计划已开启且已启用恶意软件扫描。

  2. 针对特殊存储帐户设置覆盖项:

    • 对仅追加日志帐户、大型遥测接收器,或已在应用程序层扫描的帐户,禁用恶意软件扫描。
    • 对租户范围的诊断帐户(Activity Logs 导出、NSG 流日志),如果威胁检测没有价值,则完全禁用计划。
  3. 将扫描结果接入 Event Grid。 为每个受保护帐户设置一个 Event Grid 系统主题;订阅一个 Function/Logic App,以执行以下操作:

    • 将恶意 Blob 移至隔离容器(或删除)。
    • 将检测结果写入 Blob 的索引标记(Malware-Scanning-scan-result-tag)。
    • 通知 SOC。 验证:上传 EICAR 测试文件;在 2 分钟内,Blob 应标记为 Malicious,且隔离工作流应触发。
  4. 敏感数据威胁检测——等 Purview 对帐户完成分类后再启用。若未进行分类,该功能只会根据文件扩展名和标头启发式规则运行。与 Purview Data Map 配合使用可充分发挥其价值(参见 purview-data-map)。

  5. 调整警报。 先建立 7 天基线,然后抑制噪声较大的警报(例如,来自 CDN 边缘 IP 的预期 SAS 令牌使用)。通过 Defender for Cloud 连接器将剩余警报发送到 Sentinel。

  6. 在存储帐户中阻止公共匿名访问。 Defender 会对可疑匿名读取发出警报,但正确的控制措施是将 allowBlobPublicAccess = false,并通过 Azure Policy 强制执行。Defender 用于检测,而非预防。

  7. “上传了恶意 Blob”警报的响应操作手册:

    1. 确认 Blob 上的检测结果标记。
    2. 将其移至隔离容器;撤销上传身份的所有 SAS/密钥。
    3. 使用 StorageBlobLogs 上的 KQL,搜寻过去 24 小时内来自同一主体的相关上传。
    4. 通知所有者;提供证据后关闭警报。

防护措施

  • 始终为每个帐户设置 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

评论

支持 Markdown