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-2024-23724 — Exploit proof-of-concept per CVE-2024-23724 in Ghost CMS, che dimostra l'escalation dei privilegi tramite caricamento di immagine del profilo SVG dannosa. | Kitploit
Strumenti/GitHubGitHub/youssefdds/cve-2024-23724
Analisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebCTFPenetration TestingApprendimento e Formazione
GitHubyoussefdds/cve-2024-23724

CVE-2024-23724

Exploit proof-of-concept per CVE-2024-23724 in Ghost CMS, che dimostra l'escalation dei privilegi tramite caricamento di immagine del profilo SVG dannosa.

Vedi Repository
21 anno 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

Installazione

Installazione automatica (consigliata)

Per testare la vulnerabilità, abbiamo bisogno di due account: un account con il ruolo di amministratore (proprietario) e un account con il ruolo di collaboratore. In Ghost CMS, devi prima accedere al pannello di amministrazione per creare l'account proprietario, poi, da questo account, invitare un collaboratore affinché crei il proprio account. Tuttavia, in Ghost, l'unico modo per invitare un collaboratore è inviare un link di invito via e-mail, il che richiede un servizio di consegna delle e-mail per inviare il messaggio all'account del collaboratore. Per semplificare le cose, abbiamo creato un account Mailgun, aggiunto un collaboratore a Ghost e poi creato un file di dump del database nello stato in cui lo avevamo. Nella nostra configurazione Docker Compose, ci assicuriamo prima di tutto di ripristinare il database dal dump prima di avviare Ghost, così non avrai bisogno di un servizio di consegna delle e-mail per testare questa vulnerabilità. Tuttavia, se desideri iniziare con un'installazione pulita e non utilizzare il dump del database fornito, puoi usare il Docker Compose nella cartella manual-setup per avviare un'installazione Ghost pulita. Di seguito troverai i passaggi per configurare Mailgun (un servizio di consegna delle e-mail che abbiamo utilizzato) e farlo funzionare con Ghost. Per questa installazione, ecco le credenziali di amministratore e collaboratore da utilizzare per accedere:

  • Amministratore:
    • Email: [email protected]
    • Password: ZtXfMq2FaRHGm@!
  • Collaboratore:
    • Email: [email protected]
    • Password: ZtXfMq2FaRHGm@!

Installazione manuale con Mailgun

Per iniziare, devi creare un account Mailgun. Una volta creato il tuo account, ottieni le tue credenziali SMTP. Dopo aver ottenuto le credenziali, inseriscile nel file config.development.json seguendo lo stesso formato mostrato nel file config.example.json.

Ecco una guida passo passo:

  1. Crea un account Mailgun su Mailgun.
  2. Vai alla sezione delle credenziali SMTP nel tuo pannello di controllo Mailgun.
  3. Copia le tue credenziali SMTP.
  4. Duplica il file config.example.json e rinominalo in config.development.json.
  5. Inserisci le tue credenziali SMTP nel file config.development.json. Questo garantirà che il tuo ambiente di sviluppo sia configurato correttamente per inviare e-mail tramite Mailgun.
  6. Se hai creato un account Mailgun, il dominio Mailgun che avrai per impostazione predefinita è un dominio sandbox, il che significa che devi autorizzare l'email del collaboratore che desideri utilizzare per ricevere il link di invito del collaboratore; puoi farlo nel pannello di controllo Mailgun sotto (barra laterale sinistra) Send > Sending > Overview. Infatti, Mailgun invierà e-mail solo ai destinatari autorizzati quando utilizzi un dominio sandbox. Quando aggiungi un destinatario autorizzato, riceverai un'email per confermare l'autorizzazione. Dopo aver confermato l'autorizzazione, Ghost può ora inviare e-mail a questo destinatario tramite Mailgun.
  7. Dopo aver creato un account Owner in Ghost visitando http://localhost:3001/ghost e aver aggiunto l'email del collaboratore all'elenco dei destinatari autorizzati in Mailgun, ora puoi inviare un link di invito al collaboratore a questa email con Mailgun da http://localhost:3001/ghost/#/settings/staff.
  8. Ora puoi utilizzare il link di invito ricevuto nell'email per creare un account collaboratore. Dopo di che, avrai una configurazione identica a quella che utilizziamo noi con il ripristino del database.

Come testare l'attacco

Puoi avviare l'installazione che hai scelto utilizzando il seguente comando:

root@kitploit:~
docker-compose up

Per testare l'attacco, segui i seguenti passaggi:

  1. Genera la foto del profilo SVG malintenzionata utilizzando lo script generate-malicious-svg.py. Per farlo, esegui il seguente comando sostituendo [USERNAME] e [PASSWORD] con le credenziali dell'account collaboratore che hai creato:
root@kitploit:~
python generate-malicious-svg.py -u [USERNAME] -p [PASSWORD] -t http://localhost

Per l'installazione automatica, il comando è:

root@kitploit:~
python generate-malicious-svg.py -u [email protected] -p ZtXfMq2FaRHGm@! -t http://localhost

Questo comando genera un file SVG dannoso chiamato tenant-takeover.svg nella directory corrente.

  1. Accedi all'interfaccia di amministrazione di Ghost utilizzando le credenziali dell'account collaboratore che hai creato. Per farlo, visita http://localhost:3001/ghost e accedi con le credenziali dell'account collaboratore.

  2. Vai alla pagina di modifica del tuo profilo cliccando sulla tua foto del profilo in basso a sinistra dello schermo, poi cliccando sul pulsante "Your profile".

  3. Clicca sull'icona del profilo per cambiare la tua foto del profilo. Seleziona il file SVG dannoso che hai generato al passaggio 1.

  4. Salva le modifiche cliccando sul pulsante "Save & close". Puoi aggiornare la pagina per verificare che la foto del profilo sia stata cambiata.

  5. Ora puoi disconnetterti dall'account collaboratore e accedere all'account amministratore. Sotto http://localhost:3001/ghost/#/settings/staff?tab=contributors, puoi vedere che la foto del profilo del collaboratore è stata cambiata. Se fai clic con il tasto destro sulla foto del profilo e apri l'immagine in una nuova scheda, l'attacco verrà innescato. Ora puoi tornare a http://localhost:3001/ghost/#/settings/staff e vedrai che il collaboratore è ora proprietario del blog e tu sei diventato un amministratore.

🎥 Video Esplicativo

Abbiamo realizzato un video che descrive in dettaglio l'intero processo e i passaggi necessari per implementare la CVE. Questo video funge da guida visiva per comprendere meglio il nostro approccio e le azioni eseguite.

Link al video: Clicca qui per guardare il video

Non esitare a consultare questo video per una panoramica completa del progetto e dei passaggi tecnici seguiti.

Scarica lo strumento