-: Finora abbiamo visto come possiamo utilizzare
un servizio con una
password predefinita o un servizio che non è stato
configurato correttamente o un servizio fornito con una
backdoor per ottenere pieno accesso al computer di destinazione.
Abbiamo anche visto come Metasploit utilizzi di base
utilizzando il, per connettersi a una backdoor
installata sul servizio FTP.
Oggi avremo uno sguardo più
avanzato su Metasploit e vedremo come lo usiamo per eseguire la
vulnerabilità che esiste in un determinato servizio.
È una vulnerabilità legata all'esecuzione di codice che ci darà
pieno accesso anche al computer di destinazione.
Quindi torniamo ai nostri risultati qui con Nmap e faremo la stessa
cosa che facciamo da un po ',
copiamo il nome del servizio e
vediamo se ha delle vulnerabilità.
Quindi per oggi stiamo dando un'occhiata a questa particolare porta, 139,
che ha un server Samba versione 3. X.
Quindi 3. niente davvero.
Quindi andremo su
Google proprio come abbiamo
fatto nei video precedenti e cercheremo Samba
3. X exploit.
Ora, come puoi vedere, c'è un numero di risultati.
Quello a cui siamo interessati, quelli
che provengono da Rapid 7 perché, come ho
già detto, queste sono le persone che producono Metasploit,
quindi gli exploit che vedi lì possono essere utilizzati tramite Metasploit.
Quindi abbiamo due esempi
qui, ora ho provato entrambi.
Il primo non funziona, quindi c'è un
po 'di tentativi ed errori in questo e il secondo
è l'utente Maps Script.
È una vulnerabilità legata all'esecuzione di comandi, come puoi vedere qui.
Quindi il nome della vulnerabilità è questo.
Quindi è la stessa cosa che
abbiamo usato prima con la backdoor malvagia nel servizio FTP.
Questo è solo il nome diverso che useremo.
Quindi vado su Metasploit e ho già
eseguito la console MSF, quindi puoi
vedere che la console è in esecuzione qui per me.
Quindi farò un uso, come abbiamo fatto
prima, ieri e poi inserirò il nome dell'exploit che
voglio usare.
Quindi la prossima cosa che facciamo di solito è mostrare le
opzioni come abbiamo fatto ieri.
Quindi mostrerò le opzioni.
Quindi usare questi exploit è sempre più o meno la
stessa, l'unica differenza sono le opzioni che puoi impostare
per ogni exploit.
Quindi usi sempre e poi metti il nome dell'exploit e
poi fai uno spettacolo opzioni per vedere cosa puoi cambiare per
lavorare con questo exploit.
Quindi, in futuro, probabilmente otterrai exploit diversi da
quello che ho.
Pertanto, ogni volta che si desidera eseguire
un exploit, si utilizza un nome di exploit e quindi si mostrano le
opzioni per vedere le opzioni che si desidera
configurare ma usare gli exploit e impostare le opzioni
e eseguirle è sempre lo stesso.
Quindi ti sto mostrando alcuni esempi che
dovrebbero coprire praticamente tutto ciò che vorresti fare in futuro.
Quindi, ancora una volta, dobbiamo impostare l'host R che è l'IP
del computer di destinazione e lo faremo come abbiamo
fatto prima.
Come ho detto, l'impostazione delle opzioni è sempre la stessa.
Quindi imposteremo R-HOST e poi
inseriremo l'IP del computer target che
è 10. 20. 14. 204.
Quindi, esattamente come abbiamo fatto prima, stiamo usando il
set per impostare un'opzione che è l'R-HOST.
Quindi faremo le nostre opzioni di spettacolo.
E come puoi vedere ora, l'R-HOST è stato impostato correttamente.
Ciò che dobbiamo fare ora è, qui è dove le
cose differiscono dalla lezione precedente.
Nella lezione precedente abbiamo usato una backdoor che era già installata
sul computer di destinazione, quindi tutto ciò che dovevamo
fare era connetterci alla backdoor e
quindi potevamo eseguire qualsiasi comando, qualsiasi comando Linux sul computer di destinazione.
Nel video di oggi, il computer di destinazione non
ha una backdoor, ha un normale programma che ha un buffer
overflow o una vulnerabilità legata all'esecuzione di codice.
Quindi il programma non ha alcun codice che ci consente di
eseguire comandi Linux, ha alcuni difetti che ci consentiranno di eseguire un
piccolo pezzo di codice.
Questi piccoli pezzi di codice sono chiamati payload.
Quindi, ciò che dobbiamo fare, dobbiamo creare un payload
e quindi eseguirlo sul computer di destinazione utilizzando
la vulnerabilità che abbiamo riscontrato.
Quel pezzo di codice ci permetterà di fare cose diverse.
Quindi il payload è ciò che ci consente di fare
cose che ci sono utili.
Ora il payload potrebbe permetterci di eseguire comandi Linux e
ci sono altri tipi di payload che vedremo
in futuro.
Quindi, per vedere che i payload che puoi usare
con questo particolare exploit, tutto ciò che devi fare è
eseguire i payload di show.
E questi sono diversi tipi di payload del sistema operativo che è possibile utilizzare.
Ora ne parlerò di nuovo, quindi i payload sono
piccoli pezzi di codice che verranno eseguiti sul computer di destinazione una
volta che la vulnerabilità è stata sfruttata.
Quindi, quando sfruttiamo la vulnerabilità, il codice che
selezioneremo qui verrà eseguito e, a seconda del tipo
di payload che scegliamo, quel payload farà qualcosa che
ci è utile.
Quindi, in questo momento puoi vedere che tutti i payload
sono cmd, quindi è l'abbreviazione di comando, quindi ti
consentono di eseguire comandi sul computer di destinazione, proprio come i comandi Linux.
E tutti funzionano solo su Unix e va bene
perché il nostro obiettivo è Linux.
E ci sono due tipi principali, ci sono
payload vincolanti e payload inversi.
I payload di bind, tutto ciò che fanno è aprire una porta
sul computer di destinazione e quindi ci connettiamo a quella porta.
Al contrario, fanno il contrario.
Quindi aprono una porta sulla mia macchina e poi si
collegano dal computer di destinazione alla mia macchina.
Questo è utile perché il contrario ci consente di bypassare i firewall,
quindi il firewall filtrerà tutte le connessioni che vanno al computer di destinazione
ma se il computer di destinazione si connette a
me e non ho un firewall, allora sarò
in grado di bypassare il firewall.
Quindi userò il cmd Unix reverse o
in realtà userò il cmd Unix reverse netcat.
L'ultima parte di questi payload è il programma e lo strumento
di ordinamento linguistico che verrà utilizzato
per facilitare la connessione.
Quindi ad esempio possiamo vedere che ci sono
payload scritti in perl in ruby o in python, php o usare
un netcat che è uno strumento che consente connessioni tra computer.
Quindi questo è quello che userò e lo userò
nello stesso modo in cui usi un exploit.
Quindi dirò, in realtà mi dispiace, lo userò usando
il comando set.
Quindi, allo stesso modo in cui usi
set e option, imposteremo il payload, quindi, proprio come un'opzione, il nome
del payload che abbiamo appena scelto.
Ora farò uno spettacolo per vedere se ci sono altre
opzioni che devo impostare.
E sì, perché abbiamo scelto un payload ora ci
sono più opzioni.
Quindi c'è un'opzione chiamata L-HOST
ed è l'indirizzo di ascolto che è il mio indirizzo.
Quindi avrò il mio indirizzo IP usando if config.
E il mio indirizzo è 10. 20. 14. 203.
Quindi chiuderò
questo e imposterò L-HOST.
Quindi è come nello stesso modo in cui abbiamo impostato
R-Host prima, abbiamo impostato L-HOST.
Fare 10.
20.
Quindi, prima di impostare R-HOST per impostare questa opzione, ora
impostiamo L-HOST per impostare questa particolare opzione.
Quindi set è davvero semplice, imposta, inserisci il nome dell'opzione
e quindi il valore su cui vuoi impostarlo.
Poi mostrerò le opzioni e ora
tutto sembra a posto.
Quindi stiamo usando questo exploit, R-HOST è impostato su questo, il
che va bene.
E poi L-HOST è impostato su questo, il che è perfetto.
E poi puoi anche impostare la
porta su cui ascolterai sul tuo attuale computer.
Puoi effettivamente impostarlo su 80 se
lo desideri, questa è la porta utilizzata dai browser web.
Quindi, se si imposta L-PORT su 80, il computer di destinazione
tenterà di connettersi utilizzando la porta 80 che non viene mai filtrata sui
firewall perché è la porta utilizzata dai browser Web
o dai server Web.
Quindi ogni volta che accedi a un sito web accedi effettivamente alla porta 80
su quel sito web.
Quindi, se apri la porta 80 sul tuo computer e la
destinazione si connette a te su 80, il firewall penserà
che la destinazione sta solo navigando in Internet.
Non lo farò ora perché ho un web server in esecuzione
sulla porta 80 e questo andrà in conflitto.
Quindi imposterò L-PORT su
555 solo per esempio, solo per vedere che puoi cambiare qualsiasi
opzione usando lo stesso modo in cui è impostato,
il nome dell'opzione e quindi il valore.
Quindi mostrerò di nuovo le opzioni.
E come puoi vedere, questo è stato modificato in 5555
e farò exploit per eseguire l'exploit.
Ora, come puoi vedere,
mi sta dicendo che la prima sessione è stata aperta.
E la connessione è tra questo dispositivo e questo dispositivo.
Qual è il bersaglio e il mio dispositivo.
Quindi farò un pwd e,
o farò un id.
Vedrai che sono root, quindi faccio uname -a.
Vedrai che sono nella macchina Metasploitable e se
lo faccio, sarò in grado di elencare i file e così via.
Posso usare qualsiasi comando Linux, proprio come abbiamo fatto prima
negli altri video.