Skip to content

关于虚拟机管理程序和容器扩展漏洞的研究(2018–2024)

拓展/插件漏洞案例收集

下表汇总了过去 5 年中与扩展或插件(并非核心平台)相关的 20 个真实漏洞。每个案例列出了漏洞 ID(或 CVE)、受影响的扩展及其所运行的平台、漏洞类型、根本原因、对主机系统的影响,以及最终解决方法。

Bug ID / CVE Affected Extension (Platform) Bug Type Root Cause Impact on Host System Resolution
CVE-2021-21972 vRealize Operations (vROps) Plugin for VMware vCenter Security – RCE No authentication on vROps plugin file-upload endpoint (CVE-2021-21972: VMware vCenter Server Remote Code Execution Vulnerability - Blog | Tenable®) Unauthenticated attacker could upload malicious files and execute code with SYSTEM/root privileges on vCenter (CVE-2021-21972: VMware vCenter Server Remote Code Execution Vulnerability - Blog | Tenable®) Patch provided by VMware (VMSA-2021-0002); workaround was to disable the vulnerable plugin (CVE-2021-21972: VMware vCenter Server Remote Code Execution Vulnerability - Blog | Tenable®).
CVE-2021-21985 vSAN Health Check Plugin for VMware vCenter Security – RCE Lack of input validation in vSAN Health Check plugin API (CVE-2021-21985: Critical VMware vCenter Server Remote Code Execution - Blog | Tenable®) Network attacker (once in reach of vCenter 443) could execute arbitrary OS commands on vCenter host (CVE-2021-21985: Critical VMware vCenter Server Remote Code Execution - Blog | Tenable®) (full compromise of vCenter) Patched by VMware (VMSA-2021-0010); customers urged to apply updates immediately (CVE-2021-21985: Critical VMware vCenter Server Remote Code Execution - Blog | Tenable®) (CVE-2021-21985: Critical VMware vCenter Server Remote Code Execution - Blog | Tenable®).
CVE-2021-21986 Multiple vCenter Plugins (vSphere Client) Security – Auth Bypass Flawed authentication mechanism in vCenter plugin framework (CVE-2021-21985: Critical VMware vCenter Server Remote Code Execution - Blog | Tenable®) Attackers with network access to vCenter could invoke plugin actions without authentication (CVE-2021-21985: Critical VMware vCenter Server Remote Code Execution - Blog | Tenable®) (perform unauthorized operations via plugin APIs) Patched by VMware; users advised to update. The fix corrected the auth enforcement in the affected plugins (CVE-2021-21985: Critical VMware vCenter Server Remote Code Execution - Blog | Tenable®).
CVE-2021-21973 vCenter Server Plugin (vSphere Client) Security – SSRF Improper URL validation in plugin HTTP requests (NVD - CVE-2021-21973) Unauthenticated attacker could abuse the plugin to have vCenter perform internal HTTP requests, leading to information disclosure (SSRF) (NVD - CVE-2021-21973) Patched by VMware (in vCenter 7.0 U1c, 6.7 U3l, 6.5 U3n) (NVD - CVE-2021-21973), closing the SSRF loophole.
CVE-2021-21984 vRealize Business for Cloud (vCenter add-on appliance) Security – RCE Exposed unauthenticated endpoint in the vRealize Business appliance (CVE - Search Results) Remote attacker could execute arbitrary code on the vRealize Business virtual appliance (full appliance takeover) (CVE - Search Results) Fixed in vRealize Business 7.6.0; update required to remove the unauthorized endpoint.
CVE-2021-21982 Carbon Black Cloud Workload Appliance (vCenter plugin) Security – Auth Bypass Missing authentication in administrative interface API (CVE - Search Results) Network attacker could obtain a valid admin token and alter configuration on the workload security appliance (CVE - Search Results) (compromising its protections) Patch released by VMware; admins instructed to update the appliance to enforce auth on the interface.
CVE-2021-21981 VMware NSX-T (Network Virtualization) Security – Priv. Escalation RBAC logic flaw in NSX-T roles (CVE - Search Results) A local low-privileged NSX-T user could assign themselves higher privileges than permitted (CVE - Search Results), effectively gaining admin-level access Patched by VMware in NSX-T update; role assignment checks were corrected to prevent privilege escalation.
CVE-2020-10703 Libvirt Storage Pool Driver (KVM) General – Crash/DoS Null-pointer dereference when pool has no target path (Security update for libvirt SUSE-SU-2020:1208-1 | SUSE Support | SUSE) Malicious or misconfigured user could define a storage pool without a target, causing the libvirtd daemon to crash (Security update for libvirt SUSE-SU-2020:1208-1 | SUSE Support | SUSE) (denial of service in VM management) Fixed in libvirt; update checks for valid pool parameters to avoid the crash (Security update for libvirt SUSE-SU-2020:1208-1 | SUSE Support | SUSE).
CVE-2020-12430 Libvirt QEMU Driver (KVM) General – Memory Leak Memory leak in qemuDomainGetStatsIOThread handling (Security update for libvirt SUSE-SU-2020:1208-1 | SUSE Support | SUSE) Repeated stats queries could exhaust memory in the libvirt daemon, degrading performance or crashing the host’s VM management service (Security update for libvirt SUSE-SU-2020:1208-1 | SUSE Support | SUSE) Memory leak patched in libvirt; users advised to update to the fixed version (SUSE patch SUSE-SU-2020:1208-1) (Security update for libvirt SUSE-SU-2020:1208-1 | SUSE Support | SUSE).
CVE-2020-29487 Xen XAPI Toolstack (XenServer) Security – DoS Inefficient algorithm for xenstore watch updates (O(n^2) time and O(m·n) memory usage) (CVE-2020-29487: Xen XAPI Vulnerability Leading to Host Denial of Service) A malicious guest could spam xenstore keys, causing excessive memory use in dom0 (CVE-2020-29487: Xen XAPI Vulnerability Leading to Host Denial of Service) and ultimately hang or crash the host (denial of service) Fixed in XAPI (Dec 2020 update) – improved update handling to break the resource exhaustion pattern (CVE-2020-29487: Xen XAPI Vulnerability Leading to Host Denial of Service). Patching the host Xen installation eliminates the issue.
CVE-2024-41110 Docker Engine Authorization Plugin Security – AuthZ Bypass Regression re-introduced AuthZ plugin bypass via crafted API request (Content-Length: 0 trick) (Docker Security Advisory: AuthZ Plugin Bypass Regression in Docker Engine | Docker) (Docker Security Advisory: AuthZ Plugin Bypass Regression in Docker Engine | Docker) Users with access to the Docker API could perform actions bypassing authorization policy, potentially executing prohibited docker commands (privilege escalation on the host) (Docker Security Advisory: AuthZ Plugin Bypass Regression in Docker Engine | Docker) (Docker Security Advisory: AuthZ Plugin Bypass Regression in Docker Engine | Docker) Patched in Docker v23.0.15, v26.1.5, etc. (fix re-applied) (Docker Security Advisory: AuthZ Plugin Bypass Regression in Docker Engine | Docker). Upgrade Docker Engine; as interim mitigation, restrict Docker API access or avoid using vulnerable AuthZ plugins (Docker Security Advisory: AuthZ Plugin Bypass Regression in Docker Engine | Docker).
CVE-2024-8695 Docker Desktop Extensions (GUI Plugins) Security – RCE Improper handling of extension metadata (description/changelog) (NVD - CVE-2024-8695) Installing a malicious Docker Desktop extension could trigger arbitrary code execution on the host (NVD - CVE-2024-8695), as the extension’s crafted metadata is processed with unsafe logic (allowing injection) Fixed in Docker Desktop 4.34.2; update sanitizes extension descriptors. Users should upgrade and only install trusted extensions (NVD - CVE-2024-8695).
CVE-2021-43979 OPA Gatekeeper (Kubernetes Admission Controller) Security – Policy Bypass (Consistency) Concurrency issue: Gatekeeper doesn’t wait for cluster state sync before evaluating policies (NVD - CVE-2021-43979) In rare cases, a race condition could let a resource slip past a Gatekeeper policy (policy not enforced due to stale data) (NVD - CVE-2021-43979). This could allow unauthorized changes that should have been blocked Disputed by vendor as “eventual consistency” limitation (NVD - CVE-2021-43979), but a fix in later versions ensures Gatekeeper waits for data sync. Users advised to upgrade to Gatekeeper ≥3.8.0 (or mitigate by designing policies mindful of eventual consistency).
CVE-2023-34091 Kyverno (Kubernetes Policy Controller) Security – Policy Bypass Logic oversight: Kyverno skipped validation for resources with a deletionTimestamp set (CVE-2023-34091: Kyverno Policy Bypass Vulnerability for Kubernetes) An attacker with delete rights could add a finalizer to a resource (e.g. a Service) without deleting it, then modify the resource to bypass enforced policies (CVE-2023-34091: Kyverno Policy Bypass Vulnerability for Kubernetes) (since Kyverno treated it as already in deletion) Fixed in Kyverno 1.10.0 with a redesign of how deletionTimestamp is handled (CVE-2023-34091: Kyverno Policy Bypass Vulnerability for Kubernetes). Upgrade requires manual migration of policies due to breaking changes (CVE-2023-34091: Kyverno Policy Bypass Vulnerability for Kubernetes).
(no CVE) Kyverno Crash Bug Kyverno Admission Controller (when deployed via ArgoCD) General – Logic Error Missing RBAC permission in Kyverno’s Helm chart (service account lacked access to query CRDs) ([Bug] Kyverno controller is crashlooping · Issue #10122 · kyverno/kyverno · GitHub) Kyverno controller continuously crash-looped (“Forbidden” errors on accessing its CRD resources) ([Bug] Kyverno controller is crashlooping · Issue #10122 · kyverno/kyverno · GitHub) – resulting in no policies being enforced and destabilizing the admission workflow Resolved by updating the deployment manifest: added the needed ClusterRole permissions for CRDs. Users needed to patch the RBAC or use the fixed chart release.
CVE-2021-33505 Sysdig Falco (Container Security Monitor) Security – Detection Bypass Time-of-check/time-of-use bug in syscall argument capture (NVD - CVE-2021-33505) A local attacker could run a program that changes its syscall arguments at runtime, fooling Falco into logging benign values while the malicious call executes (NVD - CVE-2021-33505). This lets processes evade Falco’s rule detection (stealthy malicious activity) Fixed in Falco 0.29.1 by capturing syscall arguments more safely (NVD - CVE-2021-33505). Users should upgrade to ensure accurate inspection.
CVE-2019-8339 Sysdig Falco (Container Security Monitor) General – Design Flaw (Alerting) Missing indicator when Falco drops events due to resource exhaustion (NVD - CVE-2019-8339) If Falco ran out of CPU/memory or hit event limits, it could silently skip monitoring events (NVD - CVE-2019-8339). An attacker could overload Falco to bypass detection without any alert (security controls fail open) Improvement in later Falco versions: Falco now reports when it can’t keep up, or applies backpressure. Administrators should update Falco and tune its resource usage to avoid silent failures.
CVE-2024-28860 Cilium (eBPF Container Network Plugin) Security – Crypto Weakness Using identical IPsec keys across nodes led to ESP sequence number collisions (NVD - CVE-2024-28860) Allowed chosen-plaintext, replay, and key recovery attacks on inter-node encrypted traffic (NVD - CVE-2024-28860). A man-in-the-middle could decrypt or spoof supposedly secure pod-to-pod traffic (transparent encryption was rendered ineffective) Fixed in Cilium 1.13.13/1.14.9/1.15.3: each node now uses unique keys for IPsec tunnels (NVD - CVE-2024-28860). All clusters using IPsec must update to restore strong encryption.
CVE-2023-30851 Cilium (K8s Network Policy Engine) Security – Policy Bypass Logic bug when merging HTTP network policies with mixed scopes (Cilium CVEs and Security Vulnerabilities - OpenCVE) In configs with multiple toEndpoints rules and an allow-all rule, Cilium would append a wildcard rule too broadly (Cilium CVEs and Security Vulnerabilities - OpenCVE). This caused some HTTP traffic to bypass intended policy restrictions (traffic allowed when it should be denied) Patched in Cilium 1.11.16, 1.12.9, 1.13.2 (Cilium CVEs and Security Vulnerabilities - OpenCVE). Users should upgrade to ensure HTTP policies are correctly enforced. No easy workaround besides removing the problematic policy combination.
CVE-2023-29002 Cilium (eBPF Networking – Debug Mode) Security – Info Leak Sensitive data logged in debug mode (cilium-secrets contents) (Cilium CVEs and Security Vulnerabilities - OpenCVE) If Cilium was run in debug mode, it would log secrets (TLS private keys for Ingress, etc.) from the cilium-secrets namespace (Cilium CVEs and Security Vulnerabilities - OpenCVE). An attacker with access to the debug logs could steal these secrets, compromising cluster confidentiality Fixed in Cilium 1.11.16, 1.12.9, 1.13.2 (Cilium CVEs and Security Vulnerabilities - OpenCVE) – the debug logging was sanitized to omit secret material. Recommendation: avoid debug mode on production and update to a version with the fix.

来源: 每个案例都在文中以(【†】)引用的形式标示了相关漏洞数据库、公告或技术分析,以便核实参考。


对模式和影响的分析

常见模式与根本原因

从这些案例中可以看出,以下几个重复出现的根本原因模式

对稳定性、可维护性和安全性的影响

扩展及插件中的漏洞对系统的安全和稳定均可产生重大影响:

  • 系统被攻陷和数据泄露:扩展存在的安全漏洞往往会带来彻底的系统妥协。例如,多个 vCenter 插件漏洞可使攻击者完全控制 vCenter 主机 (CVE-2021-21972: VMware vCenter Server Remote Code Execution Vulnerability - Blog | Tenable®),Docker Desktop 扩展漏洞也能在主机上执行任意代码 (NVD - CVE-2024-8695)。在一些情况下,会泄露敏感信息——例如通过 SSRF 获取云端管理员凭据 (NVD - CVE-2021-21973),或在日志中暴露 TLS 密钥 (Cilium CVEs and Security Vulnerabilities - OpenCVE)。这些例子表明,一旦扩展被利用,危害程度与核心组件漏洞不相上下,因为插件常常拥有高权限。

  • 拒绝服务与不稳定性:许多非 RCE 漏洞虽然无法控制系统,却能导致主机或关键服务崩溃或挂起。例如,一个恶意 VM 就可使 Xen 的工具栈(dom0)宕机 (CVE-2020-29487: Xen XAPI Vulnerability Leading to Host Denial of Service);或是用户配置错误引发 libvirt 整体崩溃,影响所有虚拟机。在 Kubernetes 中,如果 Kyverno admission controller 不断崩溃(如 RBAC Bug),就会导致集群功能的部分失效。因此,扩展漏洞可严重影响整体可靠性和可用性。

  • 维护成本上升:这些问题通常需要紧急打补丁并进行配置修改,增加了运维负担。例如,Docker AuthZ 漏洞曾是回归问题,说明维护独立扩展会带来技术债。管理员必须及时应用补丁或临时解决方案(禁用功能、限制访问 (Docker Security Advisory: AuthZ Plugin Bypass Regression in Docker Engine | Docker)) 来减轻风险。每个扩展漏洞都增加了系统安全补丁和配置的复杂度。

  • 隔离不足:影响严重程度高的原因之一是许多扩展都在主机或控制器上拥有高权限。比如,vCenter 的插件与 vCenter 服务同权限运行,一旦出现漏洞就能获得主机级控制 (CVE-2021-21972: VMware vCenter Server Remote Code Execution Vulnerability - Blog | Tenable®)。这表明一些设计里,并未对插件进行良好的沙盒化或权限限制,导致一个插件被攻破就危及整个系统。这对于架构师而言是警示:应考虑对扩展进行隔离或最小权限管理。

频率与严重性洞察

在这 20 个案例中,安全漏洞占据主要地位:约 80%(16/20)为安全问题,剩余 ~20% 是一般软件缺陷。在这些安全漏洞中:

综合来看,在专有虚拟化插件(VMware)及新兴扩展生态(Docker 扩展)中,关键(RCE/权限提升)漏洞较为常见。同时,高危但非 RCE 类型(如授权绕过、加密弱点)也时有出现,在特定场景下威胁可同样严重(如 CVSS 8.0 的加密漏洞 (NVD - CVE-2024-28860) 会悄悄暴露集群流量)。低严重度漏洞(崩溃、内存泄漏)数量相对更少,但对可靠性仍具影响。

总之,过去五年间,扩展与插件领域仍然是严重漏洞的高发地带。最常见的问题包括缺失验证、逻辑瑕疵,往往造成重大安全失效。最严重的后果是远程代码执行和主机妥协,但就算是“次要”漏洞,也可能破坏系统稳定或削弱安全工具的防护。这一趋势凸显了对扩展进行严格安全审查和测试、对其权限进行隔离、并在生命周期内持续维护的必要性——因为它们带来的风险与核心系统漏洞同样巨大。

Share on Share on