Come funziona l'opzione di flusso di Snort?

1

Ad esempio, flow:established sta rilevando solo i pacchetti con sessioni connesse.

Quindi, il server sta rifiutando i pacchetti da ricevere dopo che la sessione è stata disconnessa?

    
posta chwap 04.05.2017 - 08:42
fonte

2 risposte

1

Semplicemente, flow è un'opzione della regola di rilevamento del carico utile che utilizza il preprocessore Stream (precedentemente Stream5, Stream4). Raccomando di leggere la seguente documentazione:

Per rispondere alla tua domanda:

For example, flow:established is detecting only for packets with sessions connected.

Mi piacerebbe approfondire questo. Le connessioni TCP utilizzano un 3-way handshake ( 3WHS ). Il client invia un SYN, il server risponde con un SYN + ACK e quindi il client risponde con un ACK.

Immagineda: link

Quando si usa flow:established in una regola, stai dicendo a Snort di non preoccuparsi di guardare [tipicamente] i primi tre pacchetti in un flusso TCP. Questo è fatto perché normalmente non c'è contenuto (Dati dell'applicazione) all'interno.

Quando non usare established nella tua opzione flow :

  1. Durante la scrittura di una firma che non utilizza TCP (ad esempio UDP, ICMP, IP)

  2. Durante la scrittura di una firma progettata per indirizzare i pacchetti all'interno del 3WHS.

Then, the server is rejecting packets to received after the session is disconnected?

Ricorda che Snort è non un server; è un Sistema di prevenzione / rilevamento delle intrusioni sulla rete ( NIPS / NIDS ). L'unico modo in cui rifiuta i pacchetti è se lo si è configurato e in esecuzione in una configurazione inline (NIPS). In caso contrario, può solo osservare il traffico e non può rifiutare o eliminare attivamente i pacchetti.

Supponendo che Snort sia configurato e in esecuzione in modalità inline, se si dovesse scrivere una regola come:

drop tcp any any -> any any (msg:"Dropping packets"; flow:established; sid:1; rev:1; )

... La regola sparerebbe su qualsiasi pacchetto TCP che era stato visto dopo il 3WHS iniziale. Questo sembrerebbe sia al client che al server come una connessione riuscita, ma nessun dato verrebbe trasferito, perché Snort lascerebbe cadere i pacchetti.

Ricorda che Snort è un motore di rilevamento, quindi non pensarci in termini di invio / ricezione di dati o avvio / creazione di connessioni. Pensalo come un osservatore passivo (o nel caso di un IPS, un buttafuori in una discoteca).

Per ulteriori informazioni su flow o sul preprocessore Stream, leggi la documentazione che ho collegato sopra.

Spero che questo risponda alla tua domanda!

    
risposta data 05.12.2017 - 21:53
fonte
0
L'opzione

flow sceglie il mittente syn come client. E dimmi solo in quale direzione sta andando il traffico.

E Snort non influenza il comportamento del traffico, controlla solo in modalità ids.

L'opzione

flow è utile per la rete semplice.

Mapotrebbeessereinutileperreticomplesse.

    
risposta data 04.05.2017 - 14:31
fonte

Leggi altre domande sui tag