Acesso direto ao conteúdo
Logotipo Dicas-L, por Ricardo Burile

Busca

Visite também: Segurança Linux ·  UnderLinux ·  VivaOLinux ·  LinuxSecurity ·  NoticiasLinux ·  BR-Linux ·  SoftwareLivre.org ·  [mais]   
 

Você está aqui: Home  → Arquivo Dicas-L

 

Curso de Inglês Online

Assine a Lista Dicas-L

Receba diariamente por email as dicas
de informática publicadas neste site
Para se descadastrar, clique aqui.

IPS HLBR - Versão 1.0 permite a detecção de tráfego malicioso com o uso de expressões regulares

Colaboração: João Eriberto Mota Filho

Data de Publicação: 12 de Março de 2006

O HLBR é um projeto brasileiro, baseado no Projeto Hogwash (http://hogwash.sf.net).

A versão 1.0 do Hogwash Light BR, lançada em 05 de março de 2006, traz uma interessante novidade: a possibilidade de uso de expressões regulares para a detecção de tentativas de intrusão, de e-mails com vírus ou phishing etc.

O HLBR é um IPS (Intrusion Prevention System) que lê o tráfego de rede na camada 2 do Modelo OSI (camada de enlace). Por atuar como uma bridge, fica in-line na topologia de rede e não precisa de endereço IP. Em conseqüência, o HLBR é invisível para os atacantes. A filtragem do tráfego (incluindo o conteúdo dos pacotes) pode ser feita com regras simples. A versão 1.0 inclui a possibilidade de uso de expressões regulares na filtragem. A seguir, um exemplo de regra utilizando expressões regulares:

  <rule>
  ip dst(email)
  tcp dst(25)
  tcp regex(filename="[^\n]+\.scr")
  message=(mailvirus-1-re) .scr attach
  action=virus
  </rule>

Em resumo, todo o tráfego TCP direcionado à porta 25 do servidor de e-mail será filtrado. Se for encontrado o texto filename="qualquer_coisa_diferente_de_quebra_de_linha.scr" dentro do pacote, significa que há um anexo .scr no e-mail (vírus). Em conseqüência, esse pacote sofrerá a ação denominada "virus". Essa ação faz o log da ocorrência, grava o tráfego malicioso em formato tcpdump e descarta o pacote. A seguir, um exemplo de regra contra um tipo de tentativa de bufferoverflow em servidores DNS:

  <rule>
  ip dst(dns)
  udp dst(53)
  udp nocase(|41cd 80c7 062f 6269 6ec7 4604 2f73 6800  89f0 83c0 0889 4608|)
  message=(dnsattacks-1) tsl bind attack
  action=action1
  </rule>

Nesse caso, em virtude do uso dos caracteres pipe (|), o HLBR irá checar o tráfego passante, byte a byte, pela seqüência hexadecimal informada como assinatura de ataque. Note que somente o tráfego direcionado à porta 53 UDP do servidor DNS será checado.

O HLBR permite a montagem de regras para o bloqueio de ataques a servidores de rede, tanto interna quanto externamente. Para entender melhor como funciona o IPS, inclusive com figuras explicativas, consulte o link http://hlbr.sourceforge.net/ips.html.

A instalação do HLBR é bem simples. Basta utilizar o famoso trio ./configure, make, make install. Há um README, em português, dentro do pacote que contém o código-fonte. Esse README explica, inclusive, como montar novas regras (o HLBR 1.0 já traz cerca de 100 regras consigo).

Há dois tipos de log possíveis. Um deles registra o fato ocorrido e, o outro, o tráfego malicioso em formato tcpdump. A seguir, um exemplo de log da ocorrência (alguns octetos foram mascarados):

  00831 22/02/2006 13:23:00 x.51.162.252:3324->
         y.z.48.244:80 (http-2-re) open proxy search
  00832 22/02/2006 13:25:55 x.175.55.194:3063->
         y.z.48.242:80 (webattacks-2-re) directory change 
         attempt (unicode,asc,plain)

Agora, os logs do tipo dump referentes aos dois casos anteriores:

  13:23:00.661777 IP x.51.162.252.3324 >
           y.z.48.244.www: P 1448357854:1448357917(63) 
  	 ack 1691128774 win 17520
  
  0x0000:  4500 0067 3a0e 4000 6b06 02c6 d233 a2fc  E..g:.@.k....3..
  0x0010:  c8fc 9490 0cfc 0050 5654 2fde 64cc 93c6  .......PVT/.d...
  0x0020:  5018 4470 30d1 0000 434f 4e4e 4543 5420  P.Dp0...CONNECT.
  0x0030:  3231 302e 3738 2e31 3438 2e31 3632 3a32  xxx.78.148.162:2
  0x0040:  3520 4854 5450 2f31 2e31 0d0a 486f 7374  5.HTTP/1.1..Host
  0x0050:  3a20 3231 302e 3738 2e31 3438 2e31 3632  :.xxx.78.148.162
  0x0060:  3a32 350d 0a0d 0a                        :25....
  13:25:55.965631 IP x.175.55.194.3063 > 
           y.z.48.242.80: P 0:339(339) ack 1 win 1452 
  	 <nop,nop,timestamp 1367990529 2076841557>
  
  0x0000:  4500 0187 a264 4000 3a06 770f c8af ffc2  E....d@.:.w.....
  0x0010:  c8fc 948e 0bf7 0050 6d60 2427 8b80 03ef  .......Pm`$'....
  0x0020:  8018 05ac 3f67 0000 0101 080a 5189 e101  ....?g......Q...
  0x0030:  7bca 1655 4745 5420 2f2e 2e2f 2e2e 2f65  {..UGET./../../e
  0x0040:  7463 2f20 4854 5450 2f31 2e30 0d0a 486f  tc/.HTTP/1.0..Ho
  0x0050:  7374 3a20 7777 772e 6761 6263 6d74 2e65  st:.www.xxxxxx.y
  0x0060:  622e 6d69 6c2e 6272 0d0a 4163 6365 7074  y.zzz.br..Accept
  0x0070:  3a20 7465 7874 2f68 746d 6c2c 2074 6578  :.text/html,.tex
  0x0080:  742f 706c 6169 6e2c 2061 7070 6c69 6361  t/plain,.applica
  0x0090:  7469 6f6e 2f78 2d74 726f 6666 2d6d 616e  tion/x-troff-man
  0x00a0:  2c20 6170 706c 6963 6174 696f 6e2f 782d  ,.application/x-
  0x00b0:  7461 722c 2061 7070 6c69 6361 7469 6f6e  tar,.application
  0x00c0:  2f78 2d67 7461 722c 2074 6578 742f 2a2c  /x-gtar,.text/*,
  0x00d0:  2061 7070 6c69 6361 7469 6f6e 2f78 2d64  .application/x-d
  0x00e0:  6562 6961 6e2d 7061 636b 6167 652c 2061  ebian-package,.a
  0x00f0:  7564 696f 2f62 6173 6963 2c20 2a2f 2a3b  udio/basic,.*/*;
  0x0100:  713d 302e 3031 0d0a 4163 6365 7074 2d45  q=0.01..Accept-E
  0x0110:  6e63 6f64 696e 673a 2067 7a69 702c 2063  ncoding:.gzip,.c
  0x0120:  6f6d 7072 6573 730d 0a41 6363 6570 742d  ompress..Accept-
  0x0130:  4c61 6e67 7561 6765 3a20 656e 0d0a 5573  Language:.en..Us
  0x0140:  6572 2d41 6765 6e74 3a20 4c79 6e78 2f32  er-Agent:.Lynx/2
  0x0150:  2e38 2e35 7265 6c2e 3120 6c69 6277 7777  .8.5rel.1.libwww
  0x0160:  2d46 4d2f 322e 3134 2053 534c 2d4d 4d2f  -FM/2.14.SSL-MM/
  0x0170:  312e 342e 3120 474e 5554 4c53 2f31 2e30  1.4.1.GNUTLS/1.0
  0x0180:  2e31 360d 0a0d 0a                        .16....

O log no formato tcpdump pode ser lido com o comando:

  # tcpdump -X -s 1500 -tttt -vvv -r \
          /var/log/hlbr/hlbr.dump host ip.de.pesquisa.desejado

Por estar no formato tcpdump, esse log também poderá ser analisado com o Ethereal.

O endereço do site do HLBR é http://hlbr.sourceforge.net.

Veja a relação completa dos artigos de João Eriberto Mota Filho

Formato PDF
Newsfeed RSS
Formato para impressão
PDF RSS Imprimir

Referências Adicionais

Referências adicionais sobre os assuntos abordados neste site podem ser encontradas em nossa Bibliografia.

Avalie esta dica

  • Currently 2.99/5
  • 1
  • 2
  • 3
  • 4
  • 5

Avaliação: 3.0 /5 (1275 votos)

Opinião dos Leitores

Seja o primeiro a comentar este artigo
*Nome:
Email:
Me notifique sobre novos comentários nessa página
Oculte meu email
*Texto:
 
  Para publicar seu comentário, digite o código contido na imagem acima
 


Powered by Scriptsmill Comments Script
Treinamentos, Consultorias e Soluçoes em TI. Baseados em softwares livres e padrões abertos para ambientes de missão crítica

Submarino.com.br

Objective-C Fundamental