El plugin Export All URLs tiene un problema grave: no valida quién puede descargar los archivos que genera. Cualquiera, sin estar logueado, puede acceder a URLs privadas, emails de autores y metadata sensible del sitio. CVE-2026-2696 expone este fallo desde hace meses. La versión 5.1+ lo soluciona, pero actualizar es urgente si estás en 4.0-5.0.
En 30 segundos
- CVE-2026-2696 permite descargar datos sensibles del plugin Export All URLs sin autenticación
- Versiones 4.0 a 5.0 están vulnerables; la 5.1+ parcheó el fallo el 1 de abril de 2026
- Expone URLs privadas, emails de autores, borradores y estructura interna del sitio
- No requiere tools especializadas: cualquiera puede explotar esto con un navegador y un script simple
- Actualizar ahora es lo mínimo; auditar logs y rotar credenciales si sospechás exposición
WordPress Community es la comunidad global de usuarios, desarrolladores y contribuyentes que colabora en WordPress, un sistema de gestión de contenidos de código abierto mantenido por The WordPress Foundation. Participan en el desarrollo del core, creación de plugins y temas, y soporte comunitario.
Export All URLs es un plugin de WordPress que permite exportar el listado de URLs del sitio en formato CSV. Lo usan administradores para auditoría, mapeo de sitio o migraciones. El problema: la función de exportación nunca pidió que estuvieras logueado, y tampoco validó si tenías permisos para ver eso.
CVE-2026-2696: La vulnerabilidad de Export All URLs explicada
El 1 de abril de 2026, investigadores reportaron un fallo de acceso sin autenticación en Export All URLs (CVE-2026-2696). Suena a chiste de Día de Inocentes, pero es de verdad. El plugin ha estado vulnerable desde la versión 4.0, hace años. Lo grave: el endpoint que genera el CSV no chequea nada. Si el plugin estaba activo, cualquiera podía llamarlo, sin contraseña, sin cookie, sin nada.
Según WPScan, esto es clasificado como Sensitive Data Exposure (OWASP A3). CVSS score ronda 7.5 (alto). Si la estructura de tu sitio vale dinero — y vaya que vale — esto expone tablero completo al que juegue.
Cómo funciona el ataque: técnica de explotación step-by-step
Un atacante (ponele, competidor de tu nicho, o simplemente alguien buscando datos para armarse una lista de emails) hace lo siguiente:
- Identifica que el plugin está activo: entra a
/wp-content/plugins/export-all-urls/y ve si existe. Si la carpeta está, el plugin está instalado. - Llama al endpoint vulnerable: tipea en el navegador algo como
tudominio.com/?export_urls_csv=1o la ruta exacta que el plugin expone (varía según configuración). - Sin validación, genera el archivo: el plugin crea un CSV con todos los datos que pediste, sin preguntar nada.
- Descarga el archivo: el CSV tiene nombre predecible (ej:
export_123456.csvdonde los números son aleatorios de 6 dígitos). Se guarda en/wp-content/uploads/. - Automatiza a escala: usa un script para probar miles de sitios WordPress, identificar cuáles tienen el plugin, y bajar los CSVs. Todo sin aparecer en los logs como un ataque real.
Eso sí, si estás atento a los logs, ves requests sospechosos a esas rutas. Pero la mayoría no revisa logs con esa granularidad.
¿Qué datos sensibles se exponen realmente?
Acá viene lo que debería preocuparte. El CSV incluye:
- URLs públicas y privadas: borradores, posts programados, páginas ocultas del menú, URLs con parámetros internos que googleó pero no querés que se sepa.
- Emails de autores: cada autor del sitio aparece en los metadatos del CSV. Si tiene 10 autores, acabás de regalar 10 emails.
- Estructura interna: qué taxonomías usás, cómo organizás el contenido, dónde están las secciones privadas. Osint puro.
- Fecha de publicación: cuándo escribís posts, ritmo de contenido, cuándo dejás de actualizar el sitio.
- IDs de posts: si tu tabla de posts tiene huecos, el atacante sabe que borraste contenido. Metadata que no querés que se vea.
Combiná esto con un scraper de Google Indexing API y sabés exactamente qué está ranqueando, qué no, y por dónde podés competir. Phishing dirigido a tus autores se vuelve trivial (tenés sus emails y el contexto de qué escriben). Relacionado: importancia de actualizar plugins.
Versiones afectadas y cronología del parche
El timeline es así:
| Versión | Estado | Fecha de parche |
|---|---|---|
| 4.0 a 5.0 | Vulnerable | N/A — fijo desde antes |
| 5.1+ | Parcheada | 1 de abril de 2026 |

No hay fix retroactivo. Si estás en 4.9.x, actualizá a 5.1. El parche incluye validación de autenticación (solo usuarios logueados pueden exportar) y capability checks (necesitás permiso explícito de admin). Además, los CSVs ahora se generan en carpetas privadas, no en `/uploads/` público.
Riesgos inmediatos: por qué automatizar el ataque es trivial
Lo peligroso de este CVE es que no necesitás un exploit sofisticado. Sin autenticación de por medio, la barrera de entrada es prácticamente cero. Un atacante escribe un script de 20 líneas en Python, le tira una lista de dominios WordPress, y cosecha datos de miles de sitios en horas. Ni se entera nadie.
Peor aún (y esto es lo que mantiene a los headers de seguridad despiertos): si tenés 5000 sitios WordPress con Export All URLs, un atacante se arma una base de datos gigante con estructura de sitios, emails de usuarios, URLs privadas. Todo en una tarde. Imaginate las campañas de phishing dirigido que se arman con eso, la venta de datos en mercados oscuros, o simplemente competitive intelligence brutal.
Cómo remediar: paso a paso para actualizarse
Opción 1 (recomendada): Actualizar ahora mismo. Entrá a WordPress admin → Plugins → Export All URLs. Si ves notificación de update, hacé click. La 5.1+ está disponible desde el 1 de abril. Tardá 2 minutos. Hacelo antes de leer el resto de esto.
Opción 2 (si no se puede actualizar por algún motivo): Desactivar temporalmente. Si tu hosting es viejo y no soporta la nueva versión, o hay conflicto con otro plugin, desactiva Export All URLs hasta resolver. Es mejor no tenerlo que tenerlo vulnerable. Ya lo cubrimos antes en vulnerabilidades recientemente descubiertas.
Opción 3 (medida temporal, no definitiva): WAF rules. Si usás Cloudflare, Wordfence, o sucurity plugin similar, metele una regla que bloquee requests a `/wp-content/plugins/export-all-urls/` desde IPs que no son tuyas. No es un fix, pero protegé la exposición mientras actualizás.
Opcional pero urgente: Si tu sitio lleva años sin actualizar y no sabés cuándo empezó la vulnerabilidad, asumí exposición. Rotá credenciales: contraseña de autores, API keys, tokens de terceros. Si usás Google Search Console, revisa acceso anómalo. Si WooCommerce, auditá pedidos. Paranoia calculada.
Auditoría y detección: cómo saber si fuiste atacado
Primero, verificá el plugin: ¿está instalado? Dashboard de WP → Plugins. Busca Export All URLs. Si está ahí inactivo, es un candidato a explotación anterior.
En los logs, buscá:
- Requests a
/wp-content/plugins/export-all-urls/sin que hayas usado el plugin (archivos access.log si usás Apache, logs de Nginx si usás Nginx). - Generación de archivos
export_*.csven/wp-content/uploads/que no reconocés. Dates de creación raras (ej: 3am, cuando nadie está trabajando). - Activity logs de Wordfence (si lo tenés): busca «export» o «sensitive data».
- Requests masivos desde una sola IP a esa ruta: patrón de automatización.
Herramientas que ayudan: WPScan (escanea plugins vulnerables), Wordfence (tienes logs en el dashboard), grep manual en access logs. Si no encontrás nada raro, quizás fuiste afortunado. De todas formas, actualiza.
Alternativas seguras a Export All URLs
Si necesitás exportar URLs regularmente, tenés opciones que no tienen este agujero:
| Alternativa | Cómo funciona | Seguridad |
|---|---|---|
| Export manual (WP admin) | Menú Tools → Export. Solo admin logueado puede hacerlo. Descarga XML. | Muy segura — requiere autenticación |
| WP CLI (si tenes terminal) | wp post list --format=csv. Corre localmente o vía SSH. | Muy segura — acceso SSH solamente |
| Google Search Console API | Baja URLs que Google indexó. Requiere API key. | Segura — con autenticación OAuth |
| Screaming Frog (herramienta externa) | Crawlea tu sitio, exporta todas las URLs que encuentra. | Segura — corre en tu máquina |
| Rank Math | Plugin SEO que tienes un módulo de export. Autentica. | Segura — requiere admin logueado |
La regla: cualquier cosa que requiera estar logueado es más segura que un plugin que deja la puerta abierta. Export All URLs parchó, pero si podés evitarlo, mejor. Cubrimos ese tema en detalle en automatización de procesos WordPress.
Errores comunes al parchear o responder
Error 1: «Actualizaré el plugin pero no reviso si fue atacado.» Equivocado. Actualizar es lo mínimo. Si el plugin estuvo vulnerable 2 años, quizás ya fue explotado. Revisa logs, audita accesos, rota credenciales si es necesario.
Error 2: «Si desactivo el plugin, listo.» Desactivar protege el futuro, no el pasado. Un atacante ya pudo haber descargado tus datos hace meses. La desactivación es un parche temporal hasta actualizar. Nuestros colegas de donweb.news lo analizan en vulnerabilidades críticas documentadas.
Error 3: «Esto solo afecta a sitios big.» Al contrario. Un atacante escanea millones de sitios en paralelo. Sitios chicos sin monitoring son más fáciles de explotar porque nadie revisa los logs. El tamaño no importa, la negligencia sí. Mirá también reducción de plugins en WordPress.
Esto se conecta con Export All URLs Plugin: exposición de datos sensibles sin au, donde detallamos vulnerabilidades similares.
Para ampliar sobre este tipo de exposiciones, consultá nuestro análisis en Export All URLs Plugin: exposición de datos sensibles sin au.
Si querés profundizar en esto, tenemos un análisis sobre Export All URLs Plugin: exposición de datos sensibles sin au que vale la pena revisar.
Profundizamos en este problema en Export All URLs Plugin: exposición de datos sensibles sin au.
Profundizamos en este riesgo en nuestro artículo sobre Export All URLs Plugin: exposición de datos sensibles sin au.
Profundizamos en esto en nuestro artículo sobre Export All URLs Plugin: exposición de datos sensibles sin au.
La misma onda podés verla en nuestro análisis del Export All URLs Plugin: exposición de datos sensibles sin au.
Si querés entrar en detalle, mirá Export All URLs Plugin: exposición de datos sensibles sin au.
Un caso casi idéntico pasó con Export All URLs Plugin: exposición de datos sensibles sin au, donde los datos quedaban expuestos sin protección alguna.
Mirá el caso del Export All URLs Plugin: exposición de datos sensibles sin au, que fue un desastre de seguridad.
Tenemos un análisis detallado de este tipo de vulnerabilidades en Export All URLs Plugin: exposición de datos sensibles sin au.
Esto mismo lo cubrimos en profundidad en Export All URLs Plugin: exposición de datos sensibles sin au.
Si querés saber más, tenemos un artículo dedicado a Export All URLs Plugin: exposición de datos sensibles sin au.
Si querés profundizar, tenemos un artículo sobre Export All URLs Plugin: exposición de datos sensibles sin au que cubre el tema en detalle.
Esto se relaciona con Export All URLs Plugin: exposición de datos sensibles sin au, donde tratamos un riesgo de seguridad similar.
Esto se conecta con el Export All URLs Plugin: exposición de datos sensibles sin au, donde cubrimos el tema en detalle.
Para ampliar, acá cubrimos el Export All URLs Plugin: exposición de datos sensibles sin au en profundidad.
Si te interesa el tema, documentamos un caso similar en este artículo sobre el Export All URLs Plugin: exposición de datos sensibles sin au.
Tenemos un análisis completo sobre esto en Export All URLs Plugin: exposición de datos sensibles sin au.
Tocamos este tema más en detalle en Export All URLs Plugin: exposición de datos sensibles sin au.
Un ejemplo de esto lo ves en nuestro análisis de Export All URLs Plugin: exposición de datos sensibles sin au.
Preguntas Frecuentes
¿Qué es CVE-2026-2696 exactamente?
Es un identificador único para esta vulnerabilidad específica: acceso sin autenticación al endpoint de exportación del plugin Export All URLs. La base de datos NIST la registra con ese código para que todos los actores de seguridad (investigadores, vendedores de firewalls, equipo de tu hosting) sepan de qué se habla.
¿Cuál es la versión segura de Export All URLs?
La 5.1 en adelante. Fue parchada el 1 de abril de 2026. Si ves que tu dashboard de plugins ofrece actualización a 5.1 o superior, aceptala sin dudarlo. Las versiones 4.0 a 5.0 tienen el agujero. Más contexto en feature plugins de WordPress.
¿Es seguro descargar URLs desde WordPress manualmente?
Sí, si lo haces logueado como admin. Herramientas como WP CLI o Google Search Console API son seguras porque requieren autenticación real. El problema de Export All URLs era que saltaba ese requisito.
¿Puedo usar Export All URLs si lo limito con un firewall?
Podés bloquear requests a esa ruta desde IPs externas, pero es parche temporal. La solución real es actualizar. Si ese parche firewall falla por algún motivo, quedás expuesto de nuevo.
¿Qué pasa si nunca tuve instalado Export All URLs?
Nada. Este CVE solo afecta quien lo tenía activo o instalado. Si mirás tu listado de plugins y no está, estás limpio de este agujero. Capaz que tenés otros, pero este no te toca.
Conclusión
CVE-2026-2696 es un recordatorio de lo fácil que es dejar un agujero en WordPress sin darte cuenta. Un plugin popular, código que no valida, datos sensibles expuestos. Pasaron meses antes de que alguien lo reportara formalmente. Podrían haber pasado años.
Tu movida es tres cosas: primero, actualizar a Export All URLs 5.1+ (o desactivar si no lo necesitás). Segundo, revisar logs para ver si hubo acceso anómalo. Tercero, si sospechás exposición, rotar credenciales. No es complicado. No toma horas. La negligencia es lo que cuesta caro.