你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

Kubernetes 群集的警报

Defender for Containers 为 Kubernetes(K8s)控制平面和工作负荷运行时的威胁提供增强的警报功能。 Microsoft Defender for Endpoint(MDE)和Microsoft Defender 威胁智能还会检测与 K8s 容器相关的威胁,并与 Defender 传感器相结合,为保护 K8s 环境提供全面的且可操作的警报的丰富上下文。

控制平面检测

在 Kubernetes 中,控制平面管理和协调群集中的所有资源。 Defender for Containers 通过监视 K8s API 服务器的活动来识别控制平面中的潜在威胁,这些威胁可能会损害整个群集的安全性和完整性。 捕获关键事件,指示潜在的安全威胁,例如服务帐户的可疑操作或服务暴露。

Defender for Containers 捕获的可疑操作示例包括:

  • 特权容器部署 可能是一种安全风险,因为它们在主机系统中授予容器提升的权限。 对特权容器进行监视,以便进行未经授权的部署、过度使用特权以及可能导致安全漏洞的潜在配置错误。
  • 公共 Internet 的风险服务暴露可能会使 Kubernetes 群集面临潜在攻击。 群集针对无意中公开、配置过度宽松的访问控制或缺乏适当的安全措施的服务进行监视。
  • 可疑服务帐户活动 可以指示群集中未经授权的访问或恶意行为。 针对异常模式(例如资源请求过多、未经授权的 API 调用或对敏感数据的访问)监视群集。

工作负荷运行时检测

Defender for Containers 使用 Defender 传感器 监视 K8s 工作负荷运行时活动,以检测可疑操作,包括工作负荷进程创建事件。

可疑工作负荷运行时活动的示例包括:

  • Web shell 活动 - Defender for Containers 监视正在运行的容器上的活动,以识别类似于 Web shell 调用的行为。
  • 加密挖掘活动 - Defender for Containers 使用多个启发法来识别正在运行的容器上的加密挖掘活动,包括可疑下载活动、CPU 优化、可疑进程执行等。
  • 网络扫描工具 – Defender for Containers 可识别已用于恶意活动的扫描工具的使用。
  • 二进制偏移检测 - Defender for Cloud 标识从原始容器映像偏移的工作负荷二进制文件的执行。 有关详细信息,请阅读有关二进制偏移检测的信息

K8s 警报模拟工具

Defender for Containers 提供了一个工具来模拟 K8s 环境中的各种攻击方案,从而导致生成警报。 模拟工具在目标群集中部署两个 Pod: 攻击者受害者。 在模拟期间,攻击者使用真实技术“攻击”受害者。

注意

尽管模拟工具不运行任何恶意组件,但建议在不使用生产工作负荷的专用群集上运行它。

模拟工具使用基于 Python 的 CLI 运行,该 CLI 在目标群集中部署 Helm 图表。

安装模拟工具

  1. 先决条件:

    • 具有目标群集的管理员权限的用户。

    • 已启用 Defender for Containers,并且还安装了 Defender 传感器。 可以通过运行以下命令来检查 Defender 传感器是否已安装:

      kubectl get ds microsoft-defender-collector-ds -n kube-system

    • Helm 客户端安装在本地计算机上。

    • 本地计算机上安装 Python 3.7 或更高版本。

  2. 指向 kubeconfig 目标群集。 对于Azure Kubernetes 服务,可以运行:

    az aks get-credentials --name [cluster-name] --resource-group [resource-group]

  3. 使用以下命令下载模拟工具:

    curl -O https://raw.githubusercontent.com/microsoft/Defender-for-Cloud-Attack-Simulation/refs/heads/main/simulation.py

运行模拟工具

  1. 使用以下命令运行模拟脚本: python simulation.py

  2. 选择模拟攻击方案,或选择同时模拟所有攻击方案。 可用的模拟攻击方案包括:

场景 预期警报
侦查 检测到可能的 Web Shell 活动
检测到可疑的 Kubernetes 服务帐户操作
检测到网络扫描工具
横向移动 检测到可能的 Web Shell 活动
检测到对云元数据服务的访问
机密收集 检测到可能的 Web Shell 活动
检测到敏感文件访问
检测到可能的机密侦查
加密挖掘 检测到可能的 Web Shell 活动
检测到 Kubernetes CPU 优化
访问的容器中的命令 ld.so.preload
检测到可能的加密矿工下载
检测到在容器中执行的偏移二进制文件
Web shell 检测到可能的 Web Shell 活动

注意

虽然某些警报几乎实时触发,但其他警报可能需要长达一小时的时间。

后续步骤