← Back to CVE Explorer

CVE-2026-46512

Full vulnerability record from the local CVENow database.

Description

Frogman provides headless PBX control through MCP and HTTP API. Prior to 1.6.2, fm_dialplan_apply accepted template parameters including greeting, dest, url, extension, code, and file, and Tools/DialplanApply.php wrote Dialplan/Templates.php output to extensions_custom.conf while only Dialplan/TemplateBase.php:38-42 sanitized contextName(), allowing a PERM_WRITE caller using confirm:true to inject arbitrary Asterisk directives such as System(), Set(SHELL(...)), Goto, or Macro. This issue is fixed in version 1.6.2.

Severity
CRITICAL
CVSS score
9.9 (v3.1)
Vulnerability status
Deferred
Source identifier
Published
2026-07-16 19:16:46.510000
Last modified
2026-10-24 20:10:00.137000
View original CVE JSON
{
  "id": "CVE-2026-46512",
  "sourceIdentifier": "[email protected]",
  "published": "2026-07-16T19:16:46.510",
  "lastModified": "2026-10-24T20:10:00.137",
  "vulnStatus": "Deferred",
  "cveTags": [],
  "descriptions": [
    {
      "lang": "en",
      "value": "Frogman provides headless PBX control through MCP and HTTP API. Prior to 1.6.2, fm_dialplan_apply accepted template parameters including greeting, dest, url, extension, code, and file, and Tools/DialplanApply.php wrote Dialplan/Templates.php output to extensions_custom.conf while only Dialplan/TemplateBase.php:38-42 sanitized contextName(), allowing a PERM_WRITE caller using confirm:true to inject arbitrary Asterisk directives such as System(), Set(SHELL(...)), Goto, or Macro. This issue is fixed in version 1.6.2."
    },
    {
      "lang": "es",
      "value": "Frogman proporciona control de PBX sin interfaz gráfica a través de MCP y la API HTTP. Antes de 1.6.2, fm_dialplan_apply aceptaba parámetros de plantilla incluyendo greeting, dest, url, extensión, code y file, y Tools/DialplanApply.php escribía la salida de Dialplan/Templates.php a extensions_custom.conf mientras que solo Dialplan/TemplateBase.php:38-42 saneaba contextName(), permitiendo a un llamador PERM_WRITE usando confirm:true inyectar directivas arbitrarias de Asterisk como System(), Set(SHELL(...)), Goto o Macro. Este problema está solucionado en la versión 1.6.2."
    }
  ],
  "affected": [
    {
      "source": "[email protected]",
      "affectedData": [
        {
          "vendor": "mwtcmi",
          "product": "frogman",
          "versions": [
            {
              "version": "< 1.6.2",
              "status": "affected"
            }
          ]
        }
      ]
    }
  ],
  "metrics": {
    "cvssMetricV31": [
      {
        "source": "[email protected]",
        "type": "Secondary",
        "cvssData": {
          "version": "3.1",
          "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H",
          "baseScore": 9.9,
          "baseSeverity": "CRITICAL",
          "attackVector": "NETWORK",
          "attackComplexity": "LOW",
          "privilegesRequired": "LOW",
          "userInteraction": "NONE",
          "scope": "CHANGED",
          "confidentialityImpact": "HIGH",
          "integrityImpact": "HIGH",
          "availabilityImpact": "HIGH"
        },
        "exploitabilityScore": 3.1,
        "impactScore": 6.0
      }
    ],
    "ssvcV203": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "ssvcData": {
          "timestamp": "2026-07-18T03:04:12.114068Z",
          "id": "CVE-2026-46512",
          "options": [
            {
              "exploitation": "none"
            },
            {
              "automatable": "no"
            },
            {
              "technicalImpact": "total"
            }
          ],
          "role": "CISA Coordinator",
          "version": "2.0.3"
        }
      }
    ]
  },
  "weaknesses": [
    {
      "source": "[email protected]",
      "type": "Secondary",
      "description": [
        {
          "lang": "en",
          "value": "CWE-94"
        }
      ]
    }
  ],
  "references": [
    {
      "url": "https://github.com/mwtcmi/frogman/commit/36a05ffa2df1d256b6f6f7c3b66ef77ebe3e458a",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/mwtcmi/frogman/releases/tag/v1.6.1",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/mwtcmi/frogman/releases/tag/v1.6.2",
      "source": "[email protected]"
    },
    {
      "url": "https://github.com/mwtcmi/frogman/security/advisories/GHSA-pxfc-q72v-jh8m",
      "source": "[email protected]"
    }
  ]
}