Skip to main content

FreePBX CVE-2026-44239

| EUVDEUVD-2026-33297 HIGH
PHP Remote File Inclusion (CWE-98)
2026-05-29 GitHub_M
7.6
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain low-privileged FreePBX web credentials
  2. Delivery
    Authenticate to Dashboard module
  3. Exploit
    Send AJAX request to getcontent with traversal payload in rawname
  4. Execution
    PHP include() resolves ../ sequences and loads target .class.php
  5. Persist
    Top-level PHP in included file executes in FreePBX context
  6. Impact
    Read SIP/PBX configuration and pivot to toll fraud or call interception

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V5 - File Handling File inclusion prevention, allowlisting
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Command and Control

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Exploitation requires (1) network reachability to the FreePBX web administration interface, (2) a valid authenticated session at low privilege (PR:L in the CVSS vector - an unauthenticated request will not reach the vulnerable handler), (3) the Dashboard module being installed and enabled (it is enabled by default on standard FreePBX installs), and (4) the presence of a .class.php file on the filesystem whose top-level PHP code is useful to the attacker - this is the AT:P 'attack requirements present' factor and is almost always satisfied on a stock FreePBX server because of the many bundled module class files. Limiting factors: the PR:L requirement means anonymous internet scanners cannot exploit this directly, and the .class.php suffix appended by the include statement constrains which files can be targeted, so pure /etc/passwd-style disclosure is not the goal - the realistic outcome is PHP code execution by chaining traversal to an existing class file.

Impact

The CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N) yields a 7.6 score reflecting a network-reachable, low-complexity attack that requires low privileges and no user interaction, with high confidentiality and integrity impact but no availability impact - consistent with arbitrary file inclusion leading to information disclosure and code execution within the web tier rather than service crash. EPSS and KEV signals are not supplied for this CVE, and there is no public exploit identified at time of analysis, so this should be treated as a real but not-yet-mass-exploited priority. The PR:L requirement materially limits the blast radius - an attacker needs at least a low-privileged FreePBX user session - but this is a meaningful concern for any FreePBX instance with self-service or operator accounts, weak credentials, or internet-exposed admin GUIs, which is unfortunately common. The AT:P (attack requirements present) flag suggests successful exploitation depends on the presence of suitable .class.php files reachable via traversal, which on a standard FreePBX install is almost certainly satisfied. A conflict to flag: the description's emphasis on file inclusion implies practical RCE potential, but the CVSS vector marks VA:N (no availability impact), so defenders should not assume DoS resilience automatically rules out destructive follow-on actions.

Exploit ScenarioDerived

An attacker with any low-privileged FreePBX web account (for example, a basic operator login obtained via phishing, credential stuffing against an internet-exposed GUI, or a shared tenant account) sends a crafted POST to the Dashboard getcontent AJAX endpoint with rawname set to '../../../../path/to/attacker_controlled.class.php' or a writable system path. PHP resolves the traversal and include()s the target file, executing its top-level code in the FreePBX process before the class-not-found error surfaces, yielding arbitrary PHP execution and likely full read access to PBX configuration, SIP credentials, and call records. No public POC is currently identified, but the bug class is trivial to weaponize once an attacker locates a writable or attacker-influenced .class.php on the target.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.0% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – May 29, 2026

Local file inclusion in FreePBX versions prior to 16.0.22 and 17.0.5 allows authenticated remote attackers to include arbitrary .class.php files from the filesystem via path traversal in the Dashboard module's getcontent AJAX handler. The unsanitized $_REQUEST['rawname'] parameter is concatenated into a PHP include() call, and any included file's top-level code executes before the subsequent class instantiation fails. No public exploit identified at time of analysis and the issue is not listed in CISA KEV, but CWE-98 PHP file inclusion bugs are historically high-value targets in PBX systems exposed to the internet.

RemediationAI

Vendor-released patch: upgrade to FreePBX 16.0.22 or 17.0.5 (or later) per the GitHub Security Advisory at https://github.com/FreePBX/security-reporting/security/advisories/GHSA-hw7v-v2jp-wc4v, which removes the unsanitized include in the Dashboard module's getcontent handler. If patching cannot be applied immediately, compensating controls include restricting access to the FreePBX administrative web UI behind a VPN or IP allowlist so the AJAX endpoint is not reachable from untrusted networks, tightening web-user account hygiene (rotate credentials, disable unused low-privileged accounts since exploitation requires PR:L), and adding a WAF or reverse-proxy rule that blocks requests to the dashboard getcontent endpoint containing '../' or encoded traversal sequences in the rawname parameter - note this rule may break legitimate dashboard widgets that pass module names, so test before enforcing. Disabling the Dashboard module is a heavier mitigation that removes the attack surface entirely but degrades the operator experience and is generally only viable for headless deployments.

Affected VersionsENISA

security-reporting < 16.0.22
security-reporting 17.0.1, < 17.0.5

Affected Packages

euvd security_reporting fix: 16.0.22, 17.0.5

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

FreePBX is a widely deployed open-source web GUI built on top of Asterisk for managing IP PBX deployments, written predominantly in PHP. The vulnerability resides in the Dashboard module's getcontent AJAX endpoint, which constructs a dynamic include path by appending a '.class.php' suffix to user-supplied input from $_REQUEST['rawname'] without canonicalization or whitelist validation. This is a textbook CWE-98 (Improper Control of Filename for Include/Require Statement in PHP Program) issue: because '../' sequences are not stripped, an attacker can traverse outside the intended class directory and force PHP to require() any file on disk whose name ends in .class.php, with that file's top-level statements running in the FreePBX process context. The fix lines (16.0.22 and 17.0.5) and the CPE identifier cpe:2.3:a:freepbx:security-reporting indicate the patch landed through the FreePBX security-reporting repository, with the upstream advisory tracked at GHSA-hw7v-v2jp-wc4v.

Know when Freepbx 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

Vendor (GitHub_M) PRIMARY 7.6 HIGH
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M) · only source for this CVE.

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
Present
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
May 29, 2026 - 15:01 EUVD
CVSS changed
May 29, 2026 - 14:22 NVD
7.6 (HIGH)

DescriptionCVE.org

FreePBX is an open source IP PBX. Prior to 16.0.22 and 17.0.5, the Dashboard module's getcontent AJAX handler includes PHP files based on user-supplied input without path sanitization. The $_REQUEST['rawname'] parameter is concatenated into an include() call with a .class.php suffix, allowing path traversal via ../ sequences to include arbitrary .class.php files from the filesystem. The included file's PHP code executes before the subsequent class instantiation error occurs. This vulnerability is fixed in 16.0.22 and 17.0.5.

Executive ViewAI

Why It Matters

FreePBX versions prior to 16.0.22 and 17.0.5 contain a file inclusion vulnerability in the Dashboard module that allows authenticated attackers to execute arbitrary code on the telephony system. Organizations running affected versions face risk of unauthorized system access and call infrastructure compromise, with potential business continuity impact on voice communications.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: segment Dashboard module access through network controls and VPN authentication; implement strong authentication (multi-factor if available) for administrative accounts; enable detailed logging and alerting on PHP file inclusion patterns in web server and application logs; apply principle of least privilege to FreePBX service account permissions; disable Dashboard module if operationally feasible pending patch availability.

Threat Intelligence Overview

EPSS Score
0.0%
Top 87% exploitable
Data Quality
6 sources
Confidence: High

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.

SignalValue
Severity HIGH
CISA KEV No
Public POC No
EPSS 0.0%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

38
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +38
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Local File Inclusion vulnerabilities occur when an application accepts user-controlled input to specify which file should be loaded or executed, typically through functions like PHP's `include()`, `require()`, or `fopen()`.

Path traversal exploits occur when applications use user-controlled input to construct file system paths without proper validation.

CVE-2025-57819 CRITICAL POC
10.0 Aug 28

FreePBX 15, 16, and 17 contain SQL injection vulnerabilities enabling unauthenticated access to the administrator interf

CVE-2012-4869 HIGH POC
7.5 Sep 06

The callme_startcall function in recordings/misc/callme_page.php in FreePBX 2.9, 2.10, and earlier allows remote attacke

CVE-2014-1903 HIGH POC
7.5 Feb 18

admin/libraries/view.functions.php in FreePBX 2.9 before 2.9.0.14, 2.10 before 2.10.1.15, 2.11 before 2.11.0.23, and 12

CVE-2014-7235 CRITICAL POC
10.0 Oct 07

htdocs_ari/includes/login.php in the ARI Framework module/Asterisk Recording Interface (ARI) in FreePBX before 2.9.0.9,

CVE-2025-61678 HIGH POC
8.6 Oct 14

Authenticated arbitrary file upload in the FreePBX Endpoint Manager module (FreePBX 16 before 16.0.92 and FreePBX 17 bef

CVE-2025-61675 HIGH POC
8.6 Oct 14

Authenticated SQL injection in the FreePBX Endpoint Manager module allows a user holding a valid, known FreePBX username

CVE-2025-66039 CRITICAL POC
9.3 Dec 09

Authentication bypass in the FreePBX Endpoint Manager module lets remote, unauthenticated attackers impersonate any targ

CVE-2019-19006 CRITICAL POC
9.8 Nov 21

Sangoma FreePBX 115.0.16.26 and below, 14.0.13.11 and below, 13.0.197.13 and below have Incorrect Access Control. Rated

CVE-2023-43336 HIGH POC
8.8 Nov 02

Sangoma Technologies FreePBX before cdr 15.0.18, 16.0.40, 15.0.16, and 16.0.17 was discovered to contain an access contr

CVE-2018-6393 HIGH POC
7.2 Jan 29

FreePBX 10.13.66-32bit and 14.0.1.24 (SNG7-PBX-64bit-1712-2) allow post-authentication SQL injection via the order param

CVE-2012-4870 MEDIUM POC
4.3 Sep 06

Multiple cross-site scripting (XSS) vulnerabilities in FreePBX 2.9 and earlier allow remote attackers to inject arbitrar

CVE-2019-16967 MEDIUM POC
6.1 Oct 21

An issue was discovered in Manager 13.x before 13.0.2.6 and 15.x before 15.0.6 before FreePBX 14.0.10.3. Rated medium se

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy