Azure安全评估工具包

Stratos是一款企业级Azure安全评估工具包,提供多地点扫描、IMDS利用、攻击路径分析和合规报告功能,适用于安全专业人员进行渗透测试、合规审计和风险报告。

  • by h4cd0c
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 Jaikumar3/azure-pentest-mcp

使用说明

Stratos-Azure安全评估MCP服务器

企业级Azure安全评估工具包,具有多位置扫描、IMDS利用、攻击路径分析和合规性报告功能

专为进行授权渗透测试、合规审计和执行风险报告的安全专业人员而设计

特性 • 快速开始 • 文档 • 示例


概述

斯特拉托斯 是基于模型上下文协议(MCP)构建的全面Azure安全评估框架。它提供了40种可用于生产的工具,涵盖Azure云环境的多位置扫描、枚举、漏洞扫描、攻击路径分析、AKS/Kubernetes安全(包括实时K8s API扫描和IMDS利用)、备份安全、VNet拓扑分析、私有端点验证和合规性报告。

用例

  • 多位置扫描 -扫描所有45+Azure区域的资源
  • 安全评估 -识别错误配置和漏洞
  • IMDS开发 -令牌盗窃、集群范围内的暴露、深度数据平面访问
  • 执行报告 -生成专业风险评估报告
  • 符合性审计 -将研究结果映射到CIS、NIST框架
  • 渗透测试 -发现攻击路径和权限升级向量
  • Kubernetes安全 -AKS集群、节点和IMDS漏洞测试
  • DevOps安全 -检测Azure DevOps中的硬编码秘密

关键亮点

  • 100%只读 -对生产环境安全
  • 40安全工具 -全面的Azure服务覆盖(v1.14.0)
  • 多地点 -扫描公共(10)或所有(45+)Azure区域
  • 多格式报告 -PDF、HTML、CSV、Markdown、JSON
  • 攻击路径分析 -特权升级和横向移动映射
  • AKS/Kubernetes -4个整合的容器安全工具(ARM+Live K8s+IMDS)
  • 企业就绪 -面向高管和审计师的专业报告

v1.14.0的新增功能🎉

关键安全增强-研究驱动的扩展

  • 6个新的安全工具 -备份安全、Direct3D对等、专用端点、诊断设置、Defender覆盖范围、策略合规性
  • 8增强工具 -存储(SAS令牌+WORM)、服务主体(以RBAC为中心)、托管身份(联邦)、NSG(服务端点+负载均衡器)、SQL(PostgreSQL+MySQL+Redis)、功能应用程序(事件网格+服务总线)
  • 23个新参数 -跨现有工具的扩展功能(100%向后兼容)
  • 研究归因 -基于Azure安全基准v3、redskycyber/云安全、CIS Azure基础
  • 云基础设施重点 -服务主体分析不包括Azure AD(仅限云资源)

主要特点

🌍 多位置(2个工具)

  • list_active_locations -发现活动的Azure区域
  • scan_all_locations -扫描所有区域的资源
  • 支持全球45多个Azure位置
  • 枚举工具上的位置过滤

🔍 枚举(7个工具)

  • 订阅 -映射Azure环境结构
  • 资源组 -列出所有资源容器(带位置过滤器)
  • 资源 -枚举所有资源(使用位置筛选器)
  • 资源详情 -获取详细配置
  • 公共IP -识别互联网暴露的攻击面
  • RBAC分配 -审核访问控制权限
  • 管理身份 -跟踪无密码身份验证

🛡️ 安全扫描(10个工具)

  • 存储安全 -公共访问、HTTPS、加密
  • 存储容器 -深度扫描敏感文件
  • NSG规则 -互联网暴露端口,通配符规则
  • SQL数据库 -TDE加密、防火墙、身份验证
  • 钥匙库 -软删除、清除保护、机密
  • 虚拟机 -磁盘加密、安全扩展
  • Cosmos数据库 -公共访问、防火墙、加密
  • 集装箱登记处 -管理员用户,漏洞扫描
  • 攻击路径 -特权升级链
  • 服务负责人 -应用程序身份扫描

☸️ Kubernetes/AKS(3个工具+增强功能)

  • scan_aks_full - 🚀 增强 具有多种扫描模式的全面AKS安全性:
    • mode: 'full' -完成基于ARM的评估(30+CIS检查)
    • mode: 'live' -实时K8s API扫描(机密、RBAC、pods、SA)
    • mode: 'imds' -IMDS利用和令牌盗窃(集群范围扫描、令牌导出)
    • mode: 'pod_identity' -Pod身份/工作负载身份分析
    • mode: 'admission' -准入控制器旁路检测
  • scan_aks_policy_bypass -OPA/Kyverno策略绕过检测
  • get_aks_credentials -解压kubeconfig以访问kubectl

迁移说明(v1.12.0): 弃用的工具 scan_aks_live, scan_aks_imds, scan_aks_pod_identity,以及 scan_aks_admission_bypass 现在合并为 scan_aks_full 随着 scanMode 参数。

📊 报告和DevOps(3个工具)

  • 安全报告 -PDF/HTML/CSV,带有CIS/NIST映射
  • Azure DevOps扫描程序 -硬编码秘密检测
  • 凭证暴露 -扫描暴露的凭据

报告功能:

  • 风险统计执行摘要
  • 颜色编码的严重程度(临界/高/中/低)
  • 合规框架映射
  • 补救指导

📋 工具参考(40个工具)

命名规范

前缀 目的
azure_enumerate_* 列出/发现资源
azure_analyze_* 深度配置分析
azure_scan_* 安全评估
azure_get_* 检索特定数据
azure_detect_* 查找威胁/问题
azure_generate_* 创建输出/报告

完整工具清单

# 工具名称 类别 描述
1 azure_help 信息 显示全面的帮助和示例
2 azure_list_active_locations 多位置 发现哪些Azure区域有资源
3 azure_scan_all_locations 多位置 扫描所有45个以上Azure区域的资源
4 azure_enumerate_subscriptions 枚举 列出所有可访问的订阅
5 azure_enumerate_resource_groups 枚举 列出订阅中的资源组
6 azure_enumerate_resources 枚举 列出所有资源(可按类型筛选)
7 azure_get_resource_details 枚举 获取详细的资源配置
8 azure_analyze_storage_security 安全 扫描存储帐户以查找配置错误
9 azure_analyze_nsg_rules 安全 识别有风险的防火墙规则
10 azure_enumerate_public_ips 枚举 映射互联网暴露的攻击面
11 azure_enumerate_rbac_assignments 枚举 审核访问控制和权限
12 azure_scan_sql_databases 安全性 检查SQL安全性(TDE、防火墙、身份验证)
13 azure_analyze_keyvault_security 安全 审核密钥库配置
14 azure_analyze_cosmosdb_security 安全 扫描Cosmos DB安全设置
15 azure_analyze_vm_security 安全性 检查VM磁盘加密和补丁
16 azure_scan_acr_security 安全 增强 ACR安全与供应链(扫描模式:安全/中毒/全部)
17 azure_enumerate_service_principals 安全 查找应用程序身份和风险
18 azure_enumerate_managed_identities 枚举 跟踪无密码身份验证
19 azure_scan_storage_containers 安全 对blob中的敏感文件进行深度扫描
20 azure_generate_security_report 报告 增强 具有全扫描选项的专业报告(PDF/HTML/CSV/JSON)
21 azure_analyze_attack_paths 分析 映射权限升级链
22 azure_get_aks_credentials Kubernetes 提取kubeconfig凭据
23 azure_scan_azure_devops DevOps 检测存储库/管道中的硬编码秘密
24 azure_analyze_function_apps 计算 功能应用安全分析
25 azure_analyze_app_service_security 计算 应用服务安全评估
26 azure_analyze_firewall_policies 网络 Azure防火墙策略分析
27 azure_analyze_logic_apps 集成 Logic Apps工作流安全
28 azure_analyze_rbac_privesc 分析 特权升级分析
29 azure_detect_persistence_mechanisms 分析 检测持久性技术
30 azure_scan_aks_full 库贝内特斯 增强 全面的AKS安全(扫描模式:完整/实时/imds/pod_identity/准入)
31 azure_scan_aks_policy_bypass Kubernetes OPA/Kyverno/Azure策略绕过检测
32 azure_scan_container_apps_security 容器 Azure容器应用程序安全扫描程序
33 azure_scan_gitops_security DevOps GitOps/Flux安全扫描器
34 azure_scan_cdn_security 网络 Azure CDN和前门安全
35 azure_analyze_backup_security 安全 新版v1.14.0 恢复服务保险库安全(软删除、不变性、ASR)
36 azure_analyze_vnet_peering 网络 新版v1.14.0 Direct3D对等安全(网关传输、跨租户)
37 azure_validate_private_endpoints 网络 新版v1.14.0 专用链接验证(DNS、连接状态)
38 azure_validate_diagnostic_settings 合规性 新版v1.14.0 记录合规性(NIST/CIS映射)
39 azure_assess_defender_coverage 安全 新版v1.14.0 云覆盖评估卫士
40 azure_validate_policy_compliance 合规性 新版v1.14.0 Azure策略治理验证

🚀 快速开始

安装

选项1:从npm安装(推荐)

# Install globally from npm
npm install -g stratos-mcp

选项2:从源代码构建

# Clone the repository
git clone https://github.com/h4cd0c/stratos-mcp.git
cd stratos-mcp

# Install dependencies
npm install
npm run build

先决条件

# Login to Azure CLI
az login

VS代码配置

增添 .vscode/mcp.json:

{
  "servers": {
    "stratos": {
      "command": "node",
      "args": ["C:\\path\\to\\stratos-mcp\\dist\\index.js"],
      "type": "stdio"
    }
  }
}

🛡️ 输入验证和自动完成⭐ 新

增强的安全性(符合OWASP MCP-05标准):

  • 基于模式的验证 -所有Azure资源标识符(订阅ID、资源组、位置等)的正则表达式验证
  • 白名单验证 -根据Azure服务目录验证位置名称和资源类型
  • 消毒 -自动删除控制字符和长度强制
  • 清除错误消息 -有用的验证错误指导用户更正输入格式

改善用户体验:

  • 自动完成支持 -对位置、资源类型、格式和扫描模式的智能建议
  • 前缀过滤 -输入值时提前键入建议
  • 上下文感知 -根据当前工具和论点提出相关值

支持的完成:

  • location/locations -所有60多个Azure位置+“全部”、“通用”
  • resourceType -VM、存储、NSG、AKS、SQL、密钥库、公共IP、所有
  • format -markdown、json、html、pdf、csv
  • scanMode -共同的,所有
  • startFrom -公共ip、存储、vm、身份、所有

� 输出格式控制⭐ 新

所有30个安全工具现在都支持通过可选的 format 参数:

Markdown(默认) -人类可读的输出,非常适合文档和报告

#azure_whoami
# Returns: Clean markdown text (backward compatible)

JSON -具有元数据的机器可读结构化数据,用于自动化

#azure_whoami format: json
# Returns: { "tool": "azure_whoami", "format": "json", "timestamp": "...", "data": {...} }

主要优势:

  • ✅ 向后兼容 -现有工具无需更改即可工作(默认为markdown)
  • ✅ API集成 -JSON格式支持程序化消费
  • ✅ 自动化 -分析CI/CD管道的结构化数据
  • ✅ 元数据 -JSON包括工具名称、时间戳和版本控制
  • ✅ 灵活的 -根据用例为每个工具选择格式

支持的工具: 所有安全扫描器、枚举器和分析器(共34个工具)

示例用例:

# Export scan results to JSON for automation
#azure_analyze_storage_security subscriptionId: YOUR_SUB format: json > results.json

# Human-readable documentation output (default)
#azure_scan_sql_databases subscriptionId: YOUR_SUB

# Structured data for API integration
#azure_analyze_attack_paths subscriptionId: YOUR_SUB format: json

�📊 示例工作流

1.生成安全报告(快速与全面)

# Quick scan (4 core tools: Storage, NSG, SQL, KeyVault) - 5-10 seconds
generate_security_report subscriptionId="YOUR_SUB_ID" format="pdf" outputFile="C:\\reports\\quick-scan.pdf"

# Comprehensive scan (ALL 34 tools) - 30-60 seconds
generate_security_report subscriptionId="YOUR_SUB_ID" format="pdf" outputFile="C:\\reports\\full-scan.pdf" fullScan=true

2.分析攻击路径

analyze_attack_paths subscriptionId="YOUR_SUB_ID" startFrom="public-ips"

3.扫描Azure DevOps的秘密

scan_azure_devops organizationUrl="https://dev.azure.com/yourorg" personalAccessToken="YOUR_PAT"

4.AKS安全评估

# Comprehensive ARM-based scan
scan_aks_full subscriptionId="YOUR_SUB_ID" resourceGroup="RG-NAME" clusterName="CLUSTER-NAME"

# IMDS exploitation with token export
scan_aks_imds subscriptionId="YOUR_SUB_ID" resourceGroup="RG-NAME" clusterName="CLUSTER-NAME" scanAllPods=true exportTokens=true deepDataPlane=true

5.深度存储容器扫描

scan_storage_containers subscriptionId="YOUR_SUB_ID"

📄 报表格式

格式 用例 功能
PDF 高管演示文稿 颜色编码的严肃性,专业布局
超文本标记语言 交互式仪表板 现代风格,可排序的表格
CSV 数据分析,Excel 用于跟踪的结构化导出
JSON 自动化集成 机器可读格式
标记语言 文档 人类可读,版本控制

🔧 技术细节

依赖关系:

  • 适用于所有服务的Azure SDK v4+
  • Azure DevOps API v13.2.0
  • 用于导出的PDFKit、标记、CSV写入器
  • TypeScript 5.3.3,Node.js 20+
  • MCP SDK v1.0.4

支持的Azure服务:

  • 存储帐户、网络安全组
  • SQL数据库、密钥库、虚拟机
  • Cosmos DB,容器注册表
  • AKS/Kubernetes、Azure DevOps

⚠️ 免责声明

仅用于授权的安全测试

该工具专为进行授权渗透测试的安全专业人员而设计。用户必须:

  • 有目标组织的明确书面授权
  • 遵守所有适用的法律法规
  • 遵循负责任的披露做法
  • 遵守Azure服务条款

未经授权访问计算机系统是非法的。


📝 许可证

麻省理工学院

🤝 作者

h4cd0c - GitHub


制作❤️ 对于安全社区