Ajustando as regras do Snort: flooding de mensagem TCP / IP SIP da COMMUNITY direcionado para o proxy SIP

2

Este é um problema comum no Snort, mas não sei por que a regra é acionada.

A regra abaixo vem dos repositórios do Debian. Aparentemente, ele é projetado para acionar quando houver mais de 300 acessos na porta 5060 e só alertará uma vez a cada 60 segundos se continuar.

/etc/snort/rules/community-sip.rules (espaço em branco adicionado, outras regras removidas):

...
alert ip any any -> any 5060 (
  msg:"COMMUNITY SIP TCP/IP message flooding directed to SIP proxy";
  threshold: type both, track by_src, count 300, seconds 60;
  classtype:attempted-dos;
  sid:100000160;
  rev:2;
)
...

link

Mas a regra parece desencadear coisas que não tem nada a ver com a porta 5060. Por exemplo, aqui está um alerta:

por exemplo,

[**] [1:100000160:2] COMMUNITY SIP TCP/IP message flooding directed to SIP proxy [**]
[Classification: Attempted Denial of Service] [Priority: 2] 
08/06-12:19:07.399163 1.2.3.4:61253 -> 5.6.7.8:22
TCP TTL:55 TOS:0x10 ID:59727 IpLen:20 DgmLen:52 DF
***A**** Seq: 0xE2B759E9  Ack: 0xB01D0B90  Win: 0xFFFF  TcpLen: 32
TCP Options (3) => NOP NOP TS: 129954676 287277196 

Alguns pesquisando no Google revelam que as pessoas dizem "essa é uma regra ruim", mas não vejo como.

    
por mgjk 06.08.2012 / 23:46

1 resposta

3

Acho que peguei esse. Não havia informações que eu pudesse encontrar em "ip de alerta" e números de porta na documentação do snort.org.

O seguinte diz que isso é um erro comum na criação de regras de snort:

link

Eu consertei isso duplicando a regra, especificando TCP e UDP e alterando os SIDs de regra. Eu repeti isso para várias regras no arquivo community-sip.rules.

por exemplo,

alert tcp any any -> any 5060 (msg:"COMMUNITY SIP TCP/IP message flooding directed to SIP proxy"; threshold: type both, track by_src, count 300, seconds 60; classtype:attempted-dos; sid:900000160; rev:2;)
alert udp any any -> any 5060 (msg:"COMMUNITY SIP TCP/IP message flooding directed to SIP proxy"; threshold: type both, track by_src, count 300, seconds 60; classtype:attempted-dos; sid:910000160; rev:2;)

Os alertas estão silenciosos agora. Algumas regras de teste (com contagens inferiores) são acionadas corretamente quando eu as testo.

    
por 07.08.2012 / 16:57