[FUG-BR] RES: Filtro L7

Tiago Isic Brasil tiago em isic.com.br
Quarta Março 12 09:56:46 BRT 2008


Bom dia a todos.

Seguinte estou na lutar por vários dias em criar as rules para o
snort_inline identificar o trafego p2p.
Fiquei mais de 1 dia vendo payloads e mais payloads via tcpdump,
tentando descobrir padroes quando os aplicativos clientes tentam a
conexão. Bom estou no momento analizando o fonte do ipp2p para encontrar
os benditos padroes, já consegui algumas coisas e criei em forma de
rule, mas o problema " Ainda nao consegui criar as benditas regras do
snort para bloquear pelo menos a tentativa de conexao ".  Nao sou muito
experiente em gerar as rules, mas estou tentato.

Meu apelo, queria que o pessoal ajuda-se a criar essas regras em modo
geral, seria de utilidade de todos. OU quem já possui em seu ambiente e
funciona, por favor compartilhe, seja solidário com a comunidade.

Pensem se conseguirmos bloquear o trafego p2p poderemos chamar mais
adpetos para nosso Sistema Operacional.

Segue abaixo as minhas rules geradas após analizar os fontes do ipp2p:

#Analise de UDP

reinject udp $HOME_NET any -> $EXTERNAL_NET any (msg:"P2P eDonkey eMule
Kad commands Client -> Server status request"; content:"|e3 96|";) 
reinject udp $EXTERNAL_NET any -> $HOME_NET any (msg:"P2P eDonkey eMule
Kad commands Server -> Client status request"; content:"|e3 97|";) 

reinject udp $HOME_NET any -> $EXTERNAL_NET any (msg:"P2P eDonkey eMule
Kad commands Server description request"; content:"|e3 a2|"; dsize:6;) 
reinject udp $HOME_NET any -> $EXTERNAL_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e3 9a|";) 
reinject udp $HOME_NET any -> $EXTERNAL_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e3 92|";) 
reinject udp $HOME_NET any -> $EXTERNAL_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 20|";
dsize:43;) 
reinject udp $HOME_NET any -> $EXTERNAL_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 00|"; ) 
reinject udp $HOME_NET any -> $EXTERNAL_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 10|"; ) 
reinject udp $HOME_NET any -> $EXTERNAL_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 18|"; ) 
reinject udp $HOME_NET any -> $EXTERNAL_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 52|";
dsize:44;) 
reinject udp $HOME_NET any -> $EXTERNAL_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 58|"; dsize:6;) 
reinject udp $HOME_NET any -> $EXTERNAL_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 59|"; dsize:2;) 
reinject udp $HOME_NET any -> $EXTERNAL_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 28|"; ) 
reinject udp $HOME_NET any -> $EXTERNAL_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 50|";
dsize:4; ) 
reinject udp $HOME_NET any -> $EXTERNAL_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 40|";
dsize:48; ) 


reinject udp $EXTERNAL_NET any -> $HOME_NET any (msg:"P2P eDonkey eMule
Kad commands Server description request"; content:"|e3 a2|"; dsize:6;) 
reinject udp $EXTERNAL_NET any -> $HOME_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e3 9a|";) 
reinject udp $EXTERNAL_NET any -> $HOME_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e3 92|";) 
reinject udp $EXTERNAL_NET any -> $HOME_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 20|";
dsize:43;) 
reinject udp $EXTERNAL_NET any -> $HOME_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 00|"; ) 
reinject udp $EXTERNAL_NET any -> $HOME_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 10|"; ) 
reinject udp $EXTERNAL_NET any -> $HOME_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 18|"; ) 
reinject udp $EXTERNAL_NET any -> $HOME_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 52|";
dsize:44;) 
reinject udp $EXTERNAL_NET any -> $HOME_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 58|"; dsize:6;) 
reinject udp $EXTERNAL_NET any -> $HOME_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 59|"; dsize:2;) 
reinject udp $EXTERNAL_NET any -> $HOME_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 28|"; ) 
reinject udp $EXTERNAL_NET any -> $HOME_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 50|";
dsize:4; ) 
reinject udp $EXTERNAL_NET any -> $HOME_NET any (msg:"P2P eDonkey eMule
Kad commands Server description response"; content:"|e4 40|";
dsize:48; ) 


Tambem estou usando as rules padroes do snort o arquivo p2p.rules e
tambem da bleeding-p2p.rules.

E assim que conseguirmos essa proesa, já vai ter artigo passo a passo
para a instalação e configuraçao do snort_inline +ipfw.

att

Tiago ISIC Brasil


Mais detalhes sobre a lista de discussão freebsd