# Detecting Azure Storage Account Misconfigurations

> 使用 azure-mgmt-storage Python SDK 审计 Azure Blob 和 ADLS 存储账户的公开访问暴露、弱或长期 SAS 令牌、缺失的静态加密、禁用的仅 HTTPS 流量以及过时的 TLS 版本。

- Skill: `killvxk/detecting-azure-storage-account-misconfigurations` (Agent Skill, multi-file: 4 files)
- Install (CLI): `npx skillmds@latest add killvxk/detecting-azure-storage-account-misconfigurations`
- Raw SKILL.md: https://api.skillmd.com/api/skills/killvxk/detecting-azure-storage-account-misconfigurations/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: DevOps & Infra
- License: Apache-2.0
- Author: killvxk (https://skillmd.com/u/killvxk)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/killvxk/detecting-azure-storage-account-misconfigurations

---


# 检测 Azure 存储账户错误配置

## 概述

Azure 存储账户因公开访问配置错误、长期 SAS 令牌、缺失加密和过时 TLS 版本而成为攻击者的常见目标。本 skill 使用 azure-mgmt-storage Python SDK 配合 StorageManagementClient，枚举订阅中的所有存储账户，检查其安全属性，列出 blob 容器的公开访问设置，并生成一份风险评分审计报告，识别关键错误配置。

## 前置条件

- Python 3.9+ 及 `azure-mgmt-storage`、`azure-identity`
- 在目标订阅上具有读取者角色的 Azure 服务主体
- 环境变量：AZURE_CLIENT_ID、AZURE_TENANT_ID、AZURE_CLIENT_SECRET、AZURE_SUBSCRIPTION_ID

## 关键检测领域

1. **公开 blob 访问** — 存储账户上启用了 `allow_blob_public_access`，或单个容器设置为 Blob/Container 访问级别
2. **HTTPS 强制执行** — `enable_https_traffic_only` 被禁用，允许未加密的 HTTP 流量
3. **最低 TLS 版本** — 账户接受 TLS 1.0 或 TLS 1.1 而不是最低 TLS 1.2
4. **静态加密** — 未启用存储服务加密或缺少客户管理的密钥
5. **网络规则** — 默认操作设置为允许而不是拒绝，将存储暴露给所有网络
6. **SAS 令牌风险** — 具有过于宽泛权限或过长生命周期的账户级 SAS

## 输出格式

包含每个账户发现、严重性评级（严重/高/中/低）以及符合 CIS Azure Benchmark 控制项的修复建议的 JSON 报告。

