CVE-2025-59429
Official description Straight from the sourceThe vendor's or NVD's own wording, published unedited. Authoritative, but often terse — it says what broke, rarely what to do.
NVD · uneditedFreePBX is an open source GUI for managing Asterisk. In versions prior to 16.0.68.39 for FreePBX 16 and versions prior to 17.0.18.38 for FreePBX 17, a reflected cross-site scripting vulnerability is present on the Asterisk HTTP Status page. The Asterisk HTTP status page is exposed by FreePBX and is available by default on version 16 via any bound IP address at port 8088. By default on version 17, the binding is only to localhost IP, making it significantly less vulnerable. The vulnerability can be exploited by unauthenticated attackers to obtain cookies from logged-in users, allowing them to hijack a session of an administrative user. The theft of admin session cookies allows attackers to gain control over the FreePBX admin interface, enabling them to access sensitive data, modify system configurations, create backdoor accounts, and cause service disruption. This issue has been patched in version 16.0.68.39 for FreePBX 16 and version 17.0.18.38 for FreePBX 17.
Technical summary Written by usOur analysis, written from the advisory, the CVSS vector and the affected-version data. It adds context the advisory leaves out, and never invents facts that are not in the source.
dbcve analysis · high confidenceReflected cross-site scripting (XSS) vulnerability in FreePBX's Asterisk HTTP Status page allows unauthenticated attackers to inject malicious scripts that steal session cookies from logged-in administrative users, enabling session hijacking and full admin interface compromise.
Verify against the referenced sources before acting — the references below are authoritative for this CVE, this summary is not.
Affected products & versions What the vendor confirmedThe version ranges the vendor confirmed as vulnerable. If your version sits inside a range here, treat yourself as exposed until you have upgraded.
NVD · CPE data< 16.0.68.39>= 17.0.1, < 17.0.18.38CVSS breakdown How the score is builtThe industry scoring standard. It rates how the flaw is reached, what it takes to exploit, and what an attacker gains — the score is derived from those, not the other way round.
From the vector- Attack vector
- Network
- Complexity
- Low
- Privileges
- Low
- User interaction
- Required
- Scope
- Changed
- Confidentiality
- Low
- Integrity
- Low
- Availability
- None
CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:C/C:L/I:L/A:N
Am I affected? How to checkSteps we derive from the advisory and the affected-version data, so you can decide whether this CVE reaches your setup. They are a guide, not a scan — your own configuration is the authority.
dbcve checksWork through these to decide whether this CVE applies to you.
-
Determine installed FreePBX versionRun 'fwconsole ma list' or check the FreePBX admin dashboard under Admin > System Admin > Version InfoAffected if The version shown is below 16.0.68.39, or is 17.0.1 through 17.0.18.37 (versions between 17.0.1 and 17.0.18.37 are affected)
-
Verify Asterisk HTTP server statusCheck if the Asterisk HTTP server is enabled by running 'asterisk -x "http show status"' or examining /etc/asterisk/http.confAffected if The output shows http_enable = yes or the HTTP server is actively running (this condition means the vulnerable page is accessible)
-
Confirm Asterisk HTTP Status page is reachableAccess http://<your-server-ip>:8088/httpstatus (port 8088 is the default Asterisk HTTP port) in a browser or via curlAffected if The page loads and displays Asterisk HTTP status information (this confirms the attack surface exists)
-
Check network exposure of port 8088Run 'netstat -tlnp | grep 8088' or 'ss -tlnp | grep 8088' to see if port 8088 is bound to a public interfaceAffected if Port 8088 is listening on 0.0.0.0 or an external IP address rather than only localhost/127.0.0.1 (remote attackers can reach the vulnerable page)
You are affected if your FreePBX version falls within the vulnerable ranges AND the Asterisk HTTP server is enabled AND port 8088 is accessible from your network.
Generated from the published advisory. Verify against your own configuration.
Remediation Closing itWhat it takes to close this. Where a vendor fix exists we point at it; where none exists we say so plainly, and can build one. Effort estimates are scoped from the advisory, not from your codebase.
dbcve · scoped16.0.68.3917.0.18.38
Upgrade FreePBX to version 16.0.68.39 or 17.0.18.38; alternatively, restrict access to port 8088 to trusted IPs only or disable the Asterisk HTTP server if unused.
FreePBX 16 -> 16.0.68.39; FreePBX 17 -> 17.0.18.38
- 1. Back up the FreePBX system configuration and data before performing any upgrade.
- 2. For FreePBX 16: Upgrade to version 16.0.68.39 by running the FreePBX update framework (e.g., fwconsole ma upgradeall or equivalent update mechanism).
- 3. For FreePBX 17: Upgrade to version 17.0.18.38 by running the FreePBX update framework.
- 4. After upgrade, clear browser cookies and session data.
- 5. Verify the Asterisk HTTP Status page is accessible and the vulnerability is patched by testing that injected script payloads are no longer executed.
Generated from the published advisory — verify against the referenced sources before acting.
- Consultation2.0 h
- Implementation3.0 h
- Testing2.0 h
- Review / QA1.0 h
An estimate, not a bill — we confirm scope with you before any work starts. Need it this week? Rush from $2,272.
Scan for this in your stack
Free · runs locallyCheck whether your project pulls in CVE-2025-59429 — or any other known-vulnerable package — straight from your lock files. Free and open source; it runs locally and uploads nothing.
References Go to the primary sourcePrimary sources — vendor advisories, patches and trackers. Where our summary and a reference disagree, the reference wins.
Primary sourcesPractitioner notes
ContributedPeer-ranked notes from engineers who’ve handled CVE-2025-59429 in production — separate from our analysis above.
The advisory tells you what broke. It rarely tells you what actually worked. If you’ve dealt with this one, that detail is what the next engineer is searching for.
- The version that genuinely resolved it — not the one the vendor claimed
- A config change or rule that shut the vector down
- A gotcha in the upgrade path that cost you an afternoon
No notes yet
Be the first to add a field note for this CVE — a mitigation you’ve verified, a version caveat, or a link to a working fix. Sign in above to contribute.
A place for practitioners to share what actually worked: a mitigation you’ve tested, a configuration change, a version- or environment-specific caveat, or a link to a verified patch. The most useful notes rise to the top as peers upvote them, so the signal stays high.
- Verified mitigations, workarounds, and config changes
- Version or environment caveats, and links to real fixes
- No weaponised exploit code, or anything meant to cause harm
- No spam, self-promotion, credentials, or personal data