Archivi tag: base rate fallacy

Tuning dei preprocessori di snort 2.9.0.5

In questo post abbiamo visto come aggiornare snort alla versione 2.0.9.5 su piattaforma *buntu. Adesso vedremo come effettuare del tuning minimale per evitare tutta una serie di falsi positivi (base rate fallacy), che possono distogliere la nostra attenzione dalle reali minacce.

snort

 

Personalmente credo che sui sistemi che vengono utilizzati per la semplice navigazione Web (o che fungono da GW verso la rete esterna) e su cui è presente un qualunque applicativo p2p occorre disabilitare le seguenti regole, inserendo le seguenti direttive nel file /etc/snort/threshold.conf:

suppress gen_id 119, sig_id 2
suppress gen_id 129, sig_id 12
suppress gen_id 129, sig_id 19
suppress gen_id 119, sig_id 15
suppress gen_id 120, sig_id 3
suppress gen_id 129, sig_id 14
suppress gen_id 129, sig_id 15
suppress gen_id 129, sig_id 5
suppress gen_id 129, sig_id 4

Tutte le regole riportate in precedenza sono identificate mediante un gen_id ed un sig_id, dove per gen_id si intende l’ID del preprocessore, mentre per sig_id si intende l’alert generato dal preprocessore coinvolto. Per avere un’idea più chiara di cosa sto parlando basta aprire in lettura il file /etc/snort/gen-msg.map. Così facendo potremo notare come al gen_id 119 ed al sig_id 2 corrisponde l’alert http_inspect: DOUBLE DECODING ATTACK, al gen_id 129 ed al sig_id 12 corrisponde l’alert stream5: TCP Small Segment Threshold Exceeded, e così via.

Nello specifico, ecco come appariranno le entry del file gen-msg.map:

126 || 2 || telnet_pp: Telnet data encrypted
126 || 3 || telnet_pp: Subnegotiation Begin without matching Subnegotiation End
128 || 1 || ssh: Gobbles exploit
128 || 2 || ssh: SSH1 CRC32 exploit
128 || 3 || ssh: Server version string overflow
128 || 4 || ssh: Protocol mismatch
128 || 5 || ssh: Bad message direction
128 || 6 || ssh: Payload size incorrect for the given payload
128 || 7 || ssh: Failed to detect SSH version string

ecc.

Riavviate snort per rendere effettive tali modifiche:

nightfly@nightbox:~$ sudo service snort restart

ed il gioco è fatto.

A presto.

Snort: disabilitare la notifica DOUBLE DECODING ATTACK

Che Snort generi una miriade di falsi positivi durante il normale utilizzo della rete è abbastanza risaputo. Ultimamente, però, ho notato la presenza, piuttosto insistente, di notifiche simili alle seguenti:

 [**] [119:2:1] (http_inspect) DOUBLE DECODING ATTACK [**]
 [Priority: 3]
 05/12-21:23:59.624917 192.168.*.*:1299 -> 212.52.84.153:80
 TCP TTL:128 TOS:0x0 ID:5340 IpLen:20 DgmLen:98 DF
 ***AP*** Seq: 0xC593D3E7  Ack: 0x1DDBAA89  Win: 0xFFFF  TcpLen: 20

A quanto pare il preprocessore http_inspect si altera perchè nota la presenza di un doppio meccanismo di codifica mentre si naviga sulla webmail di Libero (per la precisione mailbeta.libero.it). Il fatto che venga utilizzata questa tecnica di codifica non è un’anomalia, semplicemente moltissimi siti Web preferiscono codificare più volte le variabili in modo da garantire un livello di sicurezza più elevato.

images.jpg

 

Come procedere quindi per disabilitare l’alert in questione?

Una soluzione abbastanza rapida consiste nel modificare il file threshold.conf presente nella directory /etc/snort/:

nightfly@nightbox:/etc/snort$ sudo nano threshold.conf

Aggiungendo la stringa:

suppress gen_id 119, sig_id 2

Adesso verifico che il file threshold.conf venga effettivamente utilizzato da snort.conf:

nightfly@nightbox:/etc/snort$ sudo nano snort.conf

A tal proposito è sufficente decommentare la stringa:

# include threshold.conf

che diventerà:

include threshold.conf

Riavvio infine Snort mediante il comando:

nightfly@nightbox:/etc/snort$ sudo service snort restart

e questo piccolo tuning è stato completato.

A presto.