imartinez-88/cybershield-360-azure-security-assessment
GitHub: imartinez-88/cybershield-360-azure-security-assessment
一份基于真实Azure环境的企业级云安全评估报告,涵盖NIST SP 800-171合规差距分析、STRIDE威胁建模和APT29攻击链根因分析。
Stars: 0 | Forks: 0
# 🛡️ CyberShield-360 — Azure 安全评估




## 📋 概述
这份 60 页的安全评估涵盖了 Azure Key Vault 架构、NIST SP 800-171 差距分析、STRIDE 威胁建模,以及针对 **2024 年 Midnight Blizzard (APT29) 违规事件**的全面根因分析。基于真实的 Azure for Students 环境构建——而非模拟环境。
📄 **[查看完整报告 (PDF)](./Microsoft_Azure_Security_Assessment.pdf)**
## 🔍 内容概览
| 章节 | 描述 |
|---|---|
| **风险评估** | 针对大型云环境的 NIST SP 800-30 与 OCTAVE Allegro 对比分析 |
| **差距分析** | NIST SP 800-171 Rev.2 — AC、IA、SC、AU 控制族与 Azure Key Vault 的映射 |
| **威胁建模** | STRIDE 分析 + 使用 OWASP Threat Dragon 绘制的 Azure Key Vault 身份验证工作流 DFD |
| **违规分析** | APT29 / Midnight Blizzard 根因 — 密码喷洒 → OAuth 滥用 → 横向移动 |
| **实战加固** | 真实 Azure 环境:RBAC、诊断日志、KQL 监控、MFA 强制执行 |
| **Web 应用扫描** | 针对 Microsoft 面向公众的应用程序的 HTTP 安全标头评估 |
## 实战 Azure 环境
在真实配置的 Azure 环境上执行的安全加固:
```
Resource Group: cybershield-kv
Key Vault: test-api-key
Log Analytics: CyberSH-law
Subscription: Azure for Students
```
**已配置的 RBAC 主体:**
- `Isaac Martinez` — 所有者 + Key Vault 管理员(已继承)
- `IsaacMartinez@MartinezIsaac` — 作用域限定为单一机密的 Key Vault 读取者(外部用户 + MFA)
- `cybershield-app` — Key Vault 机密用户(服务主体)
**用于实时监控的 KQL 查询:**
```
AzureDiagnostics
| where ResourceType == "VAULTS"
| take 10
```
在 24 小时窗口内验证的操作:`SecretGet` · `SecretList` · `VaultGet` · `SecretListVersions` · `SecretResourceGet`
## STRIDE 威胁模型
| 类别 | 组件 | 威胁 |
|---|---|---|
| **欺骗** | API / 身份验证流程 | OAuth 伪造和 JWT 重放攻击 |
| **篡改** | Azure Key Vault | 未经授权的 KEK 和 DEK 密钥材料轮换/删除 |
| **否认** | Azure Monitor | 操纵审计日志以掩盖访问活动 |
| **信息泄露** | Azure Key Vault | 因策略配置错误导致的机密信息暴露 |
| **拒绝服务** | Key Vault Endpoint | 通过端点泛洪破坏可用性 |
| **权限提升** | Azure Entra ID | 通过配置错误的 AD 策略进行权限提升 |
## Midnight Blizzard 违规事件 — 攻击链
```
Password spraying against legacy test accounts (no MFA)
↓
Entra ID manipulation — attacker adds own credentials to compromised accounts
↓
Custom OAuth POST requests → authenticated token generation
↓
full_access_as_app Exchange permission → corporate mailbox access
↓
Senior leadership email accounts compromised
```
相同的攻击向量曾在 2023 年被用于攻击 HPE。分析结果直接反馈至加固步骤中。
## 已识别的差距与补救措施
| 风险 | 差距 | 时间线 |
|---|---|---|
| 🔴 高 | 未强制要求 HSM 支持的密钥存储 — 软件层不符合 FIPS 140-2 标准 | 0–30 天 |
| 🔴 高 | RBAC 最小权限原则在不同承包商租户间不一致 | 0–30 天 |
| 🔴 高 | Monitor/Sentinel 间的审计日志保留策略未标准化 | 30–60 天 |
| 🟡 中 | 未通过条件访问在所有账户上强制执行 MFA | 30–60 天 |
| 🟡 中 | 缺少自动化的 Key Vault 访问权限重新认证审查 | 60–90 天 |
## 技术栈
`Microsoft Azure` `Azure Key Vault` `Microsoft Entra ID` `Azure Monitor` `Microsoft Sentinel` `Azure Policy` `Microsoft Defender for Cloud` `OWASP Threat Dragon` `KQL` `FIPS 140-2`
## 截图
**KQL 实时查询输出**

**IAM 角色分配与所有权层级结构**

**Azure Log Analytics 工作区**

**OWASP Threat Dragon DFD**

**Azure Key Vault DFD**

## **风险时间线**

## 作者
**Isaac Martinez** — [@imartinez-88](https://github.com/imartinez-88)
标签:APT29, Azure Key Vault, FedRAMP, GitHub Advanced Security, HTTP安全头, KQL, Log Analytics, Modbus, NIST SP 800-171, OAuth令牌滥用, PE 加载器, RBAC加固, STRIDE模型, 午夜暴风雪, 反取证, 合规性分析, 基于角色的访问控制, 多因素认证, 威胁建模, 安全加固, 安全评估, 密码喷洒, 差距分析, 微软Azure, 数据泄露分析, 根因分析, 横向移动, 编程规范, 网络安全, 隐私保护, 风险管控