Krishanub5/SecureMultiCloudPlatform

GitHub: Krishanub5/SecureMultiCloudPlatform

跨越 AWS EKS 和 Azure AKS 的安全多云 Kubernetes 平台参考实现,覆盖从身份认证、集群加固、CI/CD 供应链安全到检测响应的完整安全生命周期。

Stars: 0 | Forks: 0

# 安全多云平台 ## 概述 本仓库包含一个跨越 AWS EKS 和 Azure AKS 的安全多云 Kubernetes 平台参考实现。相关材料包括架构与底层设计文档、技术宣讲 PPT、Terraform 模块骨架、Kubernetes 加固控制措施、CI/CD 安全门禁、可观测性仪表盘、检测规则以及事件响应包。 该设计侧重于五个可供审查的核心领域: 1. 无静态凭证的身份认证 2. 私有集群与工作负载加固 3. 跨云和 Kubernetes 来源的遥测数据标准化 4. 映射至 MITRE ATT&CK 的检测质量 5. 事件发生后的永久性修复 ## 平台范围 | 领域 | 设计选择 | |---|---| | AWS 区域 | `ap-southeast-2` | | Azure 区域 | `australiaeast` | | AWS Kubernetes | EKS 1.29 私有集群 | | Azure Kubernetes | AKS 1.29 私有集群 | | AWS 工作负载身份 | 带有 OIDC 联合身份验证的 IRSA | | Azure 工作负载身份 | AKS Workload Identity Federation | | CNI / Network Policy | Cilium eBPF | | Admission Policy | Kyverno enforce + OPA Gatekeeper audit | | Runtime Detection | Falco eBPF | | Supply Chain | Trivy, Grype, Syft, Cosign keyless, Rekor | | Observability | Fluent Bit, OpenSearch / Elastic, Prometheus, Grafana | | Compliance Alignment | AU ISM, ISO 27001, SOC 2 Type II | ## 仓库结构 ``` secure-multicloud-platform/ ├── README.md ├── docs/ │ ├── SecureMultiCloud-LLD.docx │ ├── SecureMultiCloud-Architecture.pptx │ └── readout-deck.html ├── diagrams/ │ ├── trust-boundary-architecture.mmd │ ├── identity-flow-aws-irsa.mmd │ ├── identity-flow-azure-workload-identity.mmd │ └── telemetry-path.mmd ├── terraform/ │ ├── modules/ │ └── envs/ ├── kubernetes/ │ ├── kyverno-policies/ │ ├── opa-gatekeeper/ │ ├── network-policies/ │ ├── falco-rules/ │ └── workloads/ ├── cicd/ │ ├── github-actions/ │ ├── policy/ │ └── release-controls/ ├── observability/ │ ├── fluent-bit/ │ ├── elastic/ │ ├── grafana/ │ ├── prometheus/ │ └── detections/ └── incident-response/ ``` ## 交付物映射 | 需求 | 位置 | |---|---| | 包含信任边界的架构图 | `docs/SecureMultiCloud-Architecture.pptx`, `diagrams/trust-boundary-architecture.mmd` | | 身份验证流 | `diagrams/identity-flow-aws-irsa.mmd`, `diagrams/identity-flow-azure-workload-identity.mmd` | | 遥测路径 | `diagrams/telemetry-path.mmd`, `observability/` | | Terraform 模块与环境 overlay | `terraform/modules/`, `terraform/envs/` | | 集群加固控制措施 | `kubernetes/kyverno-policies/`, `kubernetes/opa-gatekeeper/`, `kubernetes/network-policies/` | | Admission 与 Runtime 策略 | `kubernetes/kyverno-policies/`, `kubernetes/falco-rules/` | | 带有门禁、扫描、签名和发布控制的 CI/CD 流水线 | `cicd/github-actions/secure-release.yml` | | ELK / Grafana 仪表盘、检测项和告警逻辑 | `observability/elastic/`, `observability/grafana/`, `observability/detections/` | | 事件响应摘要与持久修复 | `incident-response/` | | 最终宣讲 PPT | `docs/SecureMultiCloud-Architecture.pptx`, `docs/readout-deck.html` | ## 15–20 分钟审查者验证指南 ### 1. 审查架构与决策说明 — 4 分钟 打开: ``` open docs/SecureMultiCloud-Architecture.pptx open docs/readout-deck.html ``` 验证: - 四个信任区域清晰可见:Internet、DMZ / Ingress、Application、Data / Secrets。 - AWS EKS 和 Azure AKS 均为私有集群。 - 身份验证流使用 IRSA 和 Azure Workload Identity,而非静态 Secret。 - 遥测路径展示了来源、收集、标准化、存储、检测和告警。 ### 2. 检查 Terraform 模块 Overlay — 4 分钟 ``` find terraform -maxdepth 3 -type f | sort ``` 验证: - `terraform/modules` 分离了 AWS network、AWS EKS、AWS security、Azure network、Azure AKS 和 observability。 - `terraform/envs/dev`、`staging` 和 `prod` 展示了 overlay 风格的组合。 - 生产环境使用了更严格的默认设置,如 private endpoint、审计日志、加密和策略强制执行。 ### 3. 检查 Kubernetes 加固控制措施 — 4 分钟 ``` find kubernetes -type f | sort ``` 验证: - Kyverno 阻止了特权 Pod、以 root 运行的容器、缺失 resource limit、未签名镜像、host namespace、hostPath 以及 `latest` 标签。 - Cilium / Kubernetes network policy 起始于默认拒绝。 - Falco eBPF 规则检测 shell 生成、service account token 读取、IMDS 访问、包管理器使用以及挖矿行为。 ### 4. 检查 CI/CD 门禁 — 4 分钟 ``` sed -n '1,260p' cicd/github-actions/secure-release.yml ``` 验证硬停止门禁: - Secret 扫描:Gitleaks 和 TruffleHog - IaC 扫描:Checkov 和 Conftest - SAST:Semgrep - SBOM:Syft - 漏洞扫描:Trivy 和 Grype - 签名:Cosign keyless - Admission 预检查:kubeconform 和 Kyverno CLI - 发布控制:staging 冒烟测试、生产环境审批、canary 发布 ### 5. 检查检测规则与仪表盘 — 3 分钟 ``` find observability -type f | sort ``` 验证: - 检测规则已映射至 MITRE ATT&CK。 - 告警路由至 PagerDuty 和 Slack。 - Grafana 仪表盘 JSON 包含 runtime、admission、CI/CD 和 incident-response 面板。 ## 关键设计决策 ### 工作负载身份优于静态凭证 AWS 工作负载使用 IRSA,Azure 工作负载使用 AKS Workload Identity Federation。这避免了在 Kubernetes 中存储云访问密钥、客户端密钥或长期有效的 token。token 作用域限定为 service account,生命周期短且可审计。 ### 私有集群与基于 Endpoint 的数据访问 EKS 和 AKS API 服务器是私有的。数据平面访问云服务使用 VPC endpoint 或 Azure Private Link,以避免 Secret、存储、数据库和控制平面遥测数据经过公共互联网路径。 ### 多层策略即代码 Kyverno 在 admission 阶段执行 Kubernetes 原生策略。OPA / Conftest 在 CI 中用于防止配置错误的基础设施和 manifest 进入集群。Falco 覆盖 admission 之后的 runtime 行为。 ### 生产环境仅允许已签名镜像 镜像基于锁定的依赖构建,经过两次扫描,分配 SBOM,使用 Cosign keyless 签名,记录在 Rekor 中,并在生产部署前和 admission 阶段进行验证。 ### 遥测数据标准化 来自 Kubernetes、Falco、AWS、Azure 和应用程序的日志映射为 ECS 风格字段。这改善了跨来源的关联性,并使检测规则与具体云平台无关。 ## 重要说明 - Terraform 代码是一个可运行的参考结构,并非即插即用的生产部署。在应用之前,请填入 account ID、subscription ID、DNS zone 和 remote backend 设置。 - 本仓库刻意避免了不透明的、仅限控制台的操作。每个关键控制都以 Terraform、YAML、策略、仪表盘 JSON 或文档的形式体现。 - 生产 Secret 应通过云原生的 secret manager 在本仓库外创建,并通过 workload identity 和 CSI provider 进行引用。
标签:AMSI绕过, API集成, AWS EKS, AWS IRSA, Azure AKS, Azure Workload Identity, Chrome Headless, CI/CD安全, Cilium, CISA项目, Cloudflare, Cosign, DevSecOps, ECS, Falco, Fluent Bit, Grafana, Kubernetes安全, Llama, MITRE ATT&CK, Modbus, NPM, OIDC联合身份, OISF, OPA Gatekeeper, SBOM, StruQ, Terraform, 上游代理, 人工智能安全, 可观测性, 合规性, 威胁检测, 子域名突变, 安全参考架构, 安全架构, 安全门禁, 实时处理, 工作负载身份, 敏感词过滤, 日志管理, 模拟器, 硬件无关, 私有集群, 网络策略, 自定义请求头, 足迹分析, 遥测, 镜像签名, 集群加固