CVE-2026-44331
SQL Injection in ProFTPD via Reverse DNS Lookup
Publication date: 2026-05-05
Last updated on: 2026-05-05
Assigner: MITRE
Description
Description
CVSS Scores
EPSS Scores
| Probability: | |
| Percentile: |
Meta Information
Affected Vendors & Products
| Vendor | Product | Version / Range |
|---|---|---|
| proftpd | proftpd | to 1.3.9a (exc) |
| proftpd | proftpd | to 1.3.10 (exc) |
Helpful Resources
Exploitability
| CWE ID | Description |
|---|---|
| CWE-89 | The product constructs all or part of an SQL command using externally-influenced input from an upstream component, but it does not neutralize or incorrectly neutralizes special elements that could modify the intended SQL command when it is sent to a downstream component. Without sufficient removal or quoting of SQL syntax in user-controllable inputs, the generated SQL query can cause those inputs to be interpreted as SQL instead of ordinary user data. |
Attack-Flow Graph
AI Powered Q&A
How does this vulnerability affect compliance with common standards and regulations (like GDPR, HIPAA)?:
The vulnerability allows remote attackers to perform SQL injection via crafted domain names when reverse DNS lookups are enabled, potentially leading to authentication bypass and unauthorized data access.
Such unauthorized access and data breaches could impact compliance with standards and regulations like GDPR and HIPAA, which require protection of sensitive data and proper access controls.
However, the provided information does not explicitly discuss compliance impacts or specific regulatory consequences.
Can you explain this vulnerability to me?
CVE-2026-44331 is a SQL injection vulnerability in the ProFTPD server's mod_wrap2_sql module, specifically in the sqltab_fetch_clients_cb() function. When the UseReverseDNS option is enabled, ProFTPD performs a reverse DNS lookup on a connecting client's IP address and uses the resulting hostname in SQL queries without properly escaping it. Because the hostname is attacker-controlled, this allows a remote attacker to inject arbitrary SQL commands into the database queries.
This vulnerability arises because the attacker-supplied hostname is passed directly to the SQL command creation function without sanitization, enabling attacks such as authentication bypass or data extraction through SQL injection techniques.
How can this vulnerability impact me? :
This vulnerability can have severe impacts including unauthorized access and data compromise. An attacker can exploit the SQL injection to bypass authentication mechanisms, potentially gaining unauthorized access to the FTP server.
Additionally, the attacker can extract sensitive data from the database by injecting malicious SQL commands, which could lead to data leakage or corruption.
The CVSS v3.1 base score of 8.1 reflects the high severity, indicating that the vulnerability can be exploited remotely without user interaction but requires high attack complexity.
How can this vulnerability be detected on my network or system? Can you suggest some commands?
This vulnerability can be detected by monitoring for unusual or suspicious reverse DNS hostnames that contain SQL injection payloads, especially when the UseReverseDNS option is enabled in ProFTPD.
Since the vulnerability involves SQL injection via crafted domain names in reverse DNS lookups, detection can involve checking logs for reverse DNS queries with suspicious characters or SQL keywords such as ' OR '1'='1 or UNION.
You can also audit your ProFTPD configuration to verify if UseReverseDNS is enabled, which is required for this vulnerability to be exploitable.
No specific commands are provided in the resources, but general commands to check the ProFTPD configuration and logs include:
- Check if UseReverseDNS is enabled in the ProFTPD configuration file (usually /etc/proftpd/proftpd.conf): grep -i UseReverseDNS /etc/proftpd/proftpd.conf
- Review ProFTPD logs for suspicious reverse DNS hostnames or SQL injection patterns: grep -E "(\' OR \'1\'=\'1|UNION|SELECT|--|;|')" /var/log/proftpd/proftpd.log
- Use network monitoring tools to capture DNS reverse lookup traffic and analyze for suspicious domain names.
What immediate steps should I take to mitigate this vulnerability?
Immediate mitigation steps include disabling the UseReverseDNS option in the ProFTPD configuration to prevent the vulnerable code path from being triggered.
Additionally, updating ProFTPD to version 1.3.9a after commit 7666224 or later (such as 1.3.10) will apply the security fix that properly escapes the reverse DNS hostname before using it in SQL queries.
If updating immediately is not possible, consider restricting access to trusted IP addresses or disabling modules that rely on reverse DNS lookups.