La guerra entre bandas de ransomware ha dado un vuelco inesperado: uno de los grupos más temidos, Clop, ha sido víctima de una intrusión que demuestra que ningún activo digital está a salvo, ni siquiera el de los criminales más experimentados. El grupo ShinyHunters logró explotar un fallo crítico de path traversal en Grav CMS, identificado como CVE-2026-42608, para tomar el control del sitio de filtraciones de Clop, robar sus claves privadas y exigir un rescate a los propios extorsionadores. Este incidente no solo supone una humillación operativa para Clop, sino que expone una vulnerabilidad técnica que afecta a miles de sitios web en todo el mundo, especialmente aquellos que ejecutan versiones antiguas de Grav.
ShinyHunters asesta un golpe directo al corazón de la operación de Clop
A principios de mes, el sitio oscuro donde Clop publica los datos robados a sus víctimas amaneció con un aspecto muy distinto al habitual. El logo de Umbreon, el Pokémon emblema de ShinyHunters, ocupaba toda la pantalla. Lejos de ser un simple acto de vandalismo digital, la intrusión fue profunda. Según la información verificada de forma independiente, ShinyHunters logró extraer el código fuente del servidor comprometido, los plugins de Grav, los registros del servidor y, lo que es más grave, las claves privadas del servicio onion que Clop utilizaba para alojar su sitio de filtraciones.
La posesión de estas claves representaba una amenaza existencial para el grupo ruso, ya que permitiría a ShinyHunters suplantar su identidad en la red Tor o monitorizar el tráfico destinado a Clop. ShinyHunters, fiel a su modus operandi, publicó una exigencia de rescate en su propio sitio de filtraciones, amenazando con hacer públicos todos los archivos si Clop no accedía a pagar.
La respuesta de Clop no se hizo esperar. La banda anunció una nueva dirección onion y confirmó que el dominio antiguo dejaría de funcionar definitivamente. En sus declaraciones, Clop intentó minimizar el impacto, negando cualquier negociación con ShinyHunters y asegurando que el servidor atacado carecía de datos financieros o información operativa sensible. «No los conocemos, nunca hemos trabajado con ellos y actualmente no estamos en contacto», afirmó Clop. Sin embargo, el hecho de que ShinyHunters eliminara silenciosamente a Clop de su propio sitio de filtraciones horas después sugiere que, en efecto, se produjeron negociaciones o un pago, lo que contradice abiertamente la versión oficial del grupo ruso.
CVE-2026-42608: la vulnerabilidad de path traversal que permitió el ataque
El punto central de la intrusión no fue una compleja ingeniería social ni un ataque de día cero, sino una vulnerabilidad de path traversal (salto de directorios) sin autenticación, rastreada como CVE-2026-42608, que afecta al núcleo de Grav CMS. Lo que hace especialmente relevante este caso es que tanto el equipo de Grav como los propios atacantes compartieron detalles técnicos, proporcionando una visión excepcional del modus operandi.
¿Cómo se explota este fallo en Grav?
ShinyHunters reveló que el servidor de Clop ejecutaba Grav CMS 1.7.43. La vulnerabilidad residía en el manejo del parámetro __unique_form_id__codecode durante el proceso de subida de archivos mediante formularios. El software construía una ruta temporal en el servidor para almacenar el archivo utilizando valores proporcionados por el usuario sin validarlos previamente como componentes seguros del sistema de archivos.
La ruta temporal se generaba de la siguiente forma:
tmp/forms/<session_id>/<unique_id>/
prepre
Al inyectar secuencias de salto de directorio en el parámetro __unique_form_id__codecode, como por ejemplo ../../../shhqcodecode, el atacante podía forzar a Grav a crear un directorio de subida en una ubicación completamente diferente. Esto permitía escribir el archivo malicioso en cualquier punto dentro de la instalación de Grav, lo que abre la puerta a la ejecución remota de código al sobrescribir archivos del sistema o plantillas.
El problema del backport en la rama 1.7
Grav confirmó la precisión de los detalles proporcionados por ShinyHunters. La compañía explicó que la falla fue reportada de forma privada y corregida en Grav 2.0 (2.0.0-beta.2) a principios de año, con el aviso de seguridad publicado el 27 de abril. La corrección introdujo una función sanitizeId()codecode que solo acepta identificadores que coincidan con una lista de permitidos:
[A-Za-z0-9,_-]{1,64}
prepre
El punto crítico que expuso a Clop, y que potencialmente afecta a miles de sitios web, es que la corrección no fue retroportada a la rama estable anterior, Grav 1.7. Mientras que los usuarios de Grav 2.x estaban protegidos desde hacía meses, los equipos que, como Clop, habían optado por quedarse en la versión 1.7 por motivos de estabilidad, compatibilidad o simplemente por desconocimiento, permanecían completamente vulnerables.
Grav reconoció explícitamente este vacío de seguridad: «El problema era la línea 1.7. Grav 2.0 es la versión mayor actual, pero muchos sitios aún están en 1.7, y esa corrección no se había retroportado». Tras la divulgación del ataque, el equipo de Grav actuó con rapidez para liberar la versión 1.7.53.4, que incluye la corrección para la rama anterior. La compañía fue clara al señalar que la vulnerabilidad reside en el núcleo de Grav, no en el plugin Form, por lo que la versión del plugin instalado es irrelevante a la hora de determinar la exposición del servidor.
¿Qué versión de Grav es vulnerable a CVE-2026-42608?
Todas las versiones de Grav 1.7.x anteriores a la 1.7.53.4 son vulnerables a este ataque de path traversal. Las versiones de Grav 2.0 y superiores no están afectadas, ya que incluyen la función de sanitización sanitizeId()codecode que valida la entrada del parámetro __unique_form_id__codecode. Es indiferente la versión del plugin Form que se tenga instalada; la vulnerabilidad reside en el núcleo de Grav. Cualquier organización que ejecute Grav 1.7.x debe actualizar inmediatamente a la versión 1.7.53.4 o planificar una migración a Grav 2.x.
Implicaciones para la empresa y la cadena de suministro del código abierto
El caso de Clop es una lección de manual de seguridad informática aplicada a la vida real. Una de las bandas de ransomware más temidas y técnicamente capaces fue víctima de su propia negligencia operativa. El servidor público de filtraciones, un activo crítico para su modelo de negocio, ejecutaba un software desactualizado que no había recibido parches de seguridad durante meses. Para los administradores de sistemas y CISO en España y América Latina, el incidente subraya la importancia de auditar las aplicaciones CMS y monitorizar no solo las versiones principales, sino el estado de los parches de seguridad en las ramas estables que utilizan.
Grav, aunque menos popular que WordPress, tiene una base de usuarios significativa en el mundo hispanohablante por su velocidad y su enfoque en archivos planos. Muchas organizaciones lo utilizan para sitios corporativos, documentación y portales internos. Si su organización utiliza Grav, este incidente debe ser una llamada de atención para verificar la versión instalada y aplicar el parche correspondiente. La ventana de vulnerabilidad entre la corrección en la rama principal y el backport a la rama estable creó un riesgo evitable que finalmente fue explotado.
El precedente estratégico: la extorsión entre bandas remodela el riesgo
Más allá de la vulnerabilidad técnica, el incidente reconfigura el tablero de la ciberdelincuencia. La intrusión de ShinyHunters en la infraestructura de Clop demuestra que el mundo del ransomware no es un club cerrado. Las bandas se atacan entre sí, ya sea por motivos de reputación, para robar datos de víctimas o simplemente por la propia dinámica del crimen organizado. Para las empresas víctimas de Clop, este incidente introduce una nueva variable de riesgo: sus datos, ya comprometidos, han cambiado de manos potencialmente, pasando del control de Clop al de ShinyHunters, lo que podría acelerar su filtración o venta al mejor postor.
El hecho de que ShinyHunters eliminara a Clop de su propio sitio de filtraciones sugiere que, tras bambalinas, la extorsión funcionó. Si Clop pagó, habrá sentado un precedente peligroso para su propia credibilidad dentro del hampa digital. La confianza de los afiliados —los socios que utilizan su infraestructura para lanzar ataques— es un activo intangible pero vital para cualquier operación de ransomware. Un grupo que no puede proteger su propio servidor de filtraciones difícilmente inspirará la confianza necesaria para manejar datos robados de alto valor.
En un ecosistema donde la seguridad se mide por el eslabón más débil, Clop ha descubierto que su propio eslabón era una instalación de Grav sin parchear. La lección es universal: la higiene digital básica, como la actualización puntual de un CMS y la aplicación de backports de seguridad, puede ser la diferencia entre mantener el control de tu infraestructura o convertirte en la próxima víctima expuesta en un sitio de filtraciones. Para los defensores, la pregunta que queda sobre la mesa es si su organización está repitiendo el mismo error que llevó a una de las bandas de ransomware más activas del planeta a perder su guarida digital.