CVE-2026-94455
An HTTP endpoint intended for provisioning enterprise and reseller organisations is reachable without any session. The authentication middleware is bound only to an explicit list of controllers, and the enterprise controller is not on that list, so no authentication runs for these routes.
The endpoint's only check is that the request body carries a token bearing a valid signature from the instance secret. It does not check what that token was issued for. Login tokens are signed with the same secret and carry no purpose, audience or expiry claim, so an ordinary user's own session token satisfies the check.
Leer descripción completaMostrar menos
Presented with such a token, the endpoint creates a new organisation holding the highest subscription tier, flagged as lifetime and with a channel allowance far above any sold plan, creates an organisation-owner account alongside it, and returns the new organisation's API key in the response body. That key is immediately valid against the public API.
CVSS
- Versión: 3.1
- Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L
- Puntuación base: 7.1
Probabilidad de explotación (EPSS)
- Probabilidad de explotación en los próximos 30 días: 0.26%
- Percentil entre todas las CVEs puntuadas: 17
- Fecha de la puntuación: 6/10/2026
EPSS (Exploit Prediction Scoring System, de FIRST) estima la probabilidad de que una vulnerabilidad sea explotada en 30 días. Complementa a CVSS (impacto) y a CISA KEV (explotación confirmada).
🎯 Técnicas ATT&CK
Cómo se explota esta vulnerabilidad y qué consigue el atacante, en el lenguaje de MITRE ATT&CK.
- Explotación
T1210Exploitation of Remote Serviceslateral movement60 % - Impacto principal
T1078Valid Accountsstealth · persistence · privilege escalation · initial access55 % - Impacto secundario
T1195.002Compromise Software Supply Chaininitial access55 % - Impacto secundario
T1499Endpoint Denial of Serviceimpact55 %
Inferido por reglas deterministas a partir del vector CVSS y la CWE. Solo orientativo.
🛡️ Mitigaciones ATT&CK que cubren estas técnicas
CWE
- CWE-306, CWE-345, CWE-770, CWE-1390
Referencias
JSON original (NVD)
Mostrar
{
"id": "CVE-2026-94455",
"cveTags": [],
"metrics": {
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"id": "CVE-2026-94455",
"role": "CISA Coordinator",
"options": [
{
"exploitation": "none"
},
{
"automatable": "no"
},
{
"technicalImpact": "partial"
}
],
"version": "2.0.3",
"timestamp": "2026-09-22T18:13:58.426768Z"
}
}
],
"cvssMetricV31": [
{
"type": "Secondary",
"source": "4cdc9741-f887-419a-a2fd-acbbd2729276",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 7.1,
"attackVector": "NETWORK",
"baseSeverity": "HIGH",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L",
"integrityImpact": "HIGH",
"userInteraction": "NONE",
"attackComplexity": "LOW",
"availabilityImpact": "LOW",
"privilegesRequired": "LOW",
"confidentialityImpact": "NONE"
},
"impactScore": 4.2,
"exploitabilityScore": 2.8
}
]
},
"affected": [
{
"source": "4cdc9741-f887-419a-a2fd-acbbd2729276",
"affectedData": [
{
"repo": "https://github.com/gitroomhq/postiz-app",
"vendor": "GitroomHQ",
"product": "postiz-app",
"versions": [
{
"status": "affected",
"version": "0",
"lessThan": "2.4.0",
"versionType": "semver"
}
],
"packageName": "postiz-app",
"defaultStatus": "unaffected"
}
]
}
],
"published": "2026-09-22T17:17:31.497",
"references": [
{
"url": "https://gadvisory.org/advisories/PSA-2026-P8W1J0",
"source": "4cdc9741-f887-419a-a2fd-acbbd2729276"
},
{
"url": "https://github.com/gitroomhq/postiz-app",
"source": "4cdc9741-f887-419a-a2fd-acbbd2729276"
},
{
"url": "https://github.com/gitroomhq/postiz-app/commit/9259cf2429e8cc0c88414e88d5e6c783d7ffba63",
"source": "4cdc9741-f887-419a-a2fd-acbbd2729276"
},
{
"url": "https://github.com/gitroomhq/postiz-app/releases/tag/v2.24.0",
"source": "4cdc9741-f887-419a-a2fd-acbbd2729276"
}
],
"vulnStatus": "Awaiting Analysis",
"weaknesses": [
{
"type": "Secondary",
"source": "4cdc9741-f887-419a-a2fd-acbbd2729276",
"description": [
{
"lang": "en",
"value": "CWE-306"
},
{
"lang": "en",
"value": "CWE-345"
},
{
"lang": "en",
"value": "CWE-770"
},
{
"lang": "en",
"value": "CWE-1390"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "An HTTP endpoint intended for provisioning enterprise and reseller organisations is reachable without any session. The authentication middleware is bound only to an explicit list of controllers, and the enterprise controller is not on that list, so no authentication runs for these routes.\n\nThe endpoint's only check is that the request body carries a token bearing a valid signature from the instance secret. It does not check what that token was issued for. Login tokens are signed with the same secret and carry no purpose, audience or expiry claim, so an ordinary user's own session token satisfies the check.\n\nPresented with such a token, the endpoint creates a new organisation holding the highest subscription tier, flagged as lifetime and with a channel allowance far above any sold plan, creates an organisation-owner account alongside it, and returns the new organisation's API key in the response body. That key is immediately valid against the public API."
}
],
"lastModified": "2026-09-22T19:37:36.747",
"sourceIdentifier": "4cdc9741-f887-419a-a2fd-acbbd2729276"
}