CVE-2026-39967
TypeBot is a chatbot builder tool. In versions 3.15.2 and prior, the bot engine's the findResult query does not filter results by typebotId, allowing an authenticated user to load result data (user answers, variable values) from a different typebot by supplying a foreign resultId to the startChat endpoint. Exploitation is constrained by CUID2's cryptographically random 24-character IDs (making brute-force infeasible), the requirement that rememberUser be enabled, and the need for matching variable names in the current typebot. If successfully exploited, an attacker can access the original user's previous answers, session variable values, and hasStarted flag, potentially exposing PII like names, emails, and phone numbers. This issue has been fixed in version 3.16.0.
CVSS
- Versión: 3.1
- Vector: CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N
- Puntuación base: 3.1
Probabilidad de explotación (EPSS)
- Probabilidad de explotación en los próximos 30 días: 0.29%
- Percentil entre todas las CVEs puntuadas: 20
- 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).
Tecnologías afectadas (1)
⚠ Inferidas por IA a partir de la descripción — NVD aún no ha analizado esta CVE; no son CPE verificados.
CWE
- CWE-639, CWE-862
Referencias
- https://github.com/baptisteArno/typebot.io/commit/73162634e6bdebd37a1a571db4062d30854e0400
- https://github.com/baptisteArno/typebot.io/releases/tag/v3.16.0
- https://github.com/baptisteArno/typebot.io/security/advisories/GHSA-f475-7m4x-m6mx
- https://github.com/baptisteArno/typebot.io/security/advisories/GHSA-f475-7m4x-m6mx
JSON original (NVD)
Mostrar
{
"id": "CVE-2026-39967",
"cveTags": [],
"metrics": {
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"id": "CVE-2026-39967",
"role": "CISA Coordinator",
"options": [
{
"exploitation": "poc"
},
{
"automatable": "no"
},
{
"technicalImpact": "partial"
}
],
"version": "2.0.3",
"timestamp": "2026-05-26T19:05:13.766138Z"
}
}
],
"cvssMetricV31": [
{
"type": "Secondary",
"source": "security-advisories@github.com",
"cvssData": {
"scope": "UNCHANGED",
"version": "3.1",
"baseScore": 3.1,
"attackVector": "NETWORK",
"baseSeverity": "LOW",
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:L/I:N/A:N",
"integrityImpact": "NONE",
"userInteraction": "NONE",
"attackComplexity": "HIGH",
"availabilityImpact": "NONE",
"privilegesRequired": "LOW",
"confidentialityImpact": "LOW"
},
"impactScore": 1.4,
"exploitabilityScore": 1.6
}
]
},
"affected": [
{
"source": "security-advisories@github.com",
"affectedData": [
{
"vendor": "baptisteArno",
"product": "typebot.io",
"versions": [
{
"status": "affected",
"version": "< 3.16.0"
}
]
}
]
}
],
"published": "2026-05-22T19:17:03.243",
"references": [
{
"url": "https://github.com/baptisteArno/typebot.io/commit/73162634e6bdebd37a1a571db4062d30854e0400",
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/baptisteArno/typebot.io/releases/tag/v3.16.0",
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/baptisteArno/typebot.io/security/advisories/GHSA-f475-7m4x-m6mx",
"source": "security-advisories@github.com"
},
{
"url": "https://github.com/baptisteArno/typebot.io/security/advisories/GHSA-f475-7m4x-m6mx",
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0"
}
],
"vulnStatus": "Deferred",
"weaknesses": [
{
"type": "Secondary",
"source": "security-advisories@github.com",
"description": [
{
"lang": "en",
"value": "CWE-639"
},
{
"lang": "en",
"value": "CWE-862"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "TypeBot is a chatbot builder tool. In versions 3.15.2 and prior, the bot engine's the findResult query does not filter results by typebotId, allowing an authenticated user to load result data (user answers, variable values) from a different typebot by supplying a foreign resultId to the startChat endpoint. Exploitation is constrained by CUID2's cryptographically random 24-character IDs (making brute-force infeasible), the requirement that rememberUser be enabled, and the need for matching variable names in the current typebot. If successfully exploited, an attacker can access the original user's previous answers, session variable values, and hasStarted flag, potentially exposing PII like names, emails, and phone numbers. This issue has been fixed in version 3.16.0."
},
{
"lang": "es",
"value": "TypeBot es una herramienta de creación de chatbots. En las versiones 3.15.2 y anteriores, la consulta findResult del motor del bot no filtra los resultados por typebotId, permitiendo a un usuario autenticado cargar datos de resultados (respuestas de usuario, valores de variables) de un typebot diferente al proporcionar un resultId ajeno al endpoint startChat. La explotación está limitada por los IDs criptográficamente aleatorios de 24 caracteres de CUID2 (haciendo inviable la fuerza bruta), el requisito de que rememberUser esté habilitado y la necesidad de nombres de variables coincidentes en el typebot actual. Si se explota con éxito, un atacante puede acceder a las respuestas anteriores del usuario original, los valores de las variables de sesión y el flag hasStarted, exponiendo potencialmente PII como nombres, correos electrónicos y números de teléfono. Este problema ha sido solucionado en la versión 3.16.0."
}
],
"lastModified": "2026-07-23T16:10:00.137",
"sourceIdentifier": "security-advisories@github.com"
}