Creazione di un Fuzzer con Metasploit
Da ora in poi, sposteremo la nostra attenzione dai due moduli comunemente utilizzati – payload ed exploit – e esamineremo altri moduli che vengono frequentemente utilizzati nei pen-test; vale a dire i moduli Post, Nop, codificatori e ausiliari.
Le mod ausiliarie vengono generalmente utilizzate per eseguire azioni una tantum post-sfruttamento, ma puoi fare molto di più con questo affascinante strumento, come creare i tuoi scanner di vulnerabilità e scanner di porte. Questo articolo esaminerà in dettaglio il modulo ausiliario in particolare e imparerà come creare un fuzzer con esso.
Passaggio 1: accedere alla directory Metasploit
Innanzitutto, avvia Kali Linux e vai alla directory Metasploit Framework. Digita quanto segue nell'interfaccia di Kali:
Per vedere meglio i contenuti qui, modifica la visualizzazione della directory inserendo quanto segue:
Scorri fino al modulo della sottodirectory e digita nuovamente:
Questo output mostra i diversi tipi di moduli in Metasploit, tra cui:
Exploit
Carichi utili
Cenno
Inviare
Codificatori
Ausiliario
Esamineremo ora più nel dettaglio il modulo ausiliario.
Passaggio 2: espandere la directory ausiliaria
Immettere la directory ausiliaria
Ciò suddividerà la directory del modulo ausiliario in diverse sottodirectory. L'output mostrerà un elenco completo di sottodirectory, a partire dalla directory admin.
Creazione di Fuzzer
Prima di procedere, definiremo innanzitutto cos'è il fuzzing.
Fuzzing: una breve introduzione
Il fuzzing è una pratica nella disciplina del test del software che prevede l'immissione continua di input casuali e inaspettati in un programma per computer per determinare tutti i possibili arresti anomali che un sistema potrebbe affrontare. L'inserimento di troppi dati o input casuali in un'area variabile provoca un buffer overflow, una vulnerabilità critica, che è ciò che il Fuzzing cerca come tecnica di ispezione.
Non solo il buffer overflow è una grave vulnerabilità, ma spesso è anche il metodo a cui gli hacker si rivolgono quando tentano di entrare in un sistema.
Il processo di fuzzing
Vai alla directory fuzzer e dai un'occhiata all'elenco:
I tipi di fuzzer visualizzati includeranno i seguenti: dns, ftp, http, smb, smtp, ssh e tds.
Il fuzzer di particolare interesse per noi è ftp.
Successivamente, apri la directory fuzzers:
Dei due tipi visualizzati qui, utilizzeremo "tp_pre_post fuzzer" invece di "client_ft.rb".
Apri msfconsole, individua "tp_pre_post fuzzer" ed eseguilo. Nel prompt msf, digitare quanto segue:
Msfconsole elencherà solo i moduli ausiliari e trascurerà gli altri tipi. Si noti che tutte le mod presentate hanno la parola chiave ftp, che richiede al processo di ordinare i moduli come indicato dal comando.
I risultati della ricerca mostrano diversi moduli; utilizzeremo solo il modulo “auxiliary/fuzzers/ftp/ftp_pre_post”. Puoi esaminare i dettagli relativi alle funzioni di questa mod digitando msf > info.
Ora carica questo modulo digitando:
Come puoi vedere, il modulo può accettare diversi input. Utilizzeremo un indirizzo IP specifico. In questo esempio, stiamo utilizzando un sistema con sistema operativo Windows 2003 come destinazione designata per testare il nostro fuzzer.
Imposta l'indirizzo IP ed esegui il modulo:
Il fuzzer inizierà con 10 byte leggeri e inizierà lentamente a sopraffare il sistema con input più consistenti, aumentando di 10 byte ad ogni iterazione. La dimensione massima predefinita è 20000 byte, modificabile in base al tipo di sistema.
Questo è un processo molto contorto e lungo, quindi sii paziente. Il fuzzer si fermerà al limite di dimensione specificato o quando rileva alcuni messaggi di errore.
Conclusione
Questo articolo descrive cosa sono i fuzzer: moduli ausiliari che ci permettono di verificare le vulnerabilità di un sistema, incluso il buffer overflow, che è il più significativo in quanto spesso viene sovrascritto dal suo sfruttamento. L'articolo descriveva anche come eseguire il fuzzing su un sistema con il fuzzer tp_pre_post. Nonostante siano componenti relativamente più semplici del framework Metasploit, i fuzzer possono essere estremamente preziosi quando si tratta di pen-test.
Ovviamente questa non è l'unica cosa di cui sono capaci i moduli ausiliari; ci sono centinaia di moduli diversi che servono a una varietà di scopi diversi per testare il tuo sistema.