Protobuf Maven Plugin, Security Feature Bypass, CVE-2025-XXXXX (Low)

Listen to this Post

How the CVE Works:

The vulnerability exists in the ProtocResolver.java class. When the plugin is configured to use a protoc executable from the system PATH (<protoc>PATH</protoc>), the code returns early at line 91-93, before it can execute the digest verification logic at line 106. This early return bypasses the `protocDigest` security check entirely. Consequently, the plugin executes the `protoc` binary found in the user’s PATH without validating its integrity against the expected SHA-256 hash. This renders the `protocDigest` feature ineffective, allowing a potentially malicious or untrusted `protoc` binary to be executed if it exists earlier in the PATH than the intended, valid binary.
Platform: Maven Plugin
Version: 3.10.2, 4.0.2
Vulnerability : Feature Bypass
Severity: Low
date: 2025-11-03

Prediction: Patched 2025-11-04

What Undercode Say:

find $PATH -name protoc
// ProtocResolver.java L91-L93
if (source == ProtocSource.PATH) {
return findProtocOnPath(platform);
}
// ... digest check at L106 is skipped for PATH source

How Exploit:

Place malicious protoc binary in a directory that appears earlier in the $PATH environment variable than the directory containing the legitimate protoc binary.

Protection from this CVE

Update to plugin version 3.10.2 or 4.0.2. Alternatively, do not rely on `protocDigest` for security when using <protoc>PATH</protoc>; explicitly specify the path to a trusted protoc binary instead.

Impact:

Execution of untrusted code, potential supply-chain compromise if a malicious protoc is planted on the build system.

🎯Let’s Practice Exploiting & Learn Patching For Free:

Sources:

Reported By: github.com
Extra Source Hub:
Undercode

🔐JOIN OUR CYBER WORLD [ CVE News • HackMonitor • UndercodeNews ]

💬 Whatsapp | 💬 Telegram

📢 Follow DailyCVE & Stay Tuned:

𝕏 formerly Twitter 🐦 | @ Threads | 🔗 Linkedin Featured Image

Scroll to Top