Abbiamo trattato un avvio su una macchina root in cui abbiamo iniziato con una scansione Nmap per scoprire diverse porte aperte e servizi in esecuzione come server FTP, server web Apache e condivisione file NFS. Montando la condivisione file NFS sul nostro computer locale abbiamo scoperto credenziali in testo semplice che ci hanno consentito di accedere al server FTP.

Successivamente abbiamo scaricato i file di testo dal server FTP, uno includeva una nota dell'amministratore e l'altro includeva decine di password. Poiché la limitazione della velocità è implementata sul server, non abbiamo eseguito la forza bruta sul modulo di accesso trovato nella pagina Web, ma abbiamo scoperto che l'ID sessione PHP viene calcolato utilizzando una combinazione di hash base64 e md5 che includeva il nome utente e la password del server. utente connesso.

Abbiamo creato uno script Python che scorre l'elenco delle password che abbiamo trovato in precedenza, calcola la somma md5 della password, la codifica con base64 per trovare l'ID di sessione e lo prova con la pagina di amministrazione.

Ciò ci ha permesso di trovare la password corretta dell'utente amministratore insieme all'ID di sessione. Successivamente abbiamo ottenuto una shell inversa concatenando i comandi sulla pagina di stato del server e successivamente abbiamo ottenuto l'escalation dei privilegi sfruttando un percorso di libreria configurato in modo errato tramite sudo con il processo Apache.

Ottieni note OSCP

Bandiere

Qual è il flag utente?

Qual è il flag di root?

Trascrizione video
Cosa sta succedendo ragazzi? Bentornato a questo video? Stavano effettuando il dirottamento da Troy Aikman, una macchina recentemente rilasciata sulla piattaforma. Ora, in questa macchina, esamineremo contemporaneamente i test di penetrazione della replica. Effettueremo l'escalation dei privilegi di Linux per recuperare due flag è un flag e sarebbe flag, quindi iniziamo con la scansione nmap come facciamo sempre e scopriamo che ce ne sono 123 intorno a 42.
Fife porte aperte FTP è H abbiamo un server web in esecuzione. È solo che abbiamo una condivisione di file di Office in esecuzione sulla macchina, il che significa che questa potrebbe essere la prossima macchina e sì, anche questa non è una faccia. Quindi si stima che questa macchina esegua un sistema operativo Linux.
Quindi i passaggi successivi si baseranno su ciò che abbiamo trovato durante la posta in arrivo in modo da poter andare avanti e scoprire il server web. Vediamo graditi ospiti da queste parti in fase di sviluppo. Questa è la pagina di destinazione. Vediamo qui le funzioni di coppia. Abbiamo Amministrazione, a cui non abbiamo accesso per accedere e registrarci. Quindi questo è pronto per un test utente test 123. C'è uno due tre.
E ora possiamo accedere.
Ok, ancora non abbiamo accesso alla pagina di amministrazione. Va bene, per ora è tutto per la pagina web. Se torni al terminale e iniziamo a fare Buster, allora vai Buster. Scopriamo prima dove sono gli elenchi di parole in questa macchina. Quindi strumenti, andiamo strumenti.

E poi passiamo agli elenchi di parole.

Direttore di Ester. Ok, quindi abbiamo queste Acque qui. Quindi vai a Buster dir e poi alla scarpa, quindi torneremo indietro.
Tieni l'ordine qui. Ho rimosso l'indice?
E poi diremo che useremo vediamo quale elenco di parole dovremmo usare qui. Quindi Dash W. Utilizzeremo il testo grande.
Va bene, quindi lasceremo stare la cosa per un po'. E sì, è finito. Quindi abbiamo un regista che ha scoperto lo stato del server Dash. Andiamo avanti e scopriamo di cosa si tratta. Quindi, poiché siamo già bloccati, speriamo che questa pagina si apra.
E non abbiamo il permesso di accedere a questa pagina.
Ok, quindi per il server web è tutto, per ora non c'è niente da fare, ma una cosa da notare è se facciamo clic su Ispeziona e controlliamo i cookie o l'archiviazione e da qui. Lo copieremo.
Come potete vedere ragazzi, questo è un base64. Ok, ora, una volta decodificato questo in testo semplice, vediamo che è composto da un nome utente. Questo è quello con cui ci siamo registrati e questo è un hash md5 ora se andiamo a una stazione di servizio e calcoliamo E in effetti ragazzi, questo è l'hash che questa casa corrisponde a una password in testo semplice che abbiamo già utilizzato. Ora. Ciò significa che la formula per creare il cookie è composta dall'hash del nome utente e della password separati da due punti e include base64. Lo terremo a mente.
Ora torniamo indietro e esaminiamo il file di interfaccia Sheriff. L'abbiamo trovato prima. Quindi CD Bugsy club più profondo e mostra Mount Dash e
prendi l'indirizzo IP
quindi abbiamo una quota. Ovviamente. Avremo bisogno di montarci. Vediamo qui nei miei appunti la ricerca di Mount.
Quindi abbiamo questo.
Vashti e Fs. E questo non è un atto. Quindi andiamo avanti e digitiamolo per primo. Creiamo una directory montata. E poi diremo Mount St. E la prima quota 2399

c'è una directory specificata in cui riceveremo i montaggi, che è montata. Quindi LS quindi abbiamo mount. Montatelo qui e andate a montarlo.

E permesso negato. Vediamo perché così montati i permessi utente. La corrispondenza corrisponde a un utente con ID è 1003 e il gruppo è un ID di gruppo è 1003 ora l'utente root con cui siamo bloccati. Non ha queste idee. Quindi la soluzione a questo problema è creare un utente con ID 1003 e GID 1003. Andiamo avanti, utente. C'è un trattino. Voglio farne tre e poi dire: ciao Dirk.
Sembra che tu abbia un problema fiscale. Quindi vogliamo specificare l'uid. Quella è una scarpa? Ho un problema fiscale. Quindi vogliamo specificare l'uid. Quella è una scarpa?

Ok, questo è quello che abbiamo fatto. Oh, abbiamo usato una scarpa timida, molto riservata e 1300. Ok, password Isaac. Creiamo una password per l'utente. Quindi lascia che la password sia uguale al nome utente. E ora abbiamo creato l'utente. Quindi Sue è stato montato il cd di Jack e poi LS e siamo passati con successo alla directory. Iniziamo la staffetta. Quindi abbiamo una nota qui per i dipendenti, ricevi il testo per i dipendenti e puoi assaggiare il nome utente e la password per il server FTP. Quindi andremo avanti e accediamo con questo, quindi esci. e poi Utente FTP SFTP in Nome o server non noti?

Proviamo questo. Utente FTP, la password non funziona. Copiamolo di nuovo.
inoltrare
okay, ci siamo chiusi almeno in uno chalet e abbiamo questi file con l'elenco delle password e dall'amministratore. Scarichiamo questi file e riceviamo dall'amministratore il testo.
e ottenere le password
testo dell'elenco di sottolineatura
Va bene. Ora abbiamo questi Cinque Ragazzi. Penso che siano ricercati.
Va bene. Sì, questi sono i file che abbiamo appena scaricato. Andiamo avanti e diamo un'occhiata alla nota. Ok dall'amministratore.
Quindi a tutti i dipendenti, questo è il discorso dell'amministratore. Ho creato un elenco sicuro di password che tutti voi potete utilizzare sul sito. Queste password non compaiono in nessun elenco di parole che ho testato finora. Quindi ti incoraggio a usarli. Anche io. Sto usando uno di quei biglietti per Rick. Questo è un utente che abbiamo scoperto ragazzi che fanno un buon lavoro o limitano i tentativi di accesso. Funziona come un incantesimo e impedirà qualsiasi futura forzatura bruta. Quindi questo nodo significa che non possiamo usare la forza bruta per ottenere l'accesso all'utente amministratore.
Abbiamo appena scoperto il server web e c'è un'altra nota.
Che esiste un nome utente chiamato Rick.
Va bene, diamo un'occhiata alle password.
Ok, quindi se creiamo uno script Python per esaminarli tutti.
Esegui la decodifica e l'hashing necessari e forse saremo in grado di trovare la password dell'amministratore o il cookie dell'amministratore, ricordalo qui.
Il cookie originale era codificato in base64.
Va bene.
Quindi daremo per scontato che se creiamo uno script Python che superi tutti questi. Ok, esegui la codifica e l'hashing sarà in grado di scoprire il nome utente dell'amministratore. L'amministratore ha il cookie e la password dell'amministratore dopo aver ovviamente eseguito l'hash E5 sulla password.
Allora, il nome della sessione di Ellis?
quindi nello script qui, la prima cosa che definiamo è l'olio che volevamo testare è l'URL che punta alla pagina di amministrazione e lo script, principalmente la prima cosa che fa, esaminerà l'elenco delle password. Quindi l'elenco l'abbiamo appena scaricato dal server FTP, giusto? Quindi questo elenco contiene le password, ma non sappiamo quale sia quella corretta. Allora cosa dobbiamo fare?

Scambio ognuna di queste password. Questa è la prima cosa qui ed è per questo che utilizziamo la variabile data per memorizzare queste password e poi le passiamo attraverso ognuna di esse e la memorizziamo nella riga della variabile. La prima cosa che facciamo è eseguire il checksum md5 sulla password.
Perché questa è la formula, ricordala e poi possiamo calcolare il checksum mt5 con il nome utente. Ammin.
Ok, dopo aver ottenuto la password e il nome utente admin, eseguiamo base64 e poi testiamo, inseriamo qui la base 64 come cookie ID di sessione nelle intestazioni. Lo invierò se avremo accesso a un malvagio risultato positivo. Lo concluderemo. Questo è il cookie corretto in base64. Sarò in grado di scoprire per noi la riga di password corrispondente e le nozioni di base. Andiamo avanti ed eseguiamolo.
Ok, allora cosa sono tutte queste cose?
Quindi questi sono gli ID di sessione. Va bene. Ora l'ID sessione corretto era questo perché ha prodotto un risultato positivo per un successo positivo sulla pagina di amministrazione. Siamo riusciti ad accedervi e questa è la password corrispondente dall'elenco. Questa password non è stata calcolata, non è stata trovata in un'operazione di calcolo complessa, soprattutto era solo nell'elenco, ma siamo riusciti a trovarla perché abbiamo eseguito le operazioni necessarie.
Reputazione sul checksum md5 e abbiamo testato sulla pagina di amministrazione ed è stato un successo positivo su questo cookie. Quindi prenderemo questa password ed effettueremo l'accesso.
Quindi torna indietro.
Disconnettersi.
Ok, come puoi vedere, siamo riusciti ad accedere ad Amministrazione e vediamo che siamo in grado di accedere al pannello di amministrazione e al pannello di amministrazione. Presumibilmente abbiamo un controllo dello stato del servizio. Esegue un comando di sistema, ma non lo sappiamo ancora. Cos'è questo strano? Forse possiamo fare qualche stima su cosa e sul tipo di comando? Quindi ad esempio systemctl potrebbe essere il comando utilizzato.
stato
SSH d
città del sistema di osservatori non trovata attiva. È inattivo.
Quindi è questo un tipo che viene eseguito. Quindi quello che possiamo fare qui è eseguire l'iniezione di comandi. Quindi per recuperare recuperare dovrei tornare alla macchina o alla macchina dell'attaccante. Quindi andiamo avanti e nclb sarà 44 45.
Ok, quindi questo suona bene.
Andiamo avanti e prendiamo questo.
COSÌ
Va bene, prima vediamo l'indirizzo IP di questa macchina..
E qui affronterai questo problema temporaneamente e copieremo l'indirizzo IP.
10 10 12 42 43
Assicuriamoci che questo sia l'IP corretto. Non vogliamo lottare con questo in seguito. 194 243. Va bene. Così ora
Andremo avanti e prenderemo questo.
Quindi torneremo indietro.
Sì, ho dimenticato. Sono una macchina attaccante. Pensavo di possedere la mia macchina virtuale in modo così stupido. Quindi qui siamo andati a digitare non solo vogliamo eseguire questo codice non funzionerà perché non corrisponde al comando che il sistema si aspetta. Quindi qui non lo eseguiremo da soli perché non funzionerà. Ovviamente. Dobbiamo utilizzare il servizio o il comando previsto dal sistema.
Quindi qui usiamo bash see.
e qui virgolette doppie
Naturalmente i poveri 45 45.
sshd controlla il servizio e
esegui il comando successivo esegui.
poco lavoro
lavoro sulla partitura
Caro ascoltatore, non correrò o non li eseguirò ora 45 45 e poi tornerò qui.
E questo ci ha fornito la shell come dati dub dub, la prossima cosa che vuoi stabilizzare la shell, quindi dovrai digitare TTY.
Ok, ciao, va bene. Quindi abbiamo un file qui chiamato config se otteniamo config?
Vedi le loro informazioni su questi sono nominati. Abbiamo appena visto nelle note e nelle note dell'amministratore Rick e questo è il parser, quindi sue break.
E prendiamo la password e possiamo passare all'utente successivo.
Va bene. Quindi oggi controllerà nuovamente i privilegi di quell'utente e incollerà la password come potete vedere, ragazzi, Rick può eseguire questo comando come root senza la necessità di fornire la password e c'è una cosa da notare qui. Abbiamo abilitato il ripristino dell'ambiente e il mantenimento dell'ambiente è impostato sul percorso della libreria di caricamento. Significa che possiamo specificare.

L'armadietto è difficile da eseguire o da utilizzare quando eseguiamo Apache. Quindi di solito appare quando si esegue un eseguibile.
Con sudo successivo cercheremo il percorso della libreria o il file della libreria corrispondente nel percorso della libreria predefinito. Ok, se sei in grado di specificare un percorso di libreria personalizzato

Ok, Linux sarà in grado o Linux prenderà il percorso da noi specificato, ma affinché ciò accada è necessario abilitare il ripristino dell'ambiente e questo è il caso in cui il ripristino dell'ambiente è abilitato e possiamo specificare il percorso della libreria, il che significa che possiamo specificare il percorso della libreria per questo processo. Ok, possiamo creare un file di libreria dannoso.

Quindi eccolo qui nei miei appunti. Torniamo indietro e usiamo il carattere di sottolineatura LD. Sì, precaricamento LD e percorso della libreria LD

Quindi in pratica useremo questo.

Quindi prendiamo questo codice.
Copialo.
E sul mio computer locale o sul computer locale qui.
Creerò un file denominato.
Affronta il mare
Supera lo spazio salvato da questo codice e poi lo compileremo in un file di libreria.
Ecco
Penso che sarà meglio se lo combiniamo sulla macchina stessa. Quindi, per poter trasferire questa scoreggia alla macchina, utilizzeremo il taglio netto, quindi vedremo.
Questo è lvp. 4546.
rivettato vedere
permesso negato
Bosch
Piuttosto buono. Vedi autorizzazione negata. Ok, vediamo, lasciami tornare indietro e scoprire come farlo perché a volte
un errore e il comando non funzionerà. Quindi andiamo su Linux e controlliamo il trasferimento.
Sì. Quindi la porta di destinazione può essere eseguita sulla macchina, ma non funziona. Quindi 45 46 è verso l'alto che stiamo già utilizzando il LED 4547. Vediamo.
Autorizzazione negata perché?
E vedi che l'indirizzo IP è questo.
447
Regina del mare
Si Esattamente. Non funzionerà se prima ascolti e corri.
Ma Rick non può correre a vedere per qualche motivo.
se il permesso C è negato
Directory di modifica temporanea del CD
Forse questo farà funzionare le cose.
Oh ok. Che ora inviamo il file.
E abbiamo ricevuto la connessione.
Ok, LS e dimostrami che il mare è qui. Ora. Lo compileremo sulla macchina. Quindi torniamo all'escalation privilegiata di Linux e al carattere di sottolineatura.
ricaricare
Quindi questo è il comando.
Era un brutale C.
Andiamo, no.
Quindi GC Dash, oh, sarà temporaneo.
Questo è condiviso se Pi C. Ok, e poi vediamo.
Dopo aver compilato, posso file di output è una directory?
Va bene.
Sarà S 0 a 1 con il peso.
uno e poi segue il resto del comando
quindi abbiamo questo file qui e la prossima cosa che vogliamo usare è un party per eseguire questo file. Quindi in pseudo, come puoi vedere, specifichiamo il percorso della libreria da cui sceglieremo il file della libreria.
Questo va qui.
prima da fare
Va bene
ora il file della libreria qui ragazzi.
Ciò che abbiamo creato sarà contaminato.
alla fine
quindi è privato, quindi quello.
così uno
Oppure penso che non abbiamo bisogno di specificarlo perché lo riprenderà da solo.
Sì, specifica sempre la directory, la prossima cosa che vogliamo fare è eseguire il comando.
Ok, questo è il comando.
Ok, rimuoviamo questo file.
Penso che dovremo mantenere il nome dato che il nome è Library Crypt. Ok, eseguirà questo comando ancora una volta.
Vedremo.
Vedremo.
E poi eseguiremo la stessa colonna o tempo, riproveremo.
Aspetta questo.
E come puoi vedere il prompt è cambiato da Rick a root e ora abbiamo aumentato con successo i privilegi da CD a root.
E hai conquistato la macchina. Questo è tutto.
Quindi ragazzi, questo è tutto. Spero che farete il video e sicuramente ragazzi, ci vediamo più tardi.

Videoprocedura dettagliata

Circa l'autore

Creo note sulla sicurezza informatica, note di marketing digitale e corsi online. Fornisco anche consulenza di marketing digitale, inclusi ma non limitati a SEO, annunci Google e Meta e amministrazione CRM.

Visualizza articoli