CVE-2025-62193

9.8 CRITICAL

📋 TL;DR

This vulnerability allows remote, unauthenticated attackers to execute arbitrary operating system commands on NOAA PMEL Live Access Server (LAS) installations by sending specially crafted requests containing PyFerret expressions. Attackers can leverage the SPAWN command to achieve remote code execution. All LAS systems running vulnerable versions are affected.

💻 Affected Systems

Products:
  • NOAA PMEL Live Access Server (LAS)
Versions: All versions before the fix in 'gov.noaa.pmel.tmap.las.filter.RequestInputFilter.java' from 2025-09-24
Operating Systems: Any OS running LAS
Default Config Vulnerable: ⚠️ Yes
Notes: Any LAS installation with PyFerret functionality enabled is vulnerable. The vulnerability is in the request input filtering mechanism.

⚠️ 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

Complete system compromise allowing attackers to install malware, exfiltrate sensitive data, pivot to other systems, or deploy ransomware.

🟠

Likely Case

Attackers gain shell access to the server, potentially stealing data, modifying configurations, or using the system as a foothold for further attacks.

🟢

If Mitigated

With proper network segmentation and access controls, impact could be limited to the LAS application server only.

🌐 Internet-Facing: HIGH - The vulnerability is remotely exploitable without authentication, making internet-facing systems immediate targets.
🏢 Internal Only: HIGH - Even internally, the unauthenticated nature makes this easily exploitable by any internal attacker.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: LIKELY
Unauthenticated Exploit: ⚠️ Yes
Complexity: LOW

The vulnerability leverages PyFerret's SPAWN command, which is well-documented functionality. Attackers need to craft requests with malicious expressions.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: Version with commit de5f9237bfd4ac5085bcc49a6e30bbc9507ddb29 or later

Vendor Advisory: https://github.com/NOAA-PMEL/LAS/commit/de5f9237bfd4ac5085bcc49a6e30bbc9507ddb29

Restart Required: Yes

Instructions:

1. Pull the latest LAS code from the NOAA-PMEL/LAS repository. 2. Apply the fix from commit de5f9237bfd4ac5085bcc49a6e30bbc9507ddb29. 3. Rebuild and redeploy the LAS application. 4. Restart the LAS service.

🔧 Temporary Workarounds

Network Access Restriction

linux

Restrict network access to LAS servers to only trusted IP addresses

iptables -A INPUT -p tcp --dport [LAS_PORT] -s [TRUSTED_IP] -j ACCEPT
iptables -A INPUT -p tcp --dport [LAS_PORT] -j DROP

Web Application Firewall

all

Deploy a WAF to block requests containing PyFerret SPAWN commands

🧯 If You Can't Patch

  • Take the LAS server offline immediately
  • Implement strict network segmentation and isolate the LAS server from other systems

🔍 How to Verify

Check if Vulnerable:

Check if your LAS version includes the vulnerable RequestInputFilter.java file before the 2025-09-24 fix

Check Version:

Check LAS build date or git commit hash in the application deployment

Verify Fix Applied:

Verify that the RequestInputFilter.java file contains the security fixes from commit de5f9237bfd4ac5085bcc49a6e30bbc9507ddb29

📡 Detection & Monitoring

Log Indicators:

  • Unusual PyFerret expressions in request logs
  • SPAWN commands in URL parameters or POST data
  • Unexpected system command execution

Network Indicators:

  • Requests containing PyFerret SPAWN commands
  • Unusual outbound connections from LAS server

SIEM Query:

source="las_logs" AND ("SPAWN" OR "PyFerret" OR "os.execute")

🔗 References

📤 Share & Export