CVE-2026-46513
Full vulnerability record from the local CVENow database.
Description
Frogman provides headless PBX control through MCP and HTTP API. Prior to 1.6.2, Frogman stored API tokens generated by Tools/CreateApiToken.php:33-36 as raw bin2hex(random_bytes(32)) strings in oc_api_tokens, and Frogman.class.php:78 authenticated the X-Frogman-Token header by comparing it with the stored raw value, allowing database read access to recover reusable active tokens at their assigned permission level, including admin. This issue is fixed in version 1.6.2.
Severity
HIGH
CVSS score
7.4
(v3.1)
Vulnerability status
Deferred
Source identifier
Published
2026-07-16 19:16:46.640000
Last modified
2026-10-24 20:10:00.137000
View original CVE JSON
{
"id": "CVE-2026-46513",
"sourceIdentifier": "[email protected]",
"published": "2026-07-16T19:16:46.640",
"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, Frogman stored API tokens generated by Tools/CreateApiToken.php:33-36 as raw bin2hex(random_bytes(32)) strings in oc_api_tokens, and Frogman.class.php:78 authenticated the X-Frogman-Token header by comparing it with the stored raw value, allowing database read access to recover reusable active tokens at their assigned permission level, including admin. 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 la versión 1.6.2, Frogman almacenaba los tokens de API generados por Tools/CreateApiToken.php:33-36 como cadenas bin2hex(random_bytes(32)) en bruto en oc_api_tokens, y Frogman.class.php:78 autenticaba el encabezado X-Frogman-Token comparándolo con el valor en bruto almacenado, lo que permitía el acceso de lectura a la base de datos para recuperar tokens activos reutilizables a su nivel de permiso asignado, incluido el de administrador. 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:H/PR:N/UI:N/S:U/C:H/I:H/A:N",
"baseScore": 7.4,
"baseSeverity": "HIGH",
"attackVector": "NETWORK",
"attackComplexity": "HIGH",
"privilegesRequired": "NONE",
"userInteraction": "NONE",
"scope": "UNCHANGED",
"confidentialityImpact": "HIGH",
"integrityImpact": "HIGH",
"availabilityImpact": "NONE"
},
"exploitabilityScore": 2.2,
"impactScore": 5.2
}
],
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"timestamp": "2026-07-17T13:58:25.901633Z",
"id": "CVE-2026-46513",
"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-256"
}
]
}
],
"references": [
{
"url": "https://github.com/mwtcmi/frogman/commit/b10f314add08c8e7585ba4b27d071b07d026ab55",
"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-9xf5-9ghq-p6cw",
"source": "[email protected]"
}
]
}