Trasforma il tuo flusso di lavoro Wireshark con Brim su Linux

Wireshark è lo standard de facto per l’analisi del traffico di rete. Sfortunatamente, diventa sempre più lento man mano che l’acquisizione dei pacchetti aumenta. Brim risolve questo problema così bene che cambierà il tuo flusso di lavoro Wireshark.

Wireshark è fantastico, ma. . .

Wireshark è un meraviglioso software open source. Viene utilizzato da dilettanti e professionisti in tutto il mondo per indagare sui problemi di rete. Cattura i pacchetti di dati che viaggiano lungo i fili o attraverso l’etere della rete. Una volta acquisito il traffico, Wireshark ti consente di filtrare e cercare tra i dati, tracciare le conversazioni tra i dispositivi di rete e molto altro ancora.

Per quanto Wireshark sia, tuttavia, ha un problema. I file di acquisizione dei dati di rete (chiamati tracce di rete o acquisizioni di pacchetti) possono diventare molto grandi, molto rapidamente. Ciò è particolarmente vero se il problema che stai tentando di esaminare è complesso o sporadico o se la rete è grande e occupata.

Più grande è l’acquisizione del pacchetto (o PCAP), più Wireshark diventa lento. La sola apertura e il caricamento di una traccia molto grande (qualsiasi cosa superiore a 1 GB) può richiedere così tanto tempo, si potrebbe pensare che Wireshark si sia abbassato e abbia abbandonato il fantasma.

Lavorare con file di quelle dimensioni è un vero problema. Ogni volta che esegui una ricerca o modifichi un filtro, devi attendere che gli effetti vengano applicati ai dati e aggiornati sullo schermo. Ogni ritardo interrompe la tua concentrazione, il che può ostacolare i tuoi progressi.

Brim è il rimedio a questi mali. Funge da preprocessore interattivo e front-end per Wireshark. Quando vuoi vedere il livello granulare che Wireshark può fornire, Brim lo apre immediatamente per te esattamente su quei pacchetti.

Se esegui molte acquisizioni di rete e analisi dei pacchetti, Brim rivoluzionerà il tuo flusso di lavoro.

Installazione di Brim

Brim è molto nuovo, quindi non si è ancora fatto strada nei repository software delle distribuzioni Linux. Tuttavia, sul Pagina di download di Brim, troverai i file dei pacchetti DEB e RPM, quindi installarlo su Ubuntu o Fedora è abbastanza semplice.

Se usi un’altra distribuzione, puoi farlo scarica il codice sorgente da GitHub e crea l’applicazione tu stesso.

Brim utilizza zq, uno strumento da riga di comando per Zeek log, quindi dovrai anche scaricare un file ZIP contenente i binari zq.

Installazione di Brim su Ubuntu

Se stai usando Ubuntu, dovrai scaricare il file del pacchetto DEB e il file ZIP di zq Linux. Fare doppio clic sul file del pacchetto DEB scaricato e l’applicazione software Ubuntu si aprirà. La licenza Brim viene erroneamente elencata come “proprietaria”, utilizza l’estensione Licenza di 3 clausole BSD.

Fare clic su “Installa”.

Clic

Al termine dell’installazione, fare doppio clic sul file ZIP zq per avviare l’applicazione Archive Manager. Il file ZIP conterrà una singola directory; trascinalo da “Gestione archivi” in una posizione sul tuo computer, come la directory “Download”.

Digitiamo quanto segue per creare una posizione per i binari zq:

sudo mkdir /opt/zeek

sudo mkdir / opt / zeek in una finestra di terminale.

Dobbiamo copiare i file binari dalla directory estratta nella posizione che abbiamo appena creato. Sostituisci il percorso e il nome della directory estratta sulla tua macchina nel seguente comando:

sudo cp Downloads/zq-v0.20.0.linux-amd64/* /opt/Zeek

sudo cp Downloads / zq-v0.20.0.linux-amd64 / * / opt / Zeek in una finestra di terminale.

Dobbiamo aggiungere quella posizione al percorso, quindi modificheremo il file BASHRC:

sudo gedit .bashrc

sudo gedit .bashrc in una finestra di terminale.

L’editor di gedit si aprirà. Scorri fino alla fine del file e quindi digita questa riga:

export PATH=$PATH:/opt/zeek

Il file BASHRC nell'editor gedit con la riga export PATH = $ PATH: / opt / zeek.

Salva le modifiche e chiudi l’editor.

Installazione di Brim su Fedora

Per installare Brim su Fedora, scarica il file del pacchetto RPM (invece del DEB), quindi segui gli stessi passaggi che abbiamo coperto per l’installazione di Ubuntu sopra.

È interessante notare che quando il file RPM si apre in Fedora, viene correttamente identificato come dotato di una licenza open source, piuttosto che proprietaria.

Avvio di Brim

Fai clic su “Mostra applicazioni” nel dock o premi Super + A. Digita “Brim” nella casella di ricerca, quindi fai clic su “Brim” quando viene visualizzato.

genere

Brim si avvia e visualizza la sua finestra principale. È possibile fare clic su “Scegli file” per aprire un browser di file o trascinare e rilasciare un file PCAP nell’area circondata dal rettangolo rosso.

La finestra principale di Brim dopo l'avvio.

Brim utilizza un display a schede e puoi avere più schede aperte contemporaneamente. Per aprire una nuova scheda, fare clic sul segno più (+) in alto, quindi selezionare un altro PCAP.

Nozioni di base sul bordo

Brim carica e indicizza il file selezionato. L’indice è uno dei motivi per cui Brim è così veloce. La finestra principale contiene un istogramma dei volumi di pacchetti nel tempo e un elenco di “flussi” di rete.

La finestra principale di Brim con un file PCAP caricato.

Un file PCAP contiene un flusso ordinato nel tempo di pacchetti di rete per un gran numero di connessioni di rete. I pacchetti di dati per le varie connessioni sono mescolati perché alcuni di essi saranno stati aperti contemporaneamente. I pacchetti per ciascuna “conversazione” di rete vengono intervallati con i pacchetti di altre conversazioni.

Wireshark mostra il flusso di rete pacchetto per pacchetto, mentre Brim utilizza un concetto chiamato “flussi”. Un flusso è un interscambio di rete completo (o conversazione) tra due dispositivi. Ogni tipo di flusso è classificato, codificato a colori ed etichettato in base al tipo di flusso. Vedrai i flussi etichettati “dns”, “ssh”, “https”, “ssl” e molti altri.

Se si scorre la visualizzazione del riepilogo del flusso a sinistra oa destra, verranno visualizzate molte più colonne. È inoltre possibile regolare il periodo di tempo per visualizzare il sottoinsieme di informazioni che si desidera visualizzare. Di seguito sono riportati alcuni modi per visualizzare i dati:

Fare clic su una barra nell’istogramma per ingrandire l’attività di rete al suo interno.
Fare clic e trascinare per evidenziare un intervallo della visualizzazione dell’istogramma e ingrandire. Brim visualizzerà quindi i dati dalla sezione evidenziata.
È inoltre possibile specificare periodi esatti nei campi “Data” e “Ora”.

Brim può visualizzare due riquadri laterali: uno a sinistra e uno a destra. Questi possono essere nascosti o rimanere visibili. Il riquadro a sinistra mostra una cronologia delle ricerche e un elenco di PCAP aperti, chiamati spazi. Premi CTRL +[ to toggle the left pane on or off.

The

The pane on the right contains detailed information about the highlighted flow. Press Ctrl+] per attivare o disattivare il riquadro destro.

Un evidenziato

Fare clic su “Conn” nell’elenco “Correlazione UID” per aprire un diagramma di connessione per il flusso evidenziato.

Clic

Nella finestra principale, puoi anche evidenziare un flusso, quindi fare clic sull’icona di Wireshark. Questo avvia Wireshark con i pacchetti per il flusso evidenziato visualizzato.

Fare clic sull'icona di Wireshark nella finestra principale di Brim.

Wireshark si apre, visualizzando i pacchetti di interesse.

Pacchetti selezionati da Brim visualizzati in Wireshark.

Filtraggio in Brim

La ricerca e il filtro in Brim sono flessibili e completi, ma non è necessario imparare un nuovo linguaggio di filtraggio se non lo si desidera. È possibile creare un filtro sintatticamente corretto in Brim facendo clic sui campi nella finestra di riepilogo, quindi selezionando le opzioni da un menu.

Ad esempio, nell’immagine sottostante, abbiamo fatto clic con il pulsante destro del mouse su un campo “dns”. Quindi selezioneremo “Filtro = Valore” dal menu contestuale.

Un menu contestuale nella finestra di riepilogo.

Quindi si verificano le seguenti cose:

Il testo _path = “dns” viene aggiunto alla barra di ricerca.
Tale filtro viene applicato al file PCAP, quindi visualizzerà solo i flussi che sono flussi DNS (Domain Name Service).
Il testo del filtro viene aggiunto anche alla cronologia delle ricerche nel riquadro sinistro.

Una schermata di riepilogo filtrata dal DNS.

Possiamo aggiungere ulteriori clausole al termine di ricerca utilizzando la stessa tecnica. Faremo clic con il pulsante destro del mouse sul campo dell’indirizzo IP (contenente “192.168.1.26”) nella colonna “Id.orig_h”, quindi selezionare “Filter = Value” dal menu contestuale.

Ciò aggiunge la clausola aggiuntiva come clausola AND. La visualizzazione è ora filtrata per mostrare i flussi DNS originati da quell’indirizzo IP (192.168.1.26).

Una schermata di riepilogo filtrata per tipo di flusso e indirizzo IP.

Il nuovo termine del filtro viene aggiunto alla cronologia delle ricerche nel riquadro sinistro. Puoi passare da una ricerca all’altra facendo clic sugli elementi nell’elenco della cronologia delle ricerche.

L’indirizzo IP di destinazione per la maggior parte dei nostri dati filtrati è 81.139.56.100. Per vedere quali flussi DNS sono stati inviati a diversi indirizzi IP, fare clic con il pulsante destro del mouse su “81.139.56.100” nella colonna “Id_resp_h”, quindi selezionare “Filtro! = Valore” dal menu contestuale.

Schermata di riepilogo con un filtro di ricerca contenente un file

Solo un flusso DNS che ha avuto origine da 192.168.1.26 non è stato inviato a 81.139.56.100 e lo abbiamo individuato senza dover digitare nulla per creare il nostro filtro.

Blocco delle clausole di filtro

Quando facciamo clic con il pulsante destro del mouse su un flusso “HTTP” e selezioniamo “Filtro = Valore” dal menu contestuale, il riquadro di riepilogo visualizzerà solo i flussi HTTP. Possiamo quindi fare clic sull’icona Pin accanto alla clausola del filtro HTTP.

Fare clic sull'icona Pin.

La clausola HTTP è ora bloccata e qualsiasi altro filtro o termine di ricerca che utilizziamo verrà eseguito con la clausola HTTP anteposta ad essi.

Se digitiamo “GET” nella barra di ricerca, la ricerca sarà limitata ai flussi che sono già stati filtrati dalla clausola bloccata. È possibile bloccare tutte le clausole di filtro necessarie.

Per cercare pacchetti POST nei flussi HTTP, è sufficiente cancellare la barra di ricerca, digitare “POST” e quindi premere Invio.

Lo scorrimento laterale rivela l’ID dell’host remoto.

Il remoto

Tutti i termini di ricerca e filtro vengono aggiunti all’elenco “Cronologia”. Per riapplicare qualsiasi filtro, fai clic su di esso.

Il file auto-popolato

Puoi anche cercare un host remoto per nome.

Cercare

Modifica dei termini di ricerca

Se desideri cercare qualcosa, ma non vedi un flusso di quel tipo, puoi fare clic su qualsiasi flusso e modificare la voce nella barra di ricerca.

Ad esempio, sappiamo che deve esserci almeno un flusso SSH nel file PCAP perché abbiamo usato rsync per inviare alcuni file a un altro computer, ma non possiamo vederlo.

Quindi, faremo clic con il pulsante destro del mouse su un altro flusso, selezionare “Filtro = Valore” dal menu di scelta rapida, quindi modificare la barra di ricerca per dire “ssh” invece di “dns”.

Premiamo Invio per cercare flussi SSH e scopriamo che ce n’è solo uno.

Un flusso SSH nella finestra di riepilogo.

Premendo Ctrl +]si apre il riquadro di destra, che mostra i dettagli di questo flusso. Se un file è stato trasferito durante un flusso, il file MD5, SHA1, e SHA256 vengono visualizzati gli hash.

Fare clic con il pulsante destro del mouse su uno di questi, quindi selezionare “VirusTotal Lookup” dal menu contestuale per aprire il browser in VirusTotal sito Web e passare l’hash per il controllo.

VirusTotal archivia gli hash di malware noto e altri file dannosi. Se non sei sicuro che un file sia sicuro, questo è un modo semplice per verificarlo, anche se non hai più accesso al file.

Le opzioni del menu contestuale hash.

Se il file è benigno, vedrai la schermata mostrata nell’immagine sotto.

UN

Il complemento perfetto per Wireshark

Brim rende il lavoro con Wireshark ancora più veloce e semplice, consentendo di lavorare con file di acquisizione di pacchetti molto grandi. Provalo oggi stesso!