CVE-2026-46516
MediumCVSS 4.8Exploitation Probability (EPSS)
Low risk18th percentile - higher than 18% of all known CVEs
Summary
Frogman prior to 1.6.6 has a vulnerability in its chat Markdown formatter – it inserts raw regex capture groups as HTML. User-controlled fields (e.g., extension names, IVR descriptions) can carry JavaScript payloads that execute when an admin views the response.
Risk Assessment
An attacker can execute arbitrary JavaScript in the FreePBX admin's session, potentially taking over the phone system.
Recommendation
Upgrade Frogman to version 1.6.6. Restrict access to the FreePBX admin panel.
Other vulnerabilities in Frogman
See all- CVE-2026-46515Critical
In Frogman prior to version 1.6.3, users with PERM_READ access could call sensitive API functions, exposing AMI secrets, outbound dial PINs, Asterisk dialplan contexts, SSH commands, backup paths, CDR history, and raw AMI dumps with SIP fields (passwords, md5_cred, oauth_secret).
- CVE-2026-46512Critical
In Frogman prior to version 1.6.2, the fm_dialplan_apply function accepted template parameters (greeting, dest, url, extension, code, file) without proper sanitization, allowing a PERM_WRITE caller with confirm:true to inject arbitrary Asterisk directives such as System(), Set(SHELL(...)), Goto, or Macro. This issue is fixed in version 1.6.2.
- CVE-2026-46514Medium
A vulnerability in Frogman before version 1.6.2 causes plaintext password and secret leakage. The fm_reset_password and fm_add_extension functions return credentials that are then stored in the audit log (oc_audit_log.detail) as JSON. Any user with PERM_READ permission and access to fm_audit_search can recover the stored credentials.
- CVE-2026-46513High
Frogman prior to version 1.6.2 stored API tokens as raw hex strings and authenticated the X-Frogman-Token header by comparing it with the stored raw value. This allowed reading active tokens, including admin tokens, from the database and reusing them.
Original NVD description (English source)
Frogman provides headless FreePBX control. Prior to version 1.6.6, Frogman's chat-console markdown formatter (`assets/js/chat.js`'s `formatMarkdown`) inserted regex capture groups as raw HTML in four template patterns: inline code, bold, markdown links, and download links. Tool responses that reflect user-controlled fields — extension names, ring-group descriptions, IVR names, queue descriptions, etc. — could carry an HTML/JavaScript payload that executes when another admin views the response through Frogman chat. The payload runs in the viewer's session, with the viewer's permissions. FreePBX's own admin GUI escapes these same fields via `freepbx_htmlspecialchars()` throughout its view templates. The chat formatter was the leaky side. Version 1.6.6 patches the issue.

