Skip to main content

Eclipse CSI PIA CVE-2026-12616

| EUVDEUVD-2026-40094 MEDIUM
Improper Output Neutralization for Logs (CWE-117)
2026-06-29 eclipse
6.9
CVSS 4.0 · Vendor: eclipse
Share

Severity by source

Vendor (eclipse) PRIMARY
6.9 MEDIUM
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
vuln.today AI
5.3 MEDIUM

Network endpoint accepts unauthenticated, unverified JWTs; impact is solely log-record integrity (I:L), with no confidentiality or availability consequence and no scope change.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (eclipse).

CVSS VectorVendor: eclipse

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
X

Lifecycle Timeline

1
Analysis Generated
Jun 29, 2026 - 14:30 vuln.today

DescriptionCVE.org

The /v1/upload/sbom endpoint extracts the iss claim from the attacker-supplied JWT with signature verification disabled, then interpolates that string into three log statements before any validation gate. Because the configured log format ("%(asctime)s - %(name)s - %(levelname)s - %(message)s") renders newlines literally, an unauthenticated attacker can forge log records that are byte-for-byte indistinguishable from PIA's genuine "Successfully authenticated project" message. PIA is an authentication broker whose logs are explicitly relied upon for incident response (DESIGN.md §5.4 lists "Token verifications" and "Errors" as events to log), so the ability to plant fake auth-success entries directly undermines the audit trail the service exists to produce.

AnalysisAI

Log injection in Eclipse CSI PIA's unauthenticated /v1/upload/sbom endpoint allows a remote attacker to plant forged authentication-success log entries that are byte-for-byte indistinguishable from genuine PIA audit events. PIA is an authentication broker whose logs are explicitly designated as the authoritative source for incident response (DESIGN.md §5.4), meaning the forgery directly subverts the audit trail the service exists to produce. No public exploit has been identified at time of analysis, but the attack requires no authentication and minimal technical sophistication.

Technical ContextAI

CWE-117 (Improper Output Neutralization for Logs) describes the root cause: user-controlled input is embedded into log output without sanitization, enabling injection of synthetic log records. In this case, PIA's /v1/upload/sbom endpoint extracts the iss (issuer) claim from a caller-supplied JWT before performing any signature verification - meaning the claim is entirely attacker-controlled. That raw string is then interpolated into three Python logging calls using the format '%(asctime)s - %(name)s - %(levelname)s - %(message)s', which renders embedded newline characters literally. This allows an attacker to terminate the current log line and append an arbitrary second line that mimics PIA's own 'Successfully authenticated project' message format. The affected product is identified by CPE cpe:2.3:a:eclipse_foundation:eclipse_csi_-_pia:*:*:*:*:*:*:*:* - the wildcard version field indicates all known releases are affected and no patched version boundary has been established in NVD.

RemediationAI

No vendor-released patch has been identified at time of analysis; the reference points to an open Eclipse GitLab security work item (https://gitlab.eclipse.org/security/cve-assignment/-/work_items/145) with no associated tagged release. Until a patch is available, three compensating controls should be applied in priority order: First, enforce JWT signature verification on the /v1/upload/sbom endpoint before extracting any claims - this eliminates attacker control over the iss value entirely and removes the injection vector, though it requires access to the trusted signing key or JWKS endpoint. Second, sanitize the iss claim prior to logging by stripping or escaping carriage-return (\r) and newline (\n) characters; this is a low-risk change but does not fix the underlying signature-bypass issue. Third, switch to structured (JSON) log output, which encodes newlines as escape sequences and prevents injected content from rendering as separate log records; note that any downstream SIEM or incident-response tooling must be updated to parse the new format. Defenders should also implement integrity controls on log storage (e.g., append-only log sinks, WORM storage, or cryptographic log chaining) to detect tampering retroactively.

Share

CVE-2026-12616 vulnerability details – vuln.today

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy