CVE-2026-6394
The Nexa Blocks – Gutenberg Blocks, Page Builder for Gutenberg Editor & FSE plugin for WordPress is vulnerable to Server-Side Request Forgery (SSRF) in versions up to and including 1.1.1. This is due to the import_demo() function accepting a user-supplied URL in the demo_json_file POST parameter and passing it directly to wp_remote_get() without any URL validation or restriction against internal or private network destinations.
Leer descripción completaMostrar menos
The nexa_blocks_nonce required for the AJAX action is publicly exposed in the HTML source of any frontend page where the plugin is active via wp_localize_script on the enqueue_block_assets hook, effectively making the nonce available to all visitors and bypassing any intended authentication barrier. This makes it possible for unauthenticated attackers to make server-side HTTP requests to arbitrary internal or external destinations, potentially exposing internal services, cloud metadata endpoints such as the AWS instance metadata service, localhost services, and other resources not intended to be publicly accessible. A secondary SSRF vector also exists whereby image URLs extracted from the attacker-controlled JSON response are subsequently fetched via a second wp_remote_get() call, allowing chained exploitation through a crafted JSON payload.
CVSS
- Versión: 3.1
- Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N
- Puntuación base: 5.4
Probabilidad de explotación (EPSS)
- Probabilidad de explotación en los próximos 30 días: 0.41%
- Percentil entre todas las CVEs puntuadas: 33
- Fecha de la puntuación: 5/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-918
Referencias
- https://plugins.trac.wordpress.org/browser/nexa-blocks/tags/1.1.1/inc/classes/enqueue-assets.php#L84
- https://plugins.trac.wordpress.org/browser/nexa-blocks/tags/1.1.1/inc/template/template.php#L236
- https://plugins.trac.wordpress.org/browser/nexa-blocks/tags/1.1.1/inc/template/template.php#L242
- https://plugins.trac.wordpress.org/browser/nexa-blocks/trunk/inc/classes/enqueue-assets.php#L84
- https://plugins.trac.wordpress.org/browser/nexa-blocks/trunk/inc/template/template.php#L236
- https://plugins.trac.wordpress.org/browser/nexa-blocks/trunk/inc/template/template.php#L242
- https://www.wordfence.com/threat-intel/vulnerabilities/id/b4bb3067-7953-466d-a469-8a101450f133?source=cve
JSON original (NVD)
Mostrar
{
"id": "CVE-2026-6394",
"cveTags": [],
"metrics": {
"ssvcV203": [
{
"source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
"ssvcData": {
"id": "CVE-2026-6394",
"role": "CISA Coordinator",
"options": [
{
"exploitation": "none"
},
{
"automatable": "no"
},
{
"technicalImpact": "partial"
}
],
"version": "2.0.3",
"timestamp": "2026-05-20T13:51:10.698992Z"
}
}
],
"cvssMetricV31": [
{
"type": "Secondary",
"source": "security@wordfence.com",
"cvssData": {
"scope": "CHANGED",
"version": "3.1",
"baseScore": 5.4,
"attackVector": "NETWORK",
"baseSeverity": "MEDIUM",
"vectorString": "CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:L/I:L/A:N",
"integrityImpact": "LOW",
"userInteraction": "NONE",
"attackComplexity": "HIGH",
"availabilityImpact": "NONE",
"privilegesRequired": "NONE",
"confidentialityImpact": "LOW"
},
"impactScore": 2.7,
"exploitabilityScore": 2.2
}
]
},
"affected": [
{
"source": "security@wordfence.com",
"affectedData": [
{
"vendor": "wpdive",
"product": "Nexa Blocks – Gutenberg Blocks, Page Builder for Gutenberg Editor & FSE",
"versions": [
{
"status": "affected",
"version": "0",
"versionType": "semver",
"lessThanOrEqual": "1.1.1"
}
],
"defaultStatus": "unaffected"
}
]
}
],
"published": "2026-05-20T02:16:37.490",
"references": [
{
"url": "https://plugins.trac.wordpress.org/browser/nexa-blocks/tags/1.1.1/inc/classes/enqueue-assets.php#L84",
"source": "security@wordfence.com"
},
{
"url": "https://plugins.trac.wordpress.org/browser/nexa-blocks/tags/1.1.1/inc/template/template.php#L236",
"source": "security@wordfence.com"
},
{
"url": "https://plugins.trac.wordpress.org/browser/nexa-blocks/tags/1.1.1/inc/template/template.php#L242",
"source": "security@wordfence.com"
},
{
"url": "https://plugins.trac.wordpress.org/browser/nexa-blocks/trunk/inc/classes/enqueue-assets.php#L84",
"source": "security@wordfence.com"
},
{
"url": "https://plugins.trac.wordpress.org/browser/nexa-blocks/trunk/inc/template/template.php#L236",
"source": "security@wordfence.com"
},
{
"url": "https://plugins.trac.wordpress.org/browser/nexa-blocks/trunk/inc/template/template.php#L242",
"source": "security@wordfence.com"
},
{
"url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/b4bb3067-7953-466d-a469-8a101450f133?source=cve",
"source": "security@wordfence.com"
}
],
"vulnStatus": "Deferred",
"weaknesses": [
{
"type": "Secondary",
"source": "security@wordfence.com",
"description": [
{
"lang": "en",
"value": "CWE-918"
}
]
}
],
"descriptions": [
{
"lang": "en",
"value": "The Nexa Blocks – Gutenberg Blocks, Page Builder for Gutenberg Editor & FSE plugin for WordPress is vulnerable to Server-Side Request Forgery (SSRF) in versions up to and including 1.1.1. This is due to the import_demo() function accepting a user-supplied URL in the demo_json_file POST parameter and passing it directly to wp_remote_get() without any URL validation or restriction against internal or private network destinations. The nexa_blocks_nonce required for the AJAX action is publicly exposed in the HTML source of any frontend page where the plugin is active via wp_localize_script on the enqueue_block_assets hook, effectively making the nonce available to all visitors and bypassing any intended authentication barrier. This makes it possible for unauthenticated attackers to make server-side HTTP requests to arbitrary internal or external destinations, potentially exposing internal services, cloud metadata endpoints such as the AWS instance metadata service, localhost services, and other resources not intended to be publicly accessible. A secondary SSRF vector also exists whereby image URLs extracted from the attacker-controlled JSON response are subsequently fetched via a second wp_remote_get() call, allowing chained exploitation through a crafted JSON payload."
},
{
"lang": "es",
"value": "El plugin Nexa Blocks - Gutenberg Blocks, Page Builder for Gutenberg Editor & FSE para WordPress es vulnerable a falsificación de petición del lado del servidor (SSRF) en versiones hasta la 1.1.1 inclusive. Esto se debe a que la función import_demo() acepta una URL proporcionada por el usuario en el parámetro POST demo_json_file y la pasa directamente a wp_remote_get() sin ninguna validación de URL o restricción contra destinos de red internos o privados. El nexa_blocks_nonce requerido para la acción AJAX está expuesto públicamente en el código fuente HTML de cualquier página de frontend donde el plugin está activo a través de wp_localize_script en el hook enqueue_block_assets, haciendo que el nonce esté efectivamente disponible para todos los visitantes y eludiendo cualquier barrera de autenticación prevista. Esto permite a atacantes no autenticados realizar peticiones HTTP del lado del servidor a destinos internos o externos arbitrarios, exponiendo potencialmente servicios internos, puntos finales de metadatos en la nube como el servicio de metadatos de instancia de AWS, servicios de localhost y otros recursos no destinados a ser accesibles públicamente. También existe un vector SSRF secundario por el cual las URL de imágenes extraídas de la respuesta JSON controlada por el atacante son posteriormente obtenidas a través de una segunda llamada a wp_remote_get(), permitiendo la explotación encadenada a través de una carga útil JSON manipulada."
}
],
"lastModified": "2026-07-24T08:10:00.150",
"sourceIdentifier": "security@wordfence.com"
}