Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to FreePBX GUI as admin
-
DeliverySubmit malicious MoH custom application via POST
-
ExploitPayload stored unsanitized in database
-
ExecutionWritten to musiconhold_additional.conf
-
PersistAsterisk loads config and executes application
-
ImpactOS commands run as Asterisk service
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization OS command sanitization, avoid shell exec
MITRE ATT&CK
2 techniques across 1 tactic: Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires an authenticated session with an existing FreePBX administrator account (PR present) and access to the Music on Hold (MoH) module's configuration endpoint that accepts the custom Asterisk application POST parameter. The target must be running FreePBX prior to 16.0.4 or 17.0.6 with the MoH module enabled and a functioning Asterisk backend that loads musiconhold_additional.conf. The primary limiting factor is the administrator-credential prerequisite - this is not exploitable pre-authentication or by low-privilege telephony users - which confines realistic risk to insider misuse, credential theft, or chaining from another auth bypass. No end-user interaction (UI:N) is needed once admin access is held. |
| Impact | The CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H) describes a network-reachable, low-complexity command injection yielding full confidentiality, integrity, and availability impact on the vulnerable system, but crucially gated behind PR:L - the description explicitly requires 'an existing FreePBX administrator account.' This is therefore a post-authentication privilege-to-code-execution flaw, not a pre-auth remote takeover, which materially lowers real-world urgency: the attacker must already hold admin credentials to the FreePBX GUI. There is no EPSS score, no CISA KEV listing, and no public proof-of-concept identified in the provided data (only the vendor GitHub Security Advisory), so exploitation status is 'no public exploit identified at time of analysis.' The 7.7 rating is credible for what it is - reliable OS command execution as the Asterisk service - but the admin-authentication prerequisite means this is best treated as a privilege-escalation / defense-in-depth issue rather than a mass-exploitation threat. Note a mild tension worth verifying: the vendor scored PR:L, yet the requirement for an administrator (not a low-privilege user) account arguably supports PR:H; this affects prioritization only marginally since either way credentials are needed. |
| Exploit ScenarioDerived | An attacker who has obtained or been granted a FreePBX administrator login submits a crafted POST request to the Music on Hold module setting a malicious custom Asterisk application string, which is stored unsanitized and written into musiconhold_additional.conf. When Asterisk loads that configuration and executes the specified application, the attacker's injected OS commands run with the privileges of the Asterisk service. No public exploit code is identified at time of analysis, and the attack complexity is low once admin access is held. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 28, 2026
Command injection in the FreePBX Music on Hold (MoH) module lets anyone holding an existing FreePBX administrator account run arbitrary system commands with the privileges of the Asterisk service, because a POST parameter that defines a custom Asterisk application is stored in the database unsanitized and later written verbatim into musiconhold_additional.conf, which Asterisk loads and executes. Deployments running FreePBX prior to 16.0.4 or 17.0.6 with the MoH module enabled and a functioning Asterisk backend are exposed; the vendor has patched the issue in 16.0.4 and 17.0.6. The required admin credentials (PR:L in the published CVSS 4.0 vector, PR:H in the independent CVSS 3.1 assessment) make this a post-authentication privilege-to-code-execution flaw rather than a pre-auth remote takeover, so realistic risk is confined to insider misuse, credential theft, or chaining from another auth bypass; no public exploit code and no confirmed active exploitation (CISA KEV) are identified in the available intelligence.
RemediationAI
Apply the vendor fix by upgrading FreePBX to 16.0.4 or 17.0.6 or later, as documented in advisory GHSA-4g6v-whq9-944g at https://github.com/FreePBX/security-reporting/security/advisories/GHSA-4g6v-whq9-944g; this is the only complete removal of the injection path because the fix stops the unsanitized custom-application value from reaching musiconhold_additional.conf. Where immediate upgrade is not possible, the highest-value compensating control is credential-oriented, since exploitation requires an existing administrator account: enforce unique, strong admin passwords and multi-factor authentication on the FreePBX GUI and remove dormant administrator accounts, accepting that this does not remove the flaw and only raises the cost of the credential prerequisite. Restricting access to the FreePBX administrative interface and the MoH configuration endpoints to a management VLAN or trusted source IPs via firewall or web-server ACLs further shrinks the attack surface, with the trade-off that legitimate remote administration and any integrations posting to the GUI will break unless their addresses are explicitly allowed. Auditing and hardening the Asterisk configuration set (reviewing musiconhold_additional.conf for unexpected application directives after any administrative change, and monitoring the file and the FreePBX database for unauthorized writes) provides detection rather than prevention, since a successful injection leaves configuration artifacts. Finally, running Asterisk under a dedicated unprivileged service account with minimal OS rights limits the blast radius of any command that does execute, but it does not prevent the command from running; note that patch availability was not independently verified beyond the version numbers stated in the vendor advisory, and absence of a public exploit does not reduce the need to patch.
Affected VersionsENISA
Affected Packages
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
The root cause is CWE-78 operating-system command injection delivered through a configuration-file trust boundary rather than a direct shell call. FreePBX's Music on Hold (MoH) module exposes an administrative endpoint that accepts a POST parameter naming a custom Asterisk application; that value is persisted to the FreePBX database with no sanitization and later rendered without validation into the generated Asterisk configuration file musiconhold_additional.conf. Because Asterisk reads that file on reload/restart and executes the application entries it contains, an injected value is interpreted by Asterisk as configuration, resulting in arbitrary command execution under the Asterisk service account's permissions. The published record is scored CVSS 4.0 AV:N/AC:L/AT:P/PR:L/UI:N with high confidentiality, integrity and availability impact to the vulnerable system and no subsequent-system impact, consistent with a network-reachable, low-complexity exploit whose prerequisite is a valid administrator session (AT:P - attack requirements present). The independent assessment scored it CVSS 3.1 AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:H, i.e. high-privilege authenticated, no user interaction, scope unchanged, with full impact across confidentiality, integrity and availability on the FreePBX/Asterisk host. The provided CPE string cpe:2.3:a:freepbx:security-reporting:*:*:*:*:*:*:*:* maps to the FreePBX security-reporting repository that carries the vendor advisory rather than to a narrowly versioned product build, so version exposure must be determined from the FreePBX release numbers cited in the advisory.
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
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
Network-reachable web module, low complexity, but requires an administrator account so PR:H; full OS command execution as the Asterisk service gives C:H/I:H/A:H with unchanged scope.
Primary rating from Vendor (GitHub_M).
CVSS VectorVendor: GitHub_M
Lifecycle Timeline
2DescriptionCVE.org
FreePBX is an open source IP PBX. Prior to versions 16.0.4 and 17.0.6, the FreePBX Music on Hold (MoH) module contains a critical security flaw that allows authenticated attackers to execute arbitrary system commands with the privileges of the Asterisk service. Authentication with an existing FreePBX administrator account is required. The root cause lies in the fact that the module accepts a POST parameter that defines a custom Asterisk application, which is then stored in the database without any sanitization. Later, this data is written directly to the musiconhold_additional.conf configuration file without validation. Since Asterisk reads this configuration file and executes the specified application, an attacker can inject arbitrary commands that will be executed with Asterisk's permissions. This issue has been patched in versions 16.0.4 and 17.0.6.
Technical POC Analysis
CWE-78 (OS command injection) in the FreePBX Music on Hold (music) module, implemented in Music.class.php.
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
A command-injection flaw in the FreePBX Music on Hold module allows someone who already holds a FreePBX administrator login to execute arbitrary operating-system commands on the underlying PBX server with the privileges of the Asterisk service. Because the required access is an existing administrative account rather than anonymous internet access, the realistic exposure is insider misuse, use of stolen or shared admin credentials, or attackers chaining this with a separate authentication bypass. Leadership should care because the affected systems are business-critical voice infrastructure, and successful exploitation means full control of the telephony host - enabling service disruption, toll fraud, interception of calls, and a foothold for further movement into the network.
Apply vendor patch (FreePBX 16.0.4 or 17.0.6); where upgrade is not immediately possible, disable the Music on Hold module, restrict and monitor administrator accounts with MFA and least privilege, and segment PBX hosts from the corporate network.
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
OS command injection occurs when an application passes unsanitized user input directly into system shell commands.
FreePBX 15, 16, and 17 contain SQL injection vulnerabilities enabling unauthenticated access to the administrator interf
The callme_startcall function in recordings/misc/callme_page.php in FreePBX 2.9, 2.10, and earlier allows remote attacke
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
htdocs_ari/includes/login.php in the ARI Framework module/Asterisk Recording Interface (ARI) in FreePBX before 2.9.0.9,
Authenticated arbitrary file upload in the FreePBX Endpoint Manager module (FreePBX 16 before 16.0.92 and FreePBX 17 bef
Authenticated SQL injection in the FreePBX Endpoint Manager module allows a user holding a valid, known FreePBX username
Authentication bypass in the FreePBX Endpoint Manager module lets remote, unauthenticated attackers impersonate any targ
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
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
FreePBX 10.13.66-32bit and 14.0.1.24 (SNG7-PBX-64bit-1712-2) allow post-authentication SQL injection via the order param
Multiple cross-site scripting (XSS) vulnerabilities in FreePBX 2.9 and earlier allow remote attackers to inject arbitrar
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
EUVD-2026-88385
NVD
CVE.org
EPSS
Vulnrichment
GitHub
Exploit-DB