CVE-2025-14311
📋 TL;DR
This path traversal vulnerability in JMRI allows attackers to access files outside the intended directory by manipulating file paths. It affects all JMRI users running versions before 5.13.3, potentially exposing sensitive system files.
💻 Affected Systems
- JMRI (Java Model Railroad Interface)
⚠️ 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.
- Review the CVE details at NVD
- Check vendor security advisories for your specific version
- Test if the vulnerability is exploitable in your environment
- Consider updating to the latest version as a precaution
⚠️ Risk & Real-World Impact
Worst Case
Complete system compromise through reading sensitive files like /etc/passwd, /etc/shadow, or application configuration files containing credentials.
Likely Case
Unauthorized reading of application configuration files, user data, or other sensitive information stored on the server.
If Mitigated
Limited impact if proper file system permissions restrict JMRI's access to sensitive directories.
🎯 Exploit Status
Path traversal vulnerabilities typically require minimal technical skill to exploit once the vulnerable endpoint is identified.
🛠️ Fix & Mitigation
✅ Official Fix
Patch Version: 5.13.3
Vendor Advisory: https://github.com/JMRI/JMRI/pull/14340
Restart Required: Yes
Instructions:
1. Download JMRI version 5.13.3 or later from official sources. 2. Stop the JMRI application. 3. Replace the existing installation with the new version. 4. Restart JMRI.
🔧 Temporary Workarounds
Restrict file system permissions
linuxLimit JMRI's file system access to only necessary directories using OS-level permissions.
chmod -R 750 /path/to/jmr/data
chown -R jmri:jmri /path/to/jmr/data
Network isolation
allPlace JMRI behind a firewall and restrict network access to trusted IPs only.
🧯 If You Can't Patch
- Implement strict network access controls to limit JMRI exposure
- Run JMRI with minimal file system permissions using a dedicated, restricted user account
🔍 How to Verify
Check if Vulnerable:
Check JMRI version via Help → About menu or by examining the application startup logs.
Check Version:
java -jar JMRI.jar --version (if supported) or check manifest files
Verify Fix Applied:
Confirm version is 5.13.3 or higher in Help → About menu.
📡 Detection & Monitoring
Log Indicators:
- Unusual file access patterns in JMRI logs
- Requests containing '../' sequences in file paths
Network Indicators:
- HTTP requests with path traversal sequences (../, ..\) to JMRI endpoints
SIEM Query:
source="jmri.log" AND "../" OR "..\"