Skip to main content
Press slash or control plus K to focus the search. Use the arrow keys to navigate results and press enter to open a threat.
Reconnecting to live updates…

CVE-2026-23742: CWE-94: Improper Control of Generation of Code ('Code Injection') in zalando skipper

0
High
VulnerabilityCVE-2026-23742cvecve-2026-23742cwe-94cwe-250cwe-522
Published: Fri Jan 16 2026 (01/16/2026, 20:07:46 UTC)
Source: CVE Database V5
Vendor/Project: zalando
Product: skipper

Description

Skipper is an HTTP router and reverse proxy for service composition. The default skipper configuration before 0.23.0 was -lua-sources=inline,file. The problem starts if untrusted users can create lua filters, because of -lua-sources=inline , for example through a Kubernetes Ingress resource. The configuration inline allows these user to create a script that is able to read the filesystem accessible to the skipper process and if the user has access to read the logs, they an read skipper secrets. This vulnerability is fixed in 0.23.0.

AI-Powered Analysis

AILast updated: 01/16/2026, 20:36:11 UTC

Technical Analysis

Zalando's Skipper is an HTTP router and reverse proxy widely used for service composition, often deployed in Kubernetes environments. Versions prior to 0.23.0 have a default configuration parameter '-lua-sources=inline,file' that permits Lua scripts to be defined inline or via files. This configuration flaw allows untrusted users who can create or modify Lua filters—commonly through Kubernetes Ingress resources—to inject arbitrary Lua code. Since Lua scripts run with the privileges of the Skipper process, this enables attackers to read the filesystem accessible to Skipper, including sensitive secrets and logs, thus compromising confidentiality and integrity. The vulnerability is classified under CWE-94 (Improper Control of Generation of Code), CWE-250 (Execution with Unnecessary Privileges), and CWE-522 (Insufficiently Protected Credentials). Exploitation requires some level of privilege (PR:L) but no user interaction, and the attack surface includes any environment where untrusted users can influence Lua filter creation. The vulnerability has a CVSS 3.1 score of 8.8, indicating high severity with network attack vector, low attack complexity, and high impact on confidentiality, integrity, and availability. The issue was addressed in Skipper version 0.23.0 by disabling or restricting inline Lua scripting capabilities.

Potential Impact

For European organizations, this vulnerability poses significant risks, particularly for those deploying Skipper in Kubernetes clusters with multi-tenant ingress configurations or where untrusted users can define ingress rules. Successful exploitation can lead to unauthorized disclosure of sensitive data, including secrets and logs, potentially enabling further lateral movement or privilege escalation. The integrity of routing and proxying functions can be compromised, disrupting service availability and trustworthiness. Organizations in sectors with stringent data protection requirements, such as finance, healthcare, and critical infrastructure, face heightened regulatory and operational risks. Additionally, the ability to read secrets may expose credentials for other systems, amplifying the attack impact. Given the widespread adoption of Kubernetes and microservices architectures in Europe, the vulnerability could affect a broad range of enterprises, especially those using Zalando Skipper as part of their ingress or service mesh solutions.

Mitigation Recommendations

The primary mitigation is to upgrade all Skipper deployments to version 0.23.0 or later, where the vulnerability is fixed by disabling or restricting inline Lua scripting. Until upgrades can be performed, organizations should restrict the ability to create or modify Lua filters to fully trusted administrators only, ideally through strict RBAC policies in Kubernetes. Review and audit ingress resource definitions to ensure no untrusted users can inject Lua scripts. Implement network segmentation and monitoring to detect anomalous Skipper process behaviors or unauthorized filesystem access. Employ secrets management best practices to minimize the exposure of sensitive data even if the filesystem is accessed. Additionally, consider disabling Lua scripting entirely if not required. Regularly monitor vulnerability advisories and apply patches promptly. Finally, conduct penetration testing and code reviews focusing on ingress configurations and Lua filter usage to identify potential exploitation paths.

Need more detailed analysis?Upgrade to Pro Console

Technical Details

Data Version
5.2
Assigner Short Name
GitHub_M
Date Reserved
2026-01-15T15:45:01.958Z
Cvss Version
3.1
State
PUBLISHED

Threat ID: 696a9dd0b22c7ad868e95251

Added to database: 1/16/2026, 8:21:36 PM

Last enriched: 1/16/2026, 8:36:11 PM

Last updated: 1/16/2026, 9:21:53 PM

Views: 3

Community Reviews

0 reviews

Crowdsource mitigation strategies, share intel context, and vote on the most helpful responses. Sign in to add your voice and help keep defenders ahead.

Sort by
Loading community insights…

Want to contribute mitigation steps or threat intel context? Sign in or create an account to join the community discussion.

Actions

PRO

Updates to AI analysis require Pro Console access. Upgrade inside Console → Billing.

Please log in to the Console to use AI analysis features.

Need more coverage?

Upgrade to Pro Console in Console -> Billing for AI refresh and higher limits.

For incident response and remediation, OffSeq services can help resolve threats faster.

Latest Threats