CVE-2026-39417
Full vulnerability record from the local CVENow database.
Description
MaxKB is an open-source AI assistant for enterprise. Versions 2.7.1 and below contain an incomplete fix for CVE-2025-53928, where a Remote Code Execution vulnerability still exists in the MCP node of the workflow engine. MaxKB only restricts the referencing code path (loading MCP config from the database). The else branch, responsible for loading mcp_servers directly from user-supplied JSON remains completely unpatched. Since mcp_source is an optional field (required=False), an attacker can simply omit it or set it to any non-referencing value to bypass the fix. By calling the workflow creation API directly with a crafted JSON payload, an attacker can inject a complete MCP node configuration with stdio transport, arbitrary command, and args — achieving RCE when the workflow is triggered via chat. This issue has been fixed in version 2.8.0.
View original CVE JSON
{
"id": "CVE-2026-39417",
"sourceIdentifier": "[email protected]",
"published": "2026-04-14T00:16:07.193",
"lastModified": "2026-10-26T22:10:00.163",
"vulnStatus": "Analyzed",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "MaxKB is an open-source AI assistant for enterprise. Versions 2.7.1 and below contain an incomplete fix for CVE-2025-53928, where a Remote Code Execution vulnerability still exists in the MCP node of the workflow engine. MaxKB only restricts the referencing code path (loading MCP config from the database). The else branch, responsible for loading mcp_servers directly from user-supplied JSON remains completely unpatched. Since mcp_source is an optional field (required=False), an attacker can simply omit it or set it to any non-referencing value to bypass the fix. By calling the workflow creation API directly with a crafted JSON payload, an attacker can inject a complete MCP node configuration with stdio transport, arbitrary command, and args — achieving RCE when the workflow is triggered via chat. This issue has been fixed in version 2.8.0."
},
{
"lang": "es",
"value": "MaxKB es un asistente de IA de código abierto para empresas. Las versiones 2.7.1 e inferiores contienen una solución incompleta para CVE-2025-53928, donde una vulnerabilidad de ejecución remota de código aún existe en el nodo MCP del motor de flujo de trabajo. MaxKB solo restringe la ruta de código de referencia (cargando la configuración de MCP desde la base de datos). La rama else, responsable de cargar mcp_servers directamente desde JSON proporcionado por el usuario, permanece completamente sin parchear. Dado que mcp_source es un campo opcional (required=False), un atacante puede simplemente omitirlo o establecerlo en cualquier valor no referencial para eludir la solución. Al llamar directamente a la API de creación de flujo de trabajo con una carga útil JSON manipulada, un atacante puede inyectar una configuración completa del nodo MCP con transporte stdio, comando arbitrario y argumentos - logrando RCE cuando el flujo de trabajo se activa a través del chat. Este problema ha sido solucionado en la versión 2.8.0."
}
],
"affected": [
{
"source": "[email protected]",
"affectedData": [
{
"vendor": "1Panel-dev",
"product": "MaxKB",
"versions": [
{
"version": "< 2.8.0",
"status": "affected"
}
]
}
]
}
],
"metrics": {
"cvssMetricV31": [
{
"source": "[email protected]",
"type": "Secondary",
"cvssData": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:U/C:L/I:L/A:L",
"baseScore": 4.6,
"baseSeverity": "MEDIUM",
"attackVector": "NETWORK",
"attackComplexity": "HIGH",
"privilegesRequired": "LOW",
"userInteraction": "REQUIRED",
"scope": "UNCHANGED",
"confidentialityImpact": "LOW",
"integrityImpact": "LOW",
"availabilityImpact": "LOW"
},
"exploitabilityScore": 1.2,
"impactScore": 3.4
},
{
"source": "[email protected]",
"type": "Primary",
"cvssData": {
"version": "3.1",
"vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:L/I:L/A:L",
"baseScore": 5.5,
"baseSeverity": "MEDIUM",
"attackVector": "NETWORK",
"attackComplexity": "LOW",
"privilegesRequired": "LOW",
"userInteraction": "REQUIRED",
"scope": "UNCHANGED",
"confidentialityImpact": "LOW",
"integrityImpact": "LOW",
"availabilityImpact": "LOW"
},
"exploitabilityScore": 2.1,
"impactScore": 3.4
}
],
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"timestamp": "2026-04-14T13:33:54.884442Z",
"id": "CVE-2026-39417",
"options": [
{
"exploitation": "none"
},
{
"automatable": "no"
},
{
"technicalImpact": "partial"
}
],
"role": "CISA Coordinator",
"version": "2.0.3"
}
}
]
},
"weaknesses": [
{
"source": "[email protected]",
"type": "Secondary",
"description": [
{
"lang": "en",
"value": "CWE-20"
},
{
"lang": "en",
"value": "CWE-78"
}
]
}
],
"configurations": [
{
"nodes": [
{
"operator": "OR",
"negate": false,
"cpeMatch": [
{
"vulnerable": true,
"criteria": "cpe:2.3:a:maxkb:maxkb:*:*:*:*:-:*:*:*",
"versionEndExcluding": "2.8.0",
"matchCriteriaId": "8BB376B6-4E9C-4801-9D33-5BF858C857D2"
}
]
}
]
}
],
"references": [
{
"url": "https://github.com/1Panel-dev/MaxKB/commit/50e96002ee5dca34c68d3d9333b64ea358c92304",
"source": "[email protected]",
"tags": [
"Patch"
]
},
{
"url": "https://github.com/1Panel-dev/MaxKB/releases/tag/v2.8.0",
"source": "[email protected]",
"tags": [
"Release Notes"
]
},
{
"url": "https://github.com/1Panel-dev/MaxKB/security/advisories/GHSA-pw52-326g-r5xj",
"source": "[email protected]",
"tags": [
"Vendor Advisory"
]
}
]
}