CVE-2025-12489

7.8 HIGH

📋 TL;DR

This is a command injection vulnerability in evernote-mcp-server's openBrowser function that allows local attackers with initial low-privilege access to escalate privileges and execute arbitrary code as the service account. It affects installations where the server is running with elevated privileges. Attackers need existing local code execution to exploit this flaw.

💻 Affected Systems

Products:
  • evernote-mcp-server
Versions: Versions prior to commit 1e66c78c4ce6ea294ac6b0eb289a9eae9c5e9579
Operating Systems: All platforms where evernote-mcp-server runs
Default Config Vulnerable: ⚠️ Yes
Notes: The vulnerability exists in the default configuration when the openBrowser function is called with untrusted input. The server must be running with elevated privileges for successful privilege escalation.

⚠️ Manual Verification Required

This CVE does not have specific version information in our database, so automatic vulnerability detection cannot determine if your system is affected.

Why? The CVE database entry doesn't specify which versions are vulnerable (no version ranges provided by the vendor/NVD).

🔒 Custom verification scripts are available for registered users. Sign up free to download automated test scripts.

Recommended Actions:
  1. Review the CVE details at NVD
  2. Check vendor security advisories for your specific version
  3. Test if the vulnerability is exploitable in your environment
  4. Consider updating to the latest version as a precaution

⚠️ Risk & Real-World Impact

🔴

Worst Case

Full system compromise through privilege escalation to service account, leading to arbitrary code execution, data theft, and lateral movement within the network.

🟠

Likely Case

Local privilege escalation allowing attackers to gain service account privileges, potentially accessing sensitive data and executing commands with higher permissions.

🟢

If Mitigated

Limited impact if service runs with minimal privileges, proper input validation is implemented, and network segmentation restricts lateral movement.

🌐 Internet-Facing: LOW - This requires local access and cannot be exploited remotely without first compromising the system through other means.
🏢 Internal Only: HIGH - Once an attacker gains initial foothold on a system running the vulnerable server, they can escalate privileges and potentially move laterally within the network.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires local access and ability to execute low-privileged code first. The command injection vulnerability is straightforward to exploit once initial access is obtained.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Commit 1e66c78c4ce6ea294ac6b0eb289a9eae9c5e9579 or later

Vendor Advisory: https://github.com/brentmid/evernote-mcp-server/commit/1e66c78c4ce6ea294ac6b0eb289a9eae9c5e9579

Restart Required: Yes

Instructions:

1. Update evernote-mcp-server to commit 1e66c78c4ce6ea294ac6b0eb289a9eae9c5e9579 or later. 2. Restart the evernote-mcp-server service. 3. Verify the fix by checking the version/commit hash.

🔧 Temporary Workarounds

Run with minimal privileges

all

Configure evernote-mcp-server to run with the least privileges necessary, reducing impact of successful exploitation.

sudo chown -R lowprivuser:lowprivgroup /path/to/evernote-mcp-server
sudo -u lowprivuser node /path/to/server.js

Input validation wrapper

all

Implement input validation for the openBrowser function parameters before they reach the vulnerable code.

🧯 If You Can't Patch

  • Run evernote-mcp-server with minimal necessary privileges using a dedicated low-privilege service account
  • Implement strict network segmentation to limit lateral movement if exploitation occurs

🔍 How to Verify

Check if Vulnerable:

Check if your evernote-mcp-server version is prior to commit 1e66c78c4ce6ea294ac6b0eb289a9eae9c5e9579 by examining the source code or checking the git commit history.

Check Version:

cd /path/to/evernote-mcp-server && git log --oneline -1

Verify Fix Applied:

Verify the installed version includes commit 1e66c78c4ce6ea294ac6b0eb289a9eae9c5e9579 by checking git log or version information.

📡 Detection & Monitoring

Log Indicators:

  • Unusual command execution patterns from evernote-mcp-server process
  • Suspicious system calls originating from the server process
  • Privilege escalation attempts in system logs

Network Indicators:

  • Unexpected outbound connections from the evernote-mcp-server host
  • Command and control traffic from the server host

SIEM Query:

process_name="node" AND parent_process="evernote-mcp-server" AND cmdline CONTAINS ("bash", "sh", "cmd", "powershell")

🔗 References

📤 Share & Export