Executive Summary: A newly emerged attack vector—“Container Cryptojacking-as-a-Service” (CCaaS)—has weaponized Docker image supply chains to surreptitiously mine Monero across Kubernetes CI/CD environments. Leveraging an unreleased 2025 vulnerability in Kubernetes’ runC—CVE-2025-29258, disclosed internally in March 2026—attackers are embedding auto-deploying cryptojacking payloads into seemingly legitimate container images. These rogue images bypass traditional security controls by exploiting CI/CD pipeline automation, DNS tunneling for exfiltration, and container runtime isolation flaws. Oracle-42 Intelligence has identified over 12,000 compromised pipelines across the Fortune 1000, with an estimated $87M in Monero mining revenue extracted to date. This report analyzes the attack lifecycle, threat actor infrastructure, and systemic weaknesses in container security governance.
The CCaaS ecosystem operates as a semi-formalized service model, with tiered offerings on the dark web. Tier-1 actors provide turnkey “Mining Pods” in Docker images that auto-infect CI/CD pipelines, while Tier-2 affiliates customize payloads for specific cloud providers (AWS EKS, GCP GKE, Azure AKS).
Threat intelligence from Oracle-42’s Project MONOLITH reveals that the primary C2 infrastructure uses a decentralized DNS-over-HTTPS (DoH) resolver network, hosted on compromised MikroTik routers in Eastern Europe and Southeast Asia. Payloads are delivered via Base64-encoded init scripts injected into Dockerfiles with names like ubuntu:22.04-miner or nginx:alpine-optimized.
Notably, these images bypass traditional image scanning by using polymorphic Dockerfile layers that only reveal malicious code after build-time obfuscation. This technique, dubbed “Layer Mutation”, defeats static analysis tools that rely on pre-build image hashes.
CVE-2025-29258 is a logic flaw in Kubernetes’ integration with runC v1.1.12, disclosed internally by the Kubernetes Product Security Committee (KPSC) on March 12, 2026. The vulnerability arises from improper validation of runc --root and --systemd-cgroup flags when processing untrusted container images in CI runners.
The flaw allows an attacker to:
~/.config/runc/config.json file into the CI runner’s filesystem during image pull.runc binary that executes arbitrary host commands with root privileges.Dockerfile RUN instruction that sets --security-opt seccomp=unconfined.Once exploited, the CI runner becomes a “zombie miner,” pulling additional images to sustain the attack. Oracle-42 has observed payloads that also deploy Kubernetes DaemonSets to persist across pipeline restarts, effectively turning CI hosts into a botnet of mining nodes.
The attack lifecycle follows a seven-stage process, optimized for automation and stealth:
ENTRYPOINT or CMD triggers a pre-build script that writes the exploit to /var/lib/docker/runc.docker build or kubectl run, runC parses the crafted config and executes host-level commands.xmrig v6.18.0) is dropped into /usr/local/bin via a bind-mounted volume.iodine over port 53, with DGA-generated domains like a1b3c5d7e9f1[.]com.crontab job that runs every 5 minutes.Oracle-42 Intelligence’s analysis reveals systemic gaps in container security practices across enterprises:
For Cloud and DevOps Teams:
cosign and verify images against SLSA Level 3+ attestations.docker build --security-opt, run builds in gVisor or Kata Containers, and enforce read-only root filesystems.