Container Image Risks: Why Skipping Verification Today Breaks Your Service Tomorrow
Nikita, technical leader of the Evolution Container Security and Addons team at Cloud.ru, outlines four common container security pitfalls that repeatedly appear in client Kubernetes environments. The post covers vulnerable dependencies, supply-chain attacks on image registries, secret leakage in layers, and CI/CD exposure points, supported by concrete incidents from production clusters.
Thin spot 1. Untracked vulnerabilities in dependencies
The most frequent issue is outdated software carrying known CVE entries combined with overly permissive configurations. Small teams often stay current because their infrastructure is simple, while large enterprises remain on old versions due to extensive custom integrations but compensate with strict access policies. Mid-sized organizations face the worst position: custom wrappers already hinder updates, yet they lack dedicated security staff or tooling to offset the risk.
A 2025 vulnerability in nvidia-container-toolkit (CVE-2025-23266) illustrates the danger. The flaw resided in OCI hooks that execute with host privileges. An attacker could embed a malicious library inside a minimal Dockerfile; after escaping the container, the attacker enumerated pods, located a service account with nodes/proxy rights, and used the kubelet port 10250 to execute commands on another node, ultimately accessing mounted secrets. The incident combined the NVIDIA component vulnerability with excessive service-account privileges. A second high-severity flaw appeared in the same component shortly afterward, reinforcing that privileged add-ons such as GPU operators and CNI plugins require patching within days rather than weeks.
Thin spot 2. Supply chain attacks: even pinned tags are not safe
The classic advice to avoid the latest tag proved insufficient when attackers compromised Aqua Security developer accounts in early 2026. They performed force pushes that reassigned more than seventy Trivy tags to malicious commits containing secret-exfiltration logic. Later, using a remaining compromised service account, they published tainted images directly to Docker Hub. Organizations pulling fresh images without cache or additional verification could have deployed the malicious versions.
Cloud.ru avoided impact through a private registry with caching and mandatory manual review plus secondary scanning before promotion. The incident demonstrated that a tag can be silently rebound to different content; the only reliable reference is the full SHA256 digest of the image manifest. Additional protection comes from Cosign signatures verified inside the cluster by Connaisseur, Kyverno, or Image Validating Admission Policies. The article also notes the gh0stEdit class of attacks that can alter unpacked layer contents while preserving manifest hashes.
Thin spot 3. Secret leakage: regex-based detection still works
Developers continue to commit private keys and hardcoded credentials that end up baked into container layers. Two real cases involved a DevOps engineer who left an SSH key in a working directory before pushing, and a tester who hardcoded credentials that survived the build pipeline. Simply overwriting the file or rebuilding a new image does not remove the secret from Git history or from previously pushed image layers; rotation of the secret itself remains the only reliable remediation.
Effective controls begin with pre-commit hooks that block commits containing obvious secret patterns locally. Subsequent layers include CI/CD scanning with tools such as Trivy and Checkov, followed by registry-level scanning provided by Evolution Container Security.
Thin spot 4. CI/CD as an attack vector
The article concludes by noting that supply-chain and secret issues ultimately converge in CI/CD pipelines. Automated verification of image signatures, continuous vulnerability monitoring, and strict service-account hygiene are required to prevent a single compromised upstream image or leaked credential from granting cluster-wide access.
Related articles
Passwordless Kubernetes Image Pulling with Artifact Keeper via ServiceAccount Tokens
Kubernetes 1.34 and later enables kubelet to forward a pod's ServiceAccount token to an external image credential provider plugin, allowing the plugin to exchange it for short-lived read-only credentials from a compatible registry. Artifact Keeper, an open-source Rust-based OCI and package registry, implements an OIDC provider that validates these tokens and issues temporary credentials without requiring imagePullSecrets in manifests. The approach follows zero-trust principles by eliminating long-lived secrets that can leak across namespaces or clusters. A custom credential provider binary handles the token exchange, enforces audience restrictions, and redacts sensitive data from logs. The solution requires specific ClusterRole permissions for nodes, kubelet flags, and registry-side OIDC mappings that bind Kubernetes namespaces to read-only groups. Testing on kind 1.34.3 confirmed successful pulls for authorized ServiceAccounts and clear 401 errors for unauthorized ones when imagePullPolicy is set to Always.
Malicious Code Injected into LiteLLM Open Source AI Package via Supply Chain Attack
The open-source generative AI tool LiteLLM had malicious code inserted into its official distribution packages, enabling credential theft and remote code execution. The compromise affected version 1.107.0 released on October 21, 2026, and was delivered through legitimate channels in a classic software supply chain attack. Seven malicious wheel files were uploaded to PyPI, while official container images on Docker Hub and GitHub Container Registry were also tainted. Security firm JFrog discovered that the malware steals a wide range of secrets including cloud credentials, SSH private keys, browser-stored passwords, development tokens, and AI service API keys from LiteLLM's database. The code also supports execution of externally fetched payloads and abuses Python's startup mechanisms to run even when the application itself is not loaded. This marks the second supply chain incident involving the project in 2026, following a separate event in March.
GhostAction Campaign Compromises 790 GitHub Repositories via Malicious Workflows
Researchers from OpenSourceMalware have identified 790 publicly accessible GitHub repositories containing malicious workflows planted by the GhostAction campaign as of October 9. The campaign abuses trusted maintainer accounts to inject workflows that automatically exfiltrate secrets including AWS access keys and tokens for GitHub, GitLab, Google, Slack, SendGrid, OpenAI, Anthropic, and OpenRouter. Earlier counts by GitGuardian recorded 772 repositories between August 31 and September 30, though the datasets differ and are not cumulative. A separate wave on October 8 impacted 346 repositories linked to two maintainer accounts, including a project belonging to Uber. The malicious workflow runs on code pushes or manual triggers, scans repository files and full Git history for credentials, and sends findings in plaintext to attacker infrastructure. Removing the workflow file does not mitigate exposure, as successful executions already leak credentials and old commits may still contain secrets.
SberTech Launches Platform V Orchestrator for Security Services to Scan Software Before Corporate Deployment
SberTech has announced the launch of a new direction focused on analyzing the security of software prior to its integration into corporate infrastructures. The initiative is built around the company's own Laboratory for Software Verification and the technological platform Platform V Orchestrator for Security Services. This platform combines components for working with both built-in and external analysis tools, enabling checks of digital artifacts, control over software composition and changes, and detection of vulnerabilities, hidden threats, and defects in source code and repositories. SberTech aims to replace fragmented checks and manual result processing with a single managed process, allowing scaled verification without proportional team growth. The move responds to the adoption of hundreds of products from various vendors, widespread use of open-source components, and rising attacks on software supply chains. Primary customers include banks, industrial enterprises, telecom operators, energy companies, and the public sector. The solution is offered as a standalone product that supports on-premises deployment and operation in isolated environments such as private clouds and dedicated data processing contours.