Hping è uno strumento molto duttile perchè è capace sia di creare pacchetti di rete che di sniffare il traffico su una ethernet.
In questo articolo voglio illustrarvi alcune funzionalità di questo tool che reputo molto interessanti in fase di analisi di un sistema target, esso è stato progettato da un italiano di nome Salvatore Sanfilippo.
Le funzionalità più utilizzate di questo strumento sono:
Analizzando i punti citati sopra possiamo capire meglio come questo strumento racchiuda in sé molte delle caratteristiche che servono ad un esperto di reti per poter comprendere meglio la rete LAN che si sta per testare. Io credo che riusciremo a capire meglio come funzioni con qualche esempio .
Iniziamo con una semplice scansione delle porte, come potete notare dall’immagine sottostante io sto cercando di capire se la porta 80 sull’host 192.168.3.11 è aperta.
COMANDO: hping –S <ip host target> -p 80
-S : attiva scansione SYN scan, primo segmento di apertura del socket tra l’host target e il client
-p: indica la porta di destinazione dell’applicazione destinataria dei segmenti inviati
Analizzando l’output possiamo notare che i flags settati nei segmenti di ritorno sono i flag SYN (abbreviato con S) e ACK (abbreviato con A), altre cose che possiamo notare sono che l’host target dichiara una finestra di ricezione pari a win=8192 ed è attivato il flag DF (Don’t fragment, se non sapete cosa sia continuate a seguire i prossimi articoli cercheremo di approfondire meglio i protocolli di comunicazione, che non sono nient’altro che il linguaggio con cui comunicano uno o più host su una rete LAN). Se avessimo ricevuto come risposta alla nostra scansione i flags RST(reset,abbreviato con R) e ACK(abbreviato con A) avremmo concluso che la porta in questione, sul nostrohost target, era chiusa e quindi non si poteva stabilire una comunicazione bidirezionale su quella porta.
Ecco una serie di flag TCP che si possono settare quando inviamo dei pacchetti in rete verso il nostro host target:
-F imposta il FIN flag.
-S imposta il SYN flag.
-P imposta il PUSH flag.
-A imposta l’ACK flag.
-R imposta il RST(reset) flag.
Provate a fare qualche prova settando i diversi flag e intercettando i pacchetti inviati e ricevuti con un analizzatore di rete a vostra scelta, io mi trovo molto bene con Wireshark e vi consiglio di provarlo. Continuando nella nostra analisi, se volessimo scansionare più porte contemporaneamente potremmo utilizzare la seguente sintassi:
COMANDO:
hping –S <ip host target> -p ++80
Scansionerà tutte le porte tra l’intervallo 80 e 65535 restituendovi la tipologia di pacchetti che abbiamo analizzato sopra. Nello stesso modo in cui aggiungiamo i flag per modificare il contenuto dei pacchetti che stiamo inviando in rete possiamo aggiungere dei parametri quali:
-w comunica una grandezza della finestra di ricezione differente da quella di default
-s porta sorgente
-b inviare un pacchetto con checksum errato
Nel prossimo articolo parleremo di come poter implementare la tecnica di firewalking e cosa sia effettivamente, concludendo con lo spiegare come questo tool di rete possa essere usato anche per: creare attacchi di tipo DoS, per testare IDS e firewall.
Happy hacking
Articoli che potrebbero interessarti: