Container Threat Detection 概览

本页面简要介绍了 Container Threat Detection 的概念和功能。

什么是 Container Threat Detection?

Container Threat Detection 是 Security Command Center 的一项内置服务,可持续监控 Container-Optimized OS 节点映像的状态。该服务会评估所有更改和远程访问尝试以便以近乎实时的方式检测运行时攻击。

Container Threat Detection 可检测最常见的容器运行时攻击,并在 Security Command Center 和(可选)Cloud Logging 中提醒您。Container Threat Detection 可提供多种检测功能(包括可疑的二进制文件和库),并使用自然语言处理 (NLP) 来检测恶意 Bash 和 Python 代码。

Container Threat Detection 仅适用于 Security Command Center 的高级方案或 Enterprise 方案。

Container Threat Detection 的工作原理

Container Threat Detection 检测插桩收集客机内核中的低级行为并执行脚本。以下是检测到事件时的执行路径:

  1. Container Threat Detection 通过用户模式 DaemonSet 将事件信息和标识容器的信息传递给检测器服务进行分析。启用 Container Threat Detection 时,系统会自动配置事件收集。

    Watcher DaemonSet 会尽最大努力传递容器信息。如果 Kubernetes 和容器运行时未及时传递相应的容器信息,则系统可能会从报告的发现结果中删除容器信息。

  2. 检测器服务会分析事件,以确定事件是否表示突发事件。系统使用 NLP 分析 Bash 和 Python 脚本,以确定执行的代码是否为恶意代码。

  3. 如果检测器服务发现突发事件,突发事件会以发现结果形式写入 Security Command Center 和(可选)Cloud Logging 中。

    • 如果检测器服务无法识别突发事件,则不会存储发现结果信息。
    • 内核和检测器服务中的所有数据都是临时的,不会永久存储。

您可以在 Security Command Center 控制台查看发现结果详情,并调查发现结果信息。您能否查看和修改结果取决于您被授予的角色。如需详细了解 Security Command Center 角色,请参阅访问权限控制

注意事项

集群中安装的其他安全检测工具可能会影响 Container Threat Detection 的性能,并导致其出现故障。建议如集群已启用 Container Threat Detection,则不要再安装其他安全检测工具,以免影响性能。

Container Threat Detection 检测器

Container Threat Detection 包括以下检测器:

检测器 模块 说明 要检测的输入
已执行添加的二进制文件 ADDED_BINARY_EXECUTED

执行了不属于原始容器映像的二进制文件。

如果攻击者执行了添加的二进制文件,可能表明其已控制工作负载,并正在运行任意命令。

此检测器默认处于停用状态。如需了解如何启用该功能,请参阅测试 Container Threat Detection

发现结果会被归类为严重程度。

检测器会查找被执行的二进制文件,该文件不是原始容器映像的一部分,或已通过原始容器映像进行修改。
已加载添加的库 ADDED_LIBRARY_LOADED

已加载不属于原始容器映像的库。

如果添加的库已加载,则可能表示攻击者控制了工作负载并正在执行任意代码。

此检测器默认处于停用状态。如需了解如何启用该功能,请参阅测试 Container Threat Detection

发现结果会被归类为严重程度。

检测器会查找被加载的库,该库不是原始容器映像的一部分,或者已被修改。
命令和控制:检测到信息隐写工具 STEGANOGRAPHY_TOOL_DETECTED

执行了一个被识别为类似 Unix 环境中常见的信息隐写工具的程序,表明可能有人试图隐藏通信或数据传输。

攻击者可能会利用隐写术将恶意命令和控制 (C2) 指令或窃取的数据嵌入看似良性的数字文件中,以逃避标准的安全监控和检测。识别此类工具的使用情况对于发现隐藏的恶意活动至关重要。

发现结果的严重程度会被归类为严重

此检测器会监控已知信息隐写工具的执行情况。此类工具的存在表明,有人故意试图混淆网络流量或窃取数据,从而可能建立用于恶意目的的隐秘通信渠道。
凭证访问权限:查找 Google Cloud 凭证 FIND_GCP_CREDENTIALS

执行了命令,以在容器环境中搜索 Google Cloud 私钥、密码或其他敏感凭证。

攻击者可能会使用窃取的 Google Cloud 凭证来非法访问目标 Google Cloud 环境中的敏感数据或资源。

发现结果会被归类为严重程度。

此检测器默认处于停用状态。默认情况下,发现结果会被归类为严重程度。如需了解如何启用该功能,请参阅测试 Container Threat Detection

此检测会监控尝试查找包含 Google Cloud凭证的文件的 findgrep 命令。
凭证访问权限:GPG 密钥侦察 GPG_KEY_RECONNAISSANCE

执行了用于搜索 GPG 安全密钥的命令。

攻击者可能会使用窃取的 GPG 安全密钥来获取对加密通信或文件的未经授权的访问权限。

发现结果的严重程度会被归类为严重

此检测器会监控尝试查找 GPG 安全密钥的 findgrep 命令。
凭证访问权限:搜索私钥或密码 SEARCH_PRIVATE_KEYS_OR_PASSWORDS

执行了在容器环境中搜索私钥、密码或其他敏感凭证的命令,表明可能有人试图收集身份验证数据。

攻击者通常会搜索凭证文件,以便未经授权访问系统、提升特权或在环境中横向移动。检测此类活动对于防止安全违规至关重要。

发现结果会被归类为严重程度。

此检测器会监控用于查找私钥、密码或凭证文件的已知命令。在容器化环境中出现此类搜索可能表明存在侦察活动或正在遭受入侵。
防护规避:Base64 ELF 文件命令行 BASE64_ELF_FILE_CMDLINE

执行了一个进程,其中包含一个 ELF(可执行和可链接格式)文件的参数。

如果检测到执行经过编码的 ELF 文件,则表示攻击者正尝试对二进制数据进行编码,以便将其传输到仅限 ASCII 的命令行。攻击者可以使用此技术来逃避检测并运行嵌入 ELF 文件中的恶意代码。

发现结果的严重程度为

此检测会监控包含 ELF 且采用 base64 编码的进程参数。
防护规避:已执行 Base64 编码的 Python 脚本 BASE64_ENCODED_PYTHON_SCRIPT_EXECUTED

执行了一个进程,其中包含一个以 base64 编码的 Python 脚本的参数。

如果检测到执行经过编码的 Python 脚本,则表示攻击者正尝试将二进制数据编码,以便通过仅限 ASCII 的命令行进行传输。攻击者可以使用此技术来逃避检测并运行嵌入 Python 脚本中的恶意代码。

发现结果的严重程度为

此检测操作会监控进程参数,查找其中是否包含各种形式的 python -c,并且是否为 base64 编码。
防护规避:执行 Base64 编码的 shell 脚本 BASE64_ENCODED_SHELL_SCRIPT_EXECUTED

执行了一个进程,其中包含一个以 base64 编码的Shell 脚本的参数。

如果检测到执行经过编码的 Shell 脚本,则表示攻击者正试图将二进制数据编码,以便通过仅限 ASCII 的命令行进行传输。攻击者可以使用此技术来逃避检测并运行嵌入 Shell 脚本中的恶意代码。

发现结果的严重程度为

此检测操作会监控进程参数,以查找包含各种形式的 shell 命令(并且这些命令经过 base64 编码)的参数。
防护规避:在容器中启动代码编译器工具 LAUNCH_CODE_COMPILER_TOOL_IN_CONTAINER

在容器环境中启动了一个进程,用于运行代码编译器工具,表明可能有人试图在隔离的上下文中构建或修改可执行代码。

攻击者可能会在容器中使用代码编译器来开发恶意载荷、将代码注入现有二进制文件中,或创建用于绕过安全控制的工具,同时在审查较少的环境中运行,以逃避主机系统上的检测。

发现结果会被归类为严重程度。

此检测器会监控容器内已知代码编译器工具的执行情况。此类活动的存在表明,攻击者可能试图在容器内开发或修改恶意代码,这可能是为了规避防御措施,以篡改系统组件或客户端软件。
执行:已执行添加的恶意二进制文件 ADDED_MALICIOUS_BINARY_EXECUTED

执行了满足以下条件的二进制文件:

  • 根据威胁情报标识为恶意
  • 不属于原始容器映像

如果执行了添加的恶意二进制文件,则很可能表示攻击者控制了工作负载,并且正在执行恶意软件。

发现结果的严重程度会被归类为严重

检测器会查找正在执行的二进制文件,该二进制文件不是原始容器映像的一部分,并且根据威胁情报被标识为恶意。
执行:加载了添加的恶意库 ADDED_MALICIOUS_LIBRARY_LOADED

加载了满足以下条件的库:

  • 根据威胁情报标识为恶意
  • 不属于原始容器映像

如果加载了添加的恶意库,则很可能表示攻击者控制了工作负载,并且正在执行恶意软件。

发现结果的严重程度会被归类为严重

检测器查找正在加载的库,该库不是原始容器映像的一部分,并且根据威胁情报被标识为恶意。
执行:执行了内置恶意二进制文件 BUILT_IN_MALICIOUS_BINARY_EXECUTED

执行了满足以下条件的二进制文件:

  • 根据威胁情报标识为恶意
  • 添加在原始容器映像中

如果检测到执行了内置的恶意二进制文件,则说明攻击者正在部署恶意容器。攻击者可能已控制合法的映像代码库或容器构建流水线,并向容器映像中注入了恶意二进制文件。

发现结果的严重程度会被归类为严重

检测器会查找正在执行的二进制文件,该二进制文件包含在原始容器映像中,并且根据威胁情报被标识为恶意。
执行:容器逃逸 CONTAINER_ESCAPE

在容器内执行了一个进程,该进程试图突破容器的隔离,这可能会让攻击者获得对主机系统的访问权限。

如果检测到容器逃逸尝试,则可能表示攻击者正在利用漏洞来突破容器。 因此,攻击者可能会获得对主机系统或更广泛基础设施的未经授权的访问权限,从而入侵整个环境。

发现结果的严重程度会被归类为严重

检测器会监控尝试利用容器边界的进程,这些进程使用已知的逃逸技术或二进制文件。这些进程被威胁情报标记为针对底层主机系统的潜在攻击。
执行:/memfd 中的 Fileless Execution(无文件执行): FILELESS_EXECUTION_DETECTION_MEMFD

使用内存中的文件描述符执行了进程。

如果进程是从内存文件启动的,则可能表明攻击者正试图绕过其他检测方法来执行恶意代码。

发现结果的严重程度会被归类为

检测器会监控从 /memfd: 执行的进程。
执行:Ingress Nightmare 漏洞执行(预览版 INGRESS_NIGHTMARE_VULNERABILITY_EXPLOITATION

如果监测到 Nginx 执行命令中包含对 ingress-nginx 容器中 /proc 文件系统的引用,即可检测到 CVE-2025-1974 的执行行为,这可能表明存在远程代码执行的风险。

此类漏洞可让恶意行为者在 ingress-nginx 控制器中执行任意代码,从而可能导致敏感的 Kubernetes Secret 泄露。

发现结果的严重程度为

此检测器会监控 ingress-nginx 容器中是否存在包含对 /proc 文件系统的引用的参数的 Nginx 执行,以指示潜在的远程代码执行。
执行:Kubernetes 攻击工具执行 KUBERNETES_ATTACK_TOOL_EXECUTION

在环境中执行了 Kubernetes 专用攻击工具,这可能表明攻击者正在以 Kubernetes 集群组件为目标。

如果攻击工具在 Kubernetes 环境中执行,则可能表明攻击者已获得对集群的访问权限,并且正在使用该工具来利用 Kubernetes 特定漏洞或配置。

发现结果的严重程度会被归类为严重

检测器会查找正在执行且根据情报数据标识为潜在威胁的 Kubernetes 攻击工具。检测器会触发提醒,以缓解集群中潜在的入侵风险。
执行:本地侦察工具执行 LOCAL_RECONNAISSANCE_TOOL_EXECUTION

执行了通常与容器或环境无关的本地侦察工具,表明有人试图收集内部系统信息。

如果执行了侦察工具,则表明攻击者可能正在试图绘制基础设施图、识别漏洞或收集系统配置数据,以规划后续步骤。

发现结果的严重程度会被归类为严重

该检测器会监控环境中是否正在执行已知的侦察工具(通过威胁情报识别),这可能表明正在为更恶意的活动做准备。
执行:已执行恶意 Python MALICIOUS_PYTHON_EXECUTED

机器学习模型将指定的 Python 代码标识为恶意代码。攻击者可以利用 Python 将工具或其他文件从外部系统转移到遭入侵的环境,并在不使用二进制文件的情况下执行命令。

发现结果的严重程度会被归类为严重

检测器使用 NLP 技术来评估已执行的 Python 代码的内容。由于此方法并非基于签名,因此检测器可以识别已知和新型的 Python 代码。
执行:已执行修改的恶意二进制文件 MODIFIED_MALICIOUS_BINARY_EXECUTED

执行了满足以下条件的二进制文件:

  • 根据威胁情报标识为恶意
  • 添加在原始容器映像中
  • 在运行时期间从原始容器映像修改

如果执行了修改的恶意二进制文件,则很可能表示攻击者控制了工作负载,并且正在执行恶意软件。

发现结果的严重程度会被归类为严重

检测器会查找正在执行的二进制文件,该二进制文件最初包含在容器映像中,但在运行时期间被修改,并且根据威胁情报被识别为恶意文件。
执行:加载了修改的恶意库 MODIFIED_MALICIOUS_LIBRARY_LOADED

加载了满足以下条件的库:

  • 根据威胁情报标识为恶意
  • 添加在原始容器映像中
  • 在运行时期间从原始容器映像修改

如果加载了修改的恶意库,则很可能表示攻击者控制了工作负载,并且正在执行恶意软件。

发现结果的严重程度会被归类为严重

检测器会查找正在加载的库,该库最初包含在容器映像中,但在运行时期间被修改,并根据威胁情报被识别为恶意库。
执行:容器中的 Netcat 远程代码执行 NETCAT_REMOTE_CODE_EXECUTION_IN_CONTAINER

在容器环境中执行了多功能网络工具 Netcat,这可能表明有人试图建立未经授权的远程访问或窃取数据。

在容器化环境中使用 Netcat 可能表明攻击者试图创建反向 shell、实现横向移动或执行任意命令,这可能会损害系统完整性。

发现结果会被归类为严重程度。

检测器会监控容器内 Netcat 的执行情况,因为在生产环境中使用 Netcat 并不常见,这可能表明有人试图绕过安全控制或执行远程命令。
执行:疑似检测到远程命令执行 POSSIBLE_REMOTE_COMMAND_EXECUTION_DETECTED

检测到一个进程通过网络套接字连接启动常见的 UNIX 命令,表明可能有人试图建立未经授权的远程命令执行功能。

攻击者经常利用模仿反向 shell 的技术来获得对遭入侵系统的交互式控制,从而能够远程执行任意命令并绕过标准网络安全措施(例如防火墙限制)。检测到通过套接字执行命令是恶意远程访问的有力证据。

发现结果的严重程度为

此检测器会监控网络套接字的创建,然后监控标准 UNIX shell 命令的执行。此模式表明有人试图创建远程命令执行的隐蔽通道,可能会在受控主机上进一步执行恶意活动。
执行:在禁止使用 HTTP 代理的环境中运行的程序 PROGRAM_RUN_WITH_DISALLOWED_HTTP_PROXY_ENV

检测到使用被禁止的 HTTP 代理环境变量执行了某个程序。这可能表明有人试图绕过安全控制、出于恶意目的重定向流量或通过未经授权的渠道窃取数据。

攻击者可能会配置被禁止的 HTTP 代理来拦截敏感信息、通过恶意服务器路由流量或建立隐蔽通信渠道。检测使用这些环境变量的程序的执行对于维护网络安全和防止数据泄露至关重要。

发现结果会被归类为严重程度。

此检测器会监控是否执行了具有明确禁止的 HTTP 代理环境变量的程序。使用这些代理,尤其是在非预期情况下,可能表明存在恶意活动,应立即展开调查。
执行:已加载可疑的 OpenSSL 共享对象 SUSPICIOUS_OPENSSL_SHARED_OBJECT_LOADED

已执行 OpenSSL 来加载自定义共享对象。

攻击者可能会加载自定义库并替换 OpenSSL 使用的现有库,以运行恶意代码。在生产环境中使用该库并不常见,应立即展开调查。

发现结果的严重程度会被归类为严重

此检测器会监控 openssl engine 命令的执行情况,以便加载自定义 .so 文件。
提取:在容器中启动远程文件复制工具 LAUNCH_REMOTE_FILE_COPY_TOOLS_IN_CONTAINER

在容器内检测到远程文件复制工具执行,表明可能存在数据渗漏、横向移动或恶意载荷部署。

攻击者通常会使用这些工具将敏感数据转移到容器外部,在网络内横向移动以入侵其他系统,或引入恶意软件以进行进一步的恶意活动。检测远程文件复制工具的使用情况对于防止数据泄露、未经授权的访问,以及容器系统甚至宿主系统遭进一步入侵至关重要。

发现结果会被归类为严重程度。

此检测器会监控容器环境中已知远程文件复制工具的执行情况。它们的存在(尤其是意外出现时)可能表明存在恶意活动。
影响:检测恶意命令行 DETECT_MALICIOUS_CMDLINES

检测到执行的命令包含已知可能具有破坏性的参数,例如试图删除关键系统文件或修改密码相关配置。

攻击者可能会发出恶意命令行,导致系统不稳定、通过删除必要文件来阻止恢复,或通过操纵用户凭证来获得未经授权的访问权限。检测这些特定命令模式对于防止系统遭受严重影响至关重要。

发现结果的严重程度会被归类为严重

此检测器会监控命令行参数的执行情况,这些参数与系统损坏或权限升级相关的模式相匹配。此类命令的存在表明可能存在主动尝试影响系统可用性或安全性的行为。
影响:从磁盘中移除批量数据 REMOVE_BULK_DATA_FROM_DISK

检测到一个进程在执行批量数据删除操作,这可能表明有人试图在容器环境中清除证据、干扰服务或执行数据擦除攻击。

攻击者可能会移除大量数据来掩盖其踪迹、破坏运营或为部署勒索软件做准备。检测此类活动有助于在关键数据丢失发生前识别潜在威胁。

发现结果会被归类为严重程度。

检测器会监控与批量数据删除或其他数据擦除工具相关的命令和进程,以识别可能损害系统完整性的可疑活动。
影响:使用 Stratum 协议的可疑加密货币挖矿活动 SUSPICIOUS_CRYPTO_MINING_ACTIVITY_USING_STRATUM_PROTOCOL

检测到一个进程正在通过 Stratum 协议进行通信,该协议通常由加密货币挖矿软件使用。此活动表明容器环境中可能存在未经授权的挖矿操作。

攻击者通常会部署加密货币挖矿程序来利用系统资源获取经济利益,从而导致性能下降、运营成本增加,并带来潜在的安全风险。检测此类活动有助于缓解资源滥用和未经授权的访问。

发现结果的严重程度会被归类为

此检测器会监控环境中的已知 Stratum 协议使用情况。由于合法的容器工作负载通常不会使用 Stratum,因此一旦出现 Stratum,可能表示存在未经授权的挖矿操作或容器已遭入侵。
已执行恶意脚本 MALICIOUS_SCRIPT_EXECUTED

机器学习模型将指定的 Bash 代码标识为恶意代码。攻击者可以利用 Bash 将工具或其他文件从外部系统转移到遭到入侵的环境,并在不使用二进制文件的情况下执行命令。

发现结果的严重程度会被归类为严重

检测器使用 NLP 技术来评估已执行的 Bash 代码的内容。由于该方法不是基于签名,因此检测器能够识别已知和新型的恶意 bash 命令。
观察到恶意网址 MALICIOUS_URL_OBSERVED

Container Threat Detection 在运行中的进程参数列表中发现了一个恶意网址。

发现结果的严重程度为

检测器会根据 Google 安全浏览服务维护的不安全 Web 资源列表,对在正在运行的进程的参数列表中观察到的网址进行检查。如果网址被错误地分类为钓鱼式攻击网址或恶意网址,请在报告错误数据中进行举报。
提升权限:/dev/shm 中的无文件执行 FILELESS_EXECUTION_DETECTION_SHM

/dev/shm 内的路径执行了进程。

通过从 /dev/shm 执行文件,攻击者可以从该目录执行恶意代码以逃避安全工具的检测,从而允许他们进行权限提升或进程注入攻击。

发现结果的严重程度会被归类为

检测器会查找从 /dev/shm 执行的任何进程
反向 shell REVERSE_SHELL

通过流式传输重定向到远程连接的套接字的过程。

借助反向 shell,攻击者可以通过已破解的工作负载与攻击者控制的机器进行通信。然后,攻击者可以命令和控制工作负载,例如将其作为僵尸网络的一部分。

发现结果的严重程度会被归类为严重

检测器会查找绑定到远程套接字的 stdin
意外的子 shell UNEXPECTED_CHILD_SHELL

通常不调用 shell 的进程生成了 shell 进程。

发现结果的严重程度会被归类为严重

检测器监控所有进程执行。调用 shell 时,如果父级进程通常不会调用 shell,则检测器会生成发现结果。

后续步骤