[FUG-BR] RES: Filtro L7

Tiago Isic Brasil tiago em isic.com.br
Quarta Fevereiro 20 15:44:41 BRT 2008


Boa tarde!

Sr. Patrick, estou testando o snort_inline + ipfw como descrito no seu
email de resposta a lista referente ao bloqueio do P2P , só que não
estou tendo muito sucesso.

Eu queria só que você checasse onde pode estar errado e me dar um toque
no que pode-se ser realizado.
Quando concluir os testes poderei descrever para a lista o processo da
instalação e configuração dos arquivos.

Abaixo está minhas regras de firewall


Lembrando que está sendo realizado NAT com natd
#######################################################################
cmd="ipfw -q add"

#Interfaces de rede
int1="xl0"
ext1="fxp0"
skip="skipto 900"
network1="192.168.90.0/24"

#Libera trafego de qualquer lugar para lo0
$cmd 11 allow ip from any to any via lo0

#Bloqueia trafego de qualquer lugar para 127.0.0.0/8
$cmd 12 deny ip from any to 127.0.0.0/8

#Bloqueia trafego de 127.0.0.0/8 para qualqier lugar
$cmd 13 deny ip from 127.0.0.0/8 to any

#Aqui está a regra pelo que entendi no email do Patrick,  que é enviar
tudo que esteja tagged 30 para a regra de nr. 65500
$cmd 14 skipto 65500 log all from any to any tagged 30

#Libera o serviço SSH
$cmd 16 allow tcp from any to me 22 in via $ext1

#Conexoes já estabilizadas vao para a regra de divert 
$cmd 103 $skip tcp from any to any established

#Aqui está a minha duvida. A regra 900 recebe o trafego, blz, mas se eu
omitir ela e apenas usar a regra nr 901 não funciona nada.
#Quando inicio o snort ele abre o socket divert na porta 8000
$cmd 900  divert 8668 log ip4 from any to any
$cmd 901 divert 8000 log all from any to any

#Permite trafego de qualquer lugar para qualquer lugar.
$cmd 1000 allow log ip from any to any


#Como descrito no email do Patrick, o que for identificado pelo
snort_inline, vai para a regra 65500
$cmd 65499 deny log all from any to any
$cmd 65500 count tag 30 log all from any to any keep-state

#Bloqueia qualquer trafego de qualquer lugar
$cmd 65534 deny log ip from any to any
########################################################################


Meu snort_inline.conf
#######################################################################

#Redes

var HOME_NET [192.168.90.0/24]

var HONEYNET any
var EXTERNAL_NET any
var SMTP_SERVERS any
var TELNET_SERVERS any
var HTTP_SERVERS any
var SQL_SERVERS any
var HTTP_PORTS 80
var SHELLCODE_PORTS !80
var DNS_SERVERS any

#Manda para o ipfw

config ipfw_reinject_rule: 65500

var RULE_PATH /usr/local/share/snort_inline/rules

preprocessor flow: stats_interval 0 hash 2
output alert_fast: inline_fast

include /usr/local/share/snort_inline/classification.config
include /usr/local/share/snort_inline/reference.config


include $RULE_PATH/p2p.rules
include $RULE_PATH/bleeding-p2p.rules

###############################################################################

O que está acontencendo é o seguinte, no log do snort apareceu a
identificaçao do trafego dos testes que realizei com os programas mais
conhecidos como Emule,DreMule.
Mas nada foi enviado para a regra:

#ipfw show

00011    0       0 allow ip from any to any via lo0
00012    0       0 deny ip from any to 127.0.0.0/8
00013    0       0 deny ip from 127.0.0.0/8 to any
00014    0       0 skipto 65500 log logamount 100 ip from any to any
tagged 30
00020    2     156 allow icmp from any to any
00103 4772 2137400 skipto 900 tcp from any to any established
00900 5622 2237029 divert 8668 log logamount 100 ip4 from any to any
00901 5622 2237029 divert 8000 log logamount 100 ip from any to any
01000 5622 2237029 allow log logamount 100 ip from any to any
65499    0       0 deny log logamount 100 ip from any to any
65500    0       0 count log logamount 100 tag 30 ip from any to any
keep-state
65534    0       0 deny log logamount 100 ip from any to any
65535    0       0 deny ip from any to any

Bom queria uma orientação no que posso fazer.

Desde já agradeço

Tiago ISIC Brasil






Mais detalhes sobre a lista de discussão freebsd