CVE-2025-51539

5.3 MEDIUM

📋 TL;DR

EzGED3 3.5.0 has an unauthenticated arbitrary file read vulnerability that allows remote attackers to read any file on the server via directory traversal. This affects all systems running EzGED3 3.5.0 without proper access controls. Attackers can steal sensitive files including configuration data, database credentials, and source code.

💻 Affected Systems

Products:
  • EzGED3
Versions: 3.5.0 through versions before 3.5.72.27183
Operating Systems: All operating systems running PHP
Default Config Vulnerable: ⚠️ Yes
Notes: The vulnerable script is exposed via web interface by default. Systems with phpMyAdmin exposed are at higher risk for immediate administrative compromise.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Full system compromise via stolen database credentials leading to administrative access, data exfiltration, and potential lateral movement within the network.

🟠

Likely Case

Sensitive file disclosure including configuration files, database dumps, and password reset tokens, potentially leading to credential theft and unauthorized access.

🟢

If Mitigated

Limited information disclosure if proper file permissions and network segmentation are in place, but still exposes sensitive configuration data.

🌐 Internet-Facing: HIGH - Unauthenticated remote exploitation allows attackers to read arbitrary files without any credentials from anywhere on the internet.
🏢 Internal Only: MEDIUM - Internal attackers or compromised internal systems can exploit this to escalate privileges and access sensitive data.

🎯 Exploit Status

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

Exploitation requires only web access and knowledge of directory traversal techniques. No authentication or special privileges needed.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 3.5.72.27183

Vendor Advisory: Not provided in CVE details

Restart Required: No

Instructions:

1. Download EzGED3 version 3.5.72.27183 or later from official vendor sources. 2. Backup current installation and database. 3. Replace vulnerable files with patched version. 4. Verify web interface functionality.

🔧 Temporary Workarounds

Restrict access to vulnerable script

all

Block access to the specific PHP script that contains the vulnerability using web server configuration or firewall rules.

# Apache: <Location /path/to/vulnerable/script.php> Require all denied </Location>
# Nginx: location ~ /path/to/vulnerable/script\.php$ { deny all; }

Implement web application firewall rules

all

Configure WAF to block directory traversal patterns and suspicious file read attempts.

# Example ModSecurity rule: SecRule ARGS "\.\./" "id:1001,phase:2,deny,msg:'Directory Traversal Attempt'

🧯 If You Can't Patch

  • Implement strict network access controls to limit exposure to trusted IP addresses only
  • Remove or restrict phpMyAdmin access and ensure database credentials in configuration files have minimal privileges

🔍 How to Verify

Check if Vulnerable:

Attempt to access the vulnerable script with a directory traversal payload (e.g., /path/to/script.php?path=../../../etc/passwd) and check if sensitive files are returned.

Check Version:

Check EzGED3 version in admin interface or look for version information in web application files and configuration.

Verify Fix Applied:

After patching, repeat the vulnerable test and confirm that directory traversal attempts are blocked or return error messages instead of file contents.

📡 Detection & Monitoring

Log Indicators:

  • HTTP requests containing '../' or '..\' patterns in URL parameters
  • Unusual file access patterns from single IP addresses
  • Access attempts to sensitive system files via web interface

Network Indicators:

  • HTTP GET requests with directory traversal sequences in query parameters
  • Unusual outbound data transfers following file read attempts

SIEM Query:

source="web_server" AND (url="*../*" OR url="*..\\*") AND status=200

🔗 References

📤 Share & Export