CVE-2026-39308
Full vulnerability record from the local CVENow database.
Description
PraisonAI is a multi-agent teams system. Prior to 1.5.113, PraisonAI's recipe registry publish endpoint writes uploaded recipe bundles to a filesystem path derived from the bundle's internal manifest.json before it verifies that the manifest name and version match the HTTP route. A malicious publisher can place ../ traversal sequences in the bundle manifest and cause the registry server to create files outside the configured registry root even though the request is ultimately rejected with HTTP 400. This is an arbitrary file write / path traversal issue on the registry host. It affects deployments that expose the recipe registry publish flow. If the registry is intentionally run without a token, any network client that can reach the service can trigger it. If a token is configured, any user with publish access can still exploit it. This vulnerability is fixed in 1.5.113.
View original CVE JSON
{
"id": "CVE-2026-39308",
"sourceIdentifier": "[email protected]",
"published": "2026-04-07T17:16:36.770",
"lastModified": "2026-10-26T22:10:00.163",
"vulnStatus": "Analyzed",
"cveTags": [],
"descriptions": [
{
"lang": "en",
"value": "PraisonAI is a multi-agent teams system. Prior to 1.5.113, PraisonAI's recipe registry publish endpoint writes uploaded recipe bundles to a filesystem path derived from the bundle's internal manifest.json before it verifies that the manifest name and version match the HTTP route. A malicious publisher can place ../ traversal sequences in the bundle manifest and cause the registry server to create files outside the configured registry root even though the request is ultimately rejected with HTTP 400. This is an arbitrary file write / path traversal issue on the registry host. It affects deployments that expose the recipe registry publish flow. If the registry is intentionally run without a token, any network client that can reach the service can trigger it. If a token is configured, any user with publish access can still exploit it. This vulnerability is fixed in 1.5.113."
},
{
"lang": "es",
"value": "PraisonAI es un sistema de equipos multiagente. Antes de la 1.5.113, el endpoint de publicación del registro de recetas de PraisonAI escribe los paquetes de recetas subidos a una ruta del sistema de archivos derivada del manifest.json interno del paquete antes de verificar que el nombre y la versión del manifiesto coinciden con la ruta HTTP. Un publicador malicioso puede colocar secuencias de salto de ruta .. / en el manifiesto del paquete y hacer que el servidor del registro cree archivos fuera de la raíz del registro configurada, aunque la solicitud sea finalmente rechazada con HTTP 400. Esto es un problema de escritura de archivo arbitrario / salto de ruta en el host del registro. Afecta a las implementaciones que exponen el flujo de publicación del registro de recetas. Si el registro se ejecuta intencionadamente sin un token, cualquier cliente de red que pueda alcanzar el servicio puede activarlo. Si se configura un token, cualquier usuario con acceso de publicación aún puede explotarlo. Esta vulnerabilidad está corregida en la 1.5.113."
}
],
"affected": [
{
"source": "[email protected]",
"affectedData": [
{
"vendor": "MervinPraison",
"product": "PraisonAI",
"versions": [
{
"version": "< 4.5.113",
"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:U/C:N/I:H/A:L",
"baseScore": 7.1,
"baseSeverity": "HIGH",
"attackVector": "NETWORK",
"attackComplexity": "LOW",
"privilegesRequired": "LOW",
"userInteraction": "NONE",
"scope": "UNCHANGED",
"confidentialityImpact": "NONE",
"integrityImpact": "HIGH",
"availabilityImpact": "LOW"
},
"exploitabilityScore": 2.8,
"impactScore": 4.2
}
],
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"timestamp": "2026-04-09T15:07:44.370560Z",
"id": "CVE-2026-39308",
"options": [
{
"exploitation": "poc"
},
{
"automatable": "no"
},
{
"technicalImpact": "partial"
}
],
"role": "CISA Coordinator",
"version": "2.0.3"
}
}
]
},
"weaknesses": [
{
"source": "[email protected]",
"type": "Secondary",
"description": [
{
"lang": "en",
"value": "CWE-22"
}
]
}
],
"configurations": [
{
"nodes": [
{
"operator": "OR",
"negate": false,
"cpeMatch": [
{
"vulnerable": true,
"criteria": "cpe:2.3:a:praison:praisonai:*:*:*:*:*:*:*:*",
"versionEndIncluding": "4.5.112",
"matchCriteriaId": "93136744-3972-4DDD-B569-091065F57C0B"
}
]
}
]
}
],
"references": [
{
"url": "https://github.com/MervinPraison/PraisonAI/security/advisories/GHSA-r9x3-wx45-2v7f",
"source": "[email protected]",
"tags": [
"Exploit",
"Mitigation",
"Vendor Advisory"
]
},
{
"url": "https://github.com/MervinPraison/PraisonAI/security/advisories/GHSA-r9x3-wx45-2v7f",
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"tags": [
"Exploit",
"Mitigation",
"Vendor Advisory"
]
}
]
}