Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconObtain customer credentials
-
DeliveryAccess DNS management interface
-
ExploitSubmit malformed DNS record with exotic type
-
InstallInject newline + BIND directive in content field
-
C2Zone file regenerated with injected directives
-
ExecuteBIND reloads poisoned zone
-
ImpactDNS queries resolve to attacker-controlled records
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization CRLF sequence sanitization
|
| Exploitation Conditions | Requires authenticated access to Froxlor with customer-level DNS management privileges (PR:L from CVSS vector). Specifically, the attacker must have permission to create or modify DNS records for at least one domain managed by the Froxlor instance, which is standard functionality granted to hosting customers in default configurations. The Froxlor installation must be configured to use BIND as the DNS server backend (not all installations use BIND - some may use PowerDNS or other alternatives, which would not be affected by zone file injection). Exploitation does NOT require administrative/root privileges within Froxlor, physical access to the server, or non-default feature enablement. The vulnerability is exploitable in default customer account setups where DNS self-service management is enabled. Attack is network-based (AV:N) and does not require user interaction (UI:N), meaning once credentials are obtained, exploitation is straightforward through the web interface. No race conditions or timing dependencies exist (AC:L). Limiting factors include: authentication barrier prevents anonymous internet exploitation, and BIND process permissions may restrict which files can be included via $INCLUDE directive, though DNS manipulation alone provides significant impact. |
| Impact | Real-world risk is moderate-to-high for multi-tenant hosting environments. CVSS 8.5 with Changed Scope (S:C) correctly reflects that authenticated customers can impact DNS resolution beyond their own account boundary - affecting all domains managed by the Froxlor instance. Attack vector is network-based (AV:N) with low complexity (AC:L), requiring only low-privilege customer credentials (PR:L) and no user interaction (UI:N). However, the CVSS integrity impact (I:H) and availability impact (A:L) align with DNS manipulation capabilities rather than system compromise. No EPSS data provided, but GitHub Security Advisory publication increases discovery likelihood. Absence from CISA KEV suggests no widespread exploitation campaigns detected yet. The authentication requirement (PR:L) significantly reduces exposure versus unauthenticated flaws - attackers need valid customer accounts, limiting this to malicious insiders, compromised credentials, or shared hosting abuse scenarios. Primary risk is DNS poisoning/hijacking in shared hosting environments where multiple untrusted customers manage domains on the same Froxlor instance. Secondary risk is service disruption via malformed BIND directives causing zone file parsing failures. Critical missing data: no information on whether default Froxlor deployments validate customer input at additional layers (web application firewall, BIND configuration restrictions), which could provide defense-in-depth beyond the application code. |
| Exploit ScenarioDerived | An attacker with a basic Froxlor customer account navigates to the DNS record management interface for their hosted domain. They create a new DNS record selecting an uncommon type like HINFO (host information) which bypasses the if/elseif validation chain. In the content field, they enter a payload containing embedded newlines: 'CPU-INFO\n$INCLUDE /etc/passwd\nOS-INFO'. When Froxlor generates the BIND zone file, the unsanitized newlines create multiple lines, injecting the $INCLUDE directive that attempts to embed /etc/passwd into the zone (though BIND may restrict file access). Alternatively, the attacker uses $GENERATE to create thousands of subdomain records causing resource exhaustion, or manipulates $ORIGIN to hijack DNS resolution for unrelated domains managed by the same server. The modified zone file is loaded by BIND, affecting DNS queries for all users of the domain. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Apr 23, 2026
DNS zone file injection in Froxlor versions prior to 2.3.6 allows authenticated customers to inject arbitrary BIND directives and DNS records through unvalidated record types and unsanitized newline characters. Attackers with low-privilege customer accounts can manipulate DNS resolution for managed domains by embedding malicious directives like $INCLUDE, $ORIGIN, or $GENERATE into zone files, potentially redirecting traffic, creating unauthorized records, or disrupting DNS services. CVSS 8.5 with scope change indicates impact beyond the vulnerable component. Vendor patch released in version 2.3.6 (GitHub commit 47a8af5d). No CISA KEV listing or public exploit identified at time of analysis, but attack complexity is low (AC:L) for authenticated users.
RemediationAI
Upgrade to Froxlor version 2.3.6 immediately, available from https://github.com/froxlor/froxlor/releases/tag/2.3.6. The fix (commit 47a8af5d9523cb6ec94567405cfc2e294d3a1442 at https://github.com/froxlor/froxlor/commit/47a8af5d9523cb6ec94567405cfc2e294d3a1442) implements DNS record type whitelisting and newline sanitization in the content validation path. For environments unable to upgrade immediately, implement compensating controls: restrict customer DNS record management privileges to only trusted administrative users (converts PR:L to PR:H, reducing exploitability), enable BIND's zone file syntax validation with strict error handling to prevent malformed zones from loading (set check-names strict and validate zone files before reload), and monitor BIND logs for unusual $INCLUDE/$ORIGIN/$GENERATE directive usage or zone transfer errors indicating injection attempts. Note that disabling customer DNS management entirely eliminates the attack surface but breaks core Froxlor functionality for self-service hosting. Audit existing zone files for injected content by searching for unexpected newline-separated records or BIND directives in database content fields before applying the patch.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in composer, euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Froxlor is a PHP-based web hosting control panel for managing DNS, web servers, and email services. The vulnerability exists in the DomainZones::add() function which handles customer-submitted DNS record creation. BIND (Berkeley Internet Name Domain) is the underlying DNS server software that reads zone files as text configurations. The affected code path fails to implement a whitelist for DNS record types (allowing exotic types like NAPTR, PTR, HINFO to bypass validation) and does not sanitize newline characters (\n) in the content field before database storage. The trim() function only removes leading/trailing whitespace, not embedded newlines. When DnsEntry::__toString() serializes database records to BIND zone file format, these unescaped newlines enable multi-line injection. CWE-93 (Improper Neutralization of CRLF Sequences) applies as the root cause is failure to neutralize control characters in output destined for a structured format. BIND's zone file parser interprets newlines as record delimiters and recognizes special directives ($INCLUDE for file inclusion, $ORIGIN for domain scoping, $GENERATE for bulk record creation), making this a classic injection vulnerability.
Know when Froxlor gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:N/S:C/C:N/I:H/A:L
Primary rating from GitHub Advisory · only source for this CVE.
CVSS VectorGitHub Advisory
Lifecycle Timeline
3DescriptionGitHub Advisory
Froxlor is open source server administration software. Prior to version 2.3.6, DomainZones::add() accepts arbitrary DNS record types without a whitelist and does not sanitize newline characters in the content field. When a DNS type not covered by the if/elseif validation chain is submitted (e.g., NAPTR, PTR, HINFO), content validation is entirely bypassed. Embedded newline characters in the content survive trim() processing, are stored in the database, and are written directly into BIND zone files via DnsEntry::__toString(). An authenticated customer can inject arbitrary DNS records and BIND directives ($INCLUDE, $ORIGIN, $GENERATE) into their domain's zone file. Version 2.3.6 fixes the issue.
Executive ViewAI
Froxlor versions prior to 2.3.6 contain a DNS zone file injection vulnerability that allows authenticated customer accounts to manipulate DNS records and directives for managed domains, potentially redirecting traffic or disrupting DNS services. Organizations using Froxlor as a hosting control panel must immediately patch to prevent malicious DNS manipulation by low-privilege users, which could affect all downstream customers and internet-facing services.
Apply vendor patch. If immediate patching is not possible: (1) Restrict DNS record modification permissions to administrator-only accounts; (2) implement input validation rules blocking newline characters and BIND directive keywords in record type fields; (3) enable audit logging for all DNS zone file changes and review for anomalies; (4) monitor DNS query responses for unexpected redirects or unauthorized records.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
Command Injection in GitHub repository froxlor/froxlor prior to 2.0.8. Rated high severity (CVSS 8.8), this vulnerabilit
Improper Restriction of Excessive Authentication Attempts in GitHub repository froxlor/froxlor prior to 2.0.20. Rated cr
Authentication Bypass by Primary Weakness in GitHub repository froxlor/froxlor prior to 2.0.13. Rated critical severity
Froxlor through 0.10.29.1 allows SQL injection in Database/Manager/DbManagerMySQL.php via a custom DB name. Rated critic
Command injection in Froxlor server admin before 2.3.4 due to typo (== instead of =) disabling input validation entirely
Improper Link Resolution Before File Access in GitHub repository froxlor/froxlor prior to 2.1.0. Rated high severity (CV
Unrestricted Upload of File with Dangerous Type in GitHub repository froxlor/froxlor prior to 2.0.14. Rated high severit
Cross-Site Request Forgery (CSRF) in GitHub repository froxlor/froxlor prior to 2.0.11. Rated high severity (CVSS 8.8),
Code Injection in GitHub repository froxlor/froxlor prior to 2.0.11. Rated high severity (CVSS 8.8), this vulnerability
Code Injection in GitHub repository froxlor/froxlor prior to 2.0.10. Rated high severity (CVSS 8.8), this vulnerability
An issue was discovered in Froxlor before 0.10.14. Rated high severity (CVSS 8.8), this vulnerability is remotely exploi
Froxlor is open source server administration software. Rated high severity (CVSS 7.5), this vulnerability is remotely ex
EUVD-2026-25180
GHSA-47hf-23pw-3m8c
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB