You are on page 1of 9

PROJETO E DESENVOLVIMENTO DE UM SISTEMA DE CONTROLE

E ACOMPANHAMENTO DE NOTIFICAES DE SPAM


Cristine Hoepers

Klaus Steding-Jessen Marcelo H. P. C. Chaves


NIC BR Security Office NBSO
Comit Gestor da Internet no Brasil
{cristine,jessen,mhp}@nic.br

RESUMO
O envio de mensagens no solicitadas, conhecido como spam, uma das formas de abuso na Internet que
mais tem crescido nos ltimos anos. Neste artigo so discutidos brevemente o histrico e a evoluo do problema
na Internet e o impacto que o volume de reclamaes de spam gera no trabalho de grupos de resposta a incidentes
e abusos na Internet. Posteriormente so discutidos o projeto e a implementao de um sistema para controle e
acompanhamento de notificaes de spam, bem como os resultados obtidos aps sua implantao em um grupo
de resposta a incidentes.

ABSTRACT
The use of the Internet to send unsolicited email, also known as spam, has dramatically increased in the past
few years. In this paper we briefly discuss the history and the evolution of the problem, and the impact spam
complaints have on computer security incident response teams day-to-day operations. Then we present a tool
developed to control and keep track of spam notifications, as well as some results obtained after the tool has been
adopted by an incident response team.

INTRODUO

discutida a motivao para o desenvolvimento do


sistema e para a processamento de reclamaes relativas ao envio de spam. Na seo 3 discutida a viso
geral da arquitetura do sistema para controle e acompanhamento de notificaes de spam e na seo 4
descrita a implementao dos diversos mdulos que
o compem. Os resultados observados so apresentados na seo 5, as propostas para trabalhos futuros e
as concluses so discutidas nas sees 6 e 7, respectivamente.

O termo spam utilizado para descrever o envio indiscriminado de mensagens no solicitadas ou


com contedo inapropriado, especialmente em grandes quantidades e com teor comercial [1, 2].
A popularizao do termo spam para denotar o
envio em massa de emails no solicitados remonta
a um incidente ocorrido em abril de 1994, em que
dois advogados enviaram uma mensagem no solicitada, simultaneamente, para seis mil grupos de Usenet
News [3, 4].
Desde ento, o spam uma das formas de abuso
da Internet que mais tem crescido [4], sendo atualmente a origem de boa parte do volume de emails e
afetando o trfego na rede. Devido proporo que a
questo do spam tomou, vrias abordagens tcnicas
tm sido utilizadas para lidar com o problema, como por exemplo, implantao de recomendaes para
configurao de sistemas de email [5, 6], uso de listas
de bloqueio e de mecanimos de filtragem baseados em
caractersticas estatsticas de mensagens [7].
Em fevereiro de 2003 foi criado o Anti-Spam Research Group1 (ASRG), ligado Internet Research
Task Force (IRTF), com o objetivo de entender o problema do spam e coletivamente propor e avaliar solues [8].
Complementarmente s iniciativas mencionadas,
existem algumas entidades que se dedicam a receber
reclamaes de spam e redirecion-las para os responsveis pelas redes envolvidas com a atividade abusiva.
Neste artigo apresentado um sistema para controle e acompanhamento de reclamaes de spam recebidas destas entidades e os resultados obtidos aps
sua implantao em um grupo de resposta a incidentes.
Este artigo organizado como segue. Na seo 2

MOTIVAO

Grupos de segurana, tratamento de abusos e resposta a incidentes recebem diariamente um grande


volume de reclamaes relativas a abusos originados
ou destinados a suas redes. Devido a este grande volume necessrio um processo de triagem que normalmente prioriza o atendimento a incidentes envolvendo
ataques e comprometimentos de sistemas e redes, e
atividades que infrinjam as polticas de segurana de
suas instituies [9].
Reclamaes relativas a spam, mesmo no sendo diretamente relacionadas com incidentes considerados emergenciais, contm muitas informaes relevantes sobre sistemas que podem estar com problemas de configurao ou sendo abusados por terceiros.
A entidade SpamCop2 , por exemplo, possui um
servio que processa reclamaes de spam e as envia para os responsveis pelas redes envolvidas com
o abuso. Estas reclamaes envolvem mquinas com
proxies ou relays abertos, possivelmente sendo abusados, ou mquinas hospedando pginas com informaes de produtos e servios sendo oferecidos no spam
(spamvertised website).
2 http://www.spamcop.net/

1 http://www.irtf.org/asrg/

Um proxy [10] um servio que atua como intermedirio entre um cliente e um servidor, e um relay [11] uma funcionalidade do servio SMTP que
permite receber emails de clientes e retransmit-los,
sem modificaes, para outro servidor SMTP. Mquinas com proxies e relays abertos podem ser utilizadas
indiscriminadamente por terceiros para enviar spam,
dificultando a identificao da real origem. Proxies
abertos podem tambm ser usados como pontes para realizao de invases e desfiguraes de pginas
Web ou como meio de obter anonimato ao cometer
crimes como estelionato ou pornografia envolvendo
crianas [12].
Ao receber informaes sobre mquinas mal configuradas e possivelmente sendo abusadas em sua rede, um administrador ou analista de segurana pode
rapidamente solucionar o problema e evitar que sua
rede seja utilizada indevidamente por terceiros.
O grupo de resposta a incidentes onde o sistema
aqui apresentado foi desenvolvido recebe diariamente
cerca de 8.500 emails em seu endereo destinado a
reclamaes de spam. Destes emails, cerca de 90%
so reclamaes enviadas pelo SpamCop, como podese ver na Tabela 1.

o processamento efetivo apenas das mensagens recebidas da instituio SpamCop e dos seguintes tipos:
proxy aberto, relay aberto e spamvertised website.
Este sistema foi projetado para desempenhar as
seguintes funes:
processar reclamaes de spam, identificando
aquelas que so provenientes do SpamCop e
dos tipos sendo tratados;
agrupar as reclamaes do SpamCop por responsveis pelas redes e tipo de abuso;
gerar notificaes para os responsveis pelas redes e mquinas presentes nas reclamaes do
SpamCop;
gerar estatsticas relativas ao tipo de abuso notificado e manter um histrico relativo a cada
rede;
gerar estatsticas relativas s redes sendo abusadas para envio de spam, considerando nmero
de endereos IP listados, reincidncias, etc;
gerar estatsticas gerais sobre todas as reclamaes de spam recebidas.

Tabela 1: Total de mensagens recebidas no primeiro semestre de 2003 pelo grupo de resposta a abusos, mensagens enviadas pelo SpamCop e respectiva porcentagem.

Ms
jan
fev
mar
abr
mai
jun
Total

Mensagens
163.213
203.897
194.278
326.916
364.668
297.504
1.550.476

SpamCop
141.805
179.332
167.151
292.583
332.430
270.314
1.383.615

ARQUITETURA DO SISTEMA

O sistema em questo lida essencialmente com arquivos contendo mensagens de reclamao de spam
(mailboxes) e sua arquitetura composta por dois mdulos: acompanhamento de notificaes e gerao de
estatsticas. Estes so subdivididos em mdulos menores, como pode ser visto na Figura 1, e sero descritos posteriormente.

%
86.88
87.95
86.04
89.50
91.16
90.86
89.24

reclamao de spam

email

Das reclamaes enviadas pelo SpamCop, aquelas relativas a proxies e relays abertos e spamvertised
website possuem um formato bem definido e constituem a maioria absoluta, como pode ser visto na Tabela 2.

notificaes

spamctl
IP, tipo
e dados de
notificao

IP
contatos

mailbox

getcontact

IP, tipo
e dados de
reclamaes

entrada

email

IP
contatos

spamctlstat

quantidades
dirias

dados
agrupados
por IP e tipo

notificao
estat. gerais

spamctlmgr

spamctlstatmgr

estat. por IP

Tabela 2: Reclamaes dos tipos spamvertised website,


proxy aberto e relay aberto, recebidas do SpamCop.

Ms
jan
fev
mar
abr
mai
jun
Total

Spamv.
53.843
88.732
65.511
189.851
216.824
152.521
767.282

Proxy
31.670
47.058
60.837
56.050
59.981
56.197
311.793

Relay
1.127
712
779
225
471
583
3.897

notify

email

Acompanhamento de notificaes
Gerao de Estatsticas

Outros
55.165
42.822
40.021
46.448
55.138
60.991
300.585

relat.
(tab.)

relat.
(graf.)

SMTP

Figura 1: Interao e fluxo de dados entre mdulos e meios


de armazenamento.

A entrada de dados destes dois mdulos consiste


em um arquivo contendo todos os emails de reclamao de spam recebidos. As sadas do sistema so:
mdulo de acompanhamento de notificaes: mensagens de notificao, contendo informaes agrupadas, sobre abusos provenientes de diversas redes com

Considerando as caractersticas citadas acima, decidiu-se desenvolver um sistema que inicialmente far
2

um mesmo responsvel.

de reclamao sejam agrupadas antes do envio.

mdulo de gerao de estatsticas: relatrios com


informaes sumarizadas para todos os tipos de reclamaes e sobre as redes com maior nmero de reclamaes registradas, agrupadas por responsvel ou
por bloco CIDR3 .

spamctl-mgr: utilizado para mover dados do arquivo de entrada para o arquivo de notificao, em
casos que fujam regra geral do perodo de permanncia, citado na descrio do mdulo spamctl.
3.2

Seguem descries das funcionalidades dos grandes mdulos integrantes do sistema.


3.1

Gerao de Estatsticas

Este mdulo responsvel por contabilizar e armazenar informaes utilizadas na gerao de estatsticas sobre as reclamaes de spam.
Seguem breves descries dos mdulos menores
que constituem o mdulo de gerao de estatsticas.

Acompanhamento de Notificaes

Este mdulo agrupa dados de reclamaes e envia


mensagens de notificao contendo tais dados para os
responsveis pelas redes envolvidas.
As reclamaes processadas so usualmente recebidas em intervalos de tempo curtos, contendo informaes relativas a um mesmo endereo IP e a um
mesmo tipo ou relativas a endereos IP diferentes,
mas com um mesmo responsvel de contato.
Dada esta caracterstica optou-se por agrupar reclamaes, referentes a redes administradas por um
mesmo responsvel e com o mesmo tipo de reclamao, respeitando um certo perodo pr-determinado de
tempo.
Deste modo, cada notificao enviada pode possuir um relatrio consolidado com os dados referentes
a diversas reclamaes recebidas dentro do perodo de
tempo pr-determinado, que corresponde ao perodo
de permanncia mximo no sistema.
Seguem breves descries dos mdulos menores
que constituem o mdulo de acompanhamento de notificaes.

spamctl-stat: responsvel por identificar e extrair das reclamaes de spam as informaes a serem
armazenadas em dois arquivos que sero utilizados
pelo mdulo spamctl-stat-mgr. O primeiro arquivo, utilizado para estatsticas gerais, armazena para
todas as reclamaes a quantidade diria de cada uma
das categorias. O segundo arquivo armazena dados
das reclamaes efetivamente tratadas por este sistema, agrupadas pelo par endereo IP e tipo de reclamao, acompanhadas das informaes de contato e de
bloco CIDR obtidas pelo mdulo getcontact. Este
arquivo utilizado na gerao das estatsticas por endereo IP.
spamctl-stat-mgr: responsvel por emitir relatrios sobre as reclamaes de spam, com base nos
dados armazenados nos arquivos de estatsticas gerados pelo mdulo spamctl-stat. Tais relatrios podem conter informaes sobre:
nmero de reclamaes de diversas categorias,
com valores dirios e totais, extradas do arquivo de estatsticas gerais;

spamctl: responsvel por agrupar, em um arquivo


de entrada, dados de reclamaes de spam que envolvam o mesmo endereo IP e o mesmo tipo. Quando o
perodo de permanncia mximo destes dados no arquivo de entrada alcanado, eles so movidos para
o arquivo de notificao. Este arquivo processado
para gerar a sada deste mdulo, que composta pelos dados das reclamaes, agrupados por endereo
IP e tipo, acompanhados dos dados de contato, obtidos atravs do mdulo getcontact.

nmero de reclamaes especficas por endereo IP, responsvel ou bloco CIDR, extradas do
arquivo de estatsticas por IP;
redes que possuem o maior nmero de reclamaes associadas, em ordem decrescente, e agrupadas por responsveis ou CIDRs.

getcontact: retorna uma lista de contatos responsveis por um dado endereo IP e, opcionalmente, o
bloco CIDR ao qual este endereo pertence. Estes dados so obtidos atravs de consultas a servidores de
WHOIS4 .

IMPLEMENTAO

Como a funo bsica do sistema aqui apresentado processar reclamaes de spam, que so mensagens de texto, fez-se necessrio escolher uma linguagem de programao que facilite esse processamento
e que permita extrair, de forma simples, partes relevantes de tais mensagens.
Portanto, o sistema foi desenvolvido na liguagem
Perl por ser esta uma linguagem fortemente indicada
para o processamento de textos, de fcil compreenso
e com alto grau de portabilidade.

notify: responsvel pela gerao e envio de notificaes por email, a partir das mensagens fornecidas
pelo mdulo spamctl. Permite que diversas notificaes contendo o mesmo responsvel e o mesmo tipo
3 http://www.ietf.org/rfc/rfc1518.txt
4 http://www.ietf.org/rfc/rfc954.txt

em ordem crescente. Este tipo de registro armazenado no arquivo de estatsticas por IP.

As subsees seguintes apresentam as estruturas


de dados utilizadas pelo sistema, detalhes da implementao de cada um de seus mdulos e uma breve
discusso sobre mtodos de programao segura levados em considerao durante o seu desenvolvimento.
4.1

4.2

Mdulos

Antes de discutir a implementao, faz-se nescessrio apresentar algumas consideraes relacionadas


execuo dos mdulos spamctl e spamctl-stat.
Estas consideraes so:

Estruturas de Dados

As informaes extradas das reclamaes so armazenadas em tabelas hash [13] que, em Perl, so estruturas intrnsecas da linguagem [14]. Estas estruturas podem ser armazenadas tanto em memria como
em disco.
Convencionou-se neste artigo que o termo registro
denota um par chave/valor de uma tabela hash e que
o termo arquivo refere-se a um hash armazenado em
disco.
Seguem as descries dos dados contidos em cada um dos registros manipulados pelos mdulos que
compem o sistema.

Antes de iniciar o processamento das reclamaes, so feitas cpias de segurana dos arquivos manipulados pelos mdulos citados acima.
A idia possibilitar a recuperao destes arquivos, em um estado consistente, caso ocorra
algum problema durante seus processamentos;
Por questes de desempenho, os registros armazenados em arquivos so carregados para tabelas hash em memria e, somente depois de
processadas todas as reclamaes, os registros
atualizados em memria so descarregados para os respectivos arquivos;

registro de entrada: a chave deste registro composta pelo endereo IP e pelo tipo de reclamao. O valor associado a cada chave composto pelos seguintes dados: data de criao do registro (timestamp),
contatos responsveis pelo endereo IP, lista das datas
de recebimento das reclamaes associadas, menor e
maior data nesta lista, e textos contendo as partes relevantes de cada reclamao5 . Este tipo de registro
armazenado no arquivo de entrada.

Alguns procedimentos dos mdulos acima citados verificam se o IP extrado de cada reclamao pertence a alguma rede brasileira, consultando uma lista de blocos CIDR alocados para
o Brasil6 .
Seguem as descries de alguns detalhes de implementao dos mdulos que constituem este sistema.

registro de notificao: contm partes dos dados de


um registro de entrada. Sua chave composta pelo
endereo IP, pelo tipo de reclamao e pela data em
que foi criado (timestamp). O valor associado a cada chave composto pelos seguintes dados: contatos
responsveis pelo endereo IP e textos contendo as
partes relevantes de cada reclamao, como descrito
para o registro de entrada. Este tipo de registro armazenado no arquivo de notificao.

4.2.1

spamctl

O mdulo spamctl recebe como parmetros o perodo de permanncia mximo dos dados de reclamaes nos registros de entrada e os mailboxes que devero ser processados. Para cada reclamao de spam
em um mailbox especificado, o mdulo verifica se ela
foi enviada pelo SpamCop e se de algum tipo efetivemente tratado. Em caso afirmativo, executa os seguintes passos:

registro de estatsticas gerais: as chaves destes registros so as datas em que houve recebimento de reclamaes. O valor associado a cada chave corresponde contagem diria de reclamaes. Ele composto
pelo total de reclamaes e por subtotais para cada
uma das categorias. Este tipo de registro armazenado no arquivo de estatsticas gerais.

1. Extrai o endereo IP envolvido e verifica se pertence a alguma rede brasileira;


2. Extrai a data de recebimento e o texto contendo
a parte relevante da reclamao;
3. Busca pelo registro de entrada associado por
um mesmo IP e tipo. Se no encontrar, obtm
os contatos responsveis pelo IP, cria um novo registro e o preenche com os dados obtidos
neste passo;

registro de estatsticas por IP: a chave de cada registro composta pelo endereo IP e pelo tipo de reclamao. O valor associado a cada chave composto
pelos seguintes dados: contatos responsveis pelo endereo IP, bloco CIDR ao qual o IP pertence, e lista
das datas de recebimento das reclamaes associadas,

6 Esta lista gerada a partir de arquivos fornecidos mensalmente


pelo ARIN (ftp://ftp.arin.net/pub/stats/arin) e LACNIC
(ftp://ftp.lacnic.net/pub/stats/lacnic).

5 As

partes relevantes de uma reclamao contm o tipo, o endereo IP envolvido, a data de envio e a pgina Web no site do
SpamCop que referencia a reclamao.

4. Acrescenta a data de recebimento lista de datas associadas. Atualiza a menor data ou a maior data, comparando-as com a data de recebimento;

Os emails de contato so obtidos atravs do processamento das consultas ao servidor WHOIS. Por
questes de eficincia mantido um um cache das informaes por bloco CIDR, de modo que prximas
consultas a endereos IP contidos nesse bloco estaro disponveis de imediato, sem necessidade de uma
consulta externa.
Os emails obtidos nas consultas so ento comparados com uma tabela de converso, que permite
que determinados endereos possam ser inseridos ou
complementados. Isso particularmente til para informaes de contato incorretas ou incompletas.

5. Acrescenta o texto contendo a parte relevante


da reclamao aos outros j agrupados (se existirem);
6. Verifica se a diferena entre a maior e a menor
data excede o perodo de permanncia mximo
estipulado. Em caso positivo, move os dados
do registro de entrada para um novo registro de
notificao.

4.2.3
A sada do spamctl gerada aps o processamento de todas as reclamaes, com base nos registros de
notificao, e direcionada para um arquivo no formato
ASCII. Este arquivo posteriormente utilizado como
entrada para o mdulo notify (seo 4.2.3). A Figura 2 apresenta um exemplo dessa sada.

O mdulo notify recebe como entrada um arquivo com blocos de texto contendo campos de contato,
subject e logs. Um exemplo desse tipo de arquivo de
entrada mostrado na Figura 2.
Os blocos que possuem as mesmas informaes
de contato e mesma categoria de subject so agrupados8 e separados por delimitadores, para facilitar
a leitura.
Na verso agrupada, os componentes variveis do
campo subject, como endereos IP, so substitudos
por um contador que indica o nmero de diferentes
endereos IP contidos nos logs.
O mdulo permite a escolha de um texto padro,
inserido no incio de cada notificao, alm da escolha
do contedo de alguns headers de email, tais como
Cc:, Reply-To:, From:, etc.

To: contato@dominio-1.example.net
Subject: <192.0.2.1> - host(s) listado(s) como Open Proxy
---begin logs--http://spamcop.net/w3m?i=z317681570zbbd5aabe9ea8df0f191699cc00e09b2az
Email from 192.0.2.1 / Mon, 30 Jun 2003 19:23:28 +0200 (MEST)
> 192.0.2.1 is an open proxy, more information:
> http://spamcop.net/mky-proxies.html
...
http://spamcop.net/w3m?i=z323226007z75a49a5159310205406c1e915807d2f7z
Email from 192.0.2.1 / Sat, 5 Jul 2003 01:05:27 +1000
> 192.0.2.1 is an open proxy, more information:
> http://spamcop.net/mky-proxies.html
---end logs--To: contato@dominio-2.example.net
Subject: <192.0.2.2> - host(s) listado(s) como Open Relay
---begin logs--http://spamcop.net/w3m?i=z317819502z2445e6397f8b011e4b16a89d0d1845e5z
Email from 192.0.2.2 / 30 Jun 2003 18:43:28 -0000
> 192.0.2.2 is an open relay, more information:
> http://spamcop.net/mky-relay.html
...
http://spamcop.net/w3m?i=z323168673za2ddeb8f0f87efd639f023e528c6e186z
Email from 192.0.2.2 / Fri, 4 Jul 2003 20:40:46 -0300
> 192.0.2.2 is an open relay, more information:
> http://spamcop.net/mky-relay.html
---end logs---

4.2.4

spamctl-mgr

O mdulo spamctl-mgr foi implementado para


tratar de casos especficos, onde a diferena entre a
maior e a menor data de recebimento nos registros de
entrada no alcana o perodo de permanncia mximo utilizado na execuo do mdulo spamctl (seo 4.2.1).
O mdulo aplica um procedimento que verifica se
a diferena entre a data atual e a data de criao de
cada registro de entrada maior ou igual a um determinado nmero de dias, fornecido como parmetro.
Em caso positivo, os dados deste registro so movidos para um novo registro no arquivo de notificao.

Figura 2: Sada gerada pelo mdulo spamctl.

4.2.2

notify

getcontact

O mdulo getcontact faz consultas a servidores WHOIS utilizando o programa jwhois7 , devido
s seguintes funcionalidades:
realizao de consultas sempre para o servidor
mais especfico, atravs de um arquivo de configurao extensvel;

4.2.5 spamctl-stat

possibilidade de redirecionamento da consulta


para outro servidor, em funo da resposta obtida;

O mdulo spamctl-stat recebe como parmetro os mailboxes a serem processados. Para cada reclamao de spam em um mailbox especificado, so
executados os seguintes passos:

manuteno de um cache das informaes obtidas, por endereo IP.

1. Extrai a data de recebimento e obtm o respectivo dia;


8 O limite mximo de agrupamento, ou mesmo a opo de no
agrupar, configurvel.

7 http://www.gnu.org/software/jwhois/

marcar dados que provm de fora do programa,


como argumentos de linha de comando, variveis de ambiente e contedo de arquivos, inicialmente como tainted. Deste modo estes
dados no podem ser usados em comandos que
invoquem shells, modifiquem arquivos, diretrios ou processos. Para que eles possam ser utilizados, o programador precisa explicitamente
selecionar um subconjunto vlido da entrada de
dados;

2. Faz um busca nos registros de estatsticas gerais


pelo dia obtido. Se no encontrar, cria um novo
registro e inicializa seus contadores;
3. Incrementa o contador do total de reclamaes.
Identifica a categoria em que se enquadra a reclamao e incrementa o contador correspondente;
4. Se foi enviada pelo SpamCop e se de algum
tipo efetivamente tratado:

obrigar que o programa defina explicitamente


uma varivel de ambiente PATH, e que os diretrios que o compem tenham permisso de
escrita apenas para o seu dono (owner) e grupo.

(a) Extrai o endereo IP envolvido e verifica


se pertence a alguma rede brasileira;
(b) Faz um busca pelo registro de estatsticas
por IP, por uma chave com o mesmo endereo IP e tipo. Se no encontrar, obtm
os contatos responsveis pelo IP e o bloco CIDR ao qual este IP pertence, cria um
novo registro e o preenche com os dados
obtidos;

Tambm foram utilizados outros recursos de segurana do Perl, como a possibilidade de executar um
programa externo sem a interveno da shell, diminuindo assim os riscos com relao interpretao de
metacaracteres.
Alm destes cuidados, os mdulos tambm foram
submetidos anlise da ferramenta de auditoria de cdigo fonte RATS9 , procura de problemas conhecidos de segurana.

(c) Acrescenta a data de recebimento lista


de datas associadas, mantendo-a em ordem crescente.
Ao final da execuo deste mdulo, esto atualizados os conjuntos de registros de estatsticas gerais e
de estatsticas por IP.
4.2.6

Os resultados aqui apresentados, produzidos pelo sistema de controle e acompanhamento de notificaes de spam, referem-se tanto s notificaes que
j foram enviadas para os responsveis envolvidos,
quanto aos relatrios contendo dados estatsticos extrados das reclamaes de spam.

spamctl-stat-mgr

Este mdulo manipula os arquivos de estatsticas


gerais e de estatsticas por IP, e recebe como parmetro o tipo de estatstica a ser gerada.
Os relatrios gerados so apresentados na forma
de tabelas, onde cada linha contm o nmero de reclamaes de spam dirias para as diversas categorias
e seu respectivo total. Um relatrio tambm pode ser
gerado apenas para um perodo especfico.
Para os relatrios de estatsticas por IP, pode-se
optar pela apresentao de dados agrupados por endereo IP, bloco CIDR ou responsvel. Tambm
possvel apresentar os dados de forma a gerar tabelas
por responsvel ou bloco CIDR das redes com maior
nmero de reclamaes associadas, apresentadas em
ordem descresente do nmero de reclamaes.
4.3

RESULTADOS

5.1

Notificaes Enviadas

O mdulo responsvel pelo envio das notificaes


entrou em produo em 30/06/2003.
At o dia 30/07/2003 foram geradas 14.607 notificaes, agrupadas em 957 mensagens, que foram,
ento, enviadas para os devidos responsveis. Foram
identificados 11.287 endereos IP distintos em tais
notificaes, provenientes de diversas redes brasileiras.
Alguns dos responsveis que receberam as notificaes enviadas tm se mostrado receptivos, interagindo com o grupo de resposta a incidentes que desenvolveu este sistema para solucionar seus respectivos problemas.

Aplicao de Mtodos de Programao Segura

Todos os mdulos foram implementados com especial ateno para diversos aspectos de programao segura [15], devido ao fato de manipularem dados
potencialmente no confiveis, enviados por terceiros
via email.
Alm da observao de aspectos de programao
segura, foi adotado um recurso de segurana da linguagem Perl, denominado taint mode [16]. Neste
modo, o interpretador Perl toma algumas precaues
de segurana, tais como:

5.2

Relatrios com as Estatsticas Geradas

Para gerar os dados estatticos extrados de reclamaes de spam, foi considerado um perodo diferente do apresentado na seo 5.1.
9 http://www.securesoftware.com/rats/

Foram utilizados mailboxes contendo todas as reclamaes de spam (1.550.476) recebidas entre os dias 01/01/2003 e 30/06/2003, correspondendo ao primeiro semestre de 2003.
Seguem os resultados gerados com base nos dados armazenados nos arquivos de estatsticas gerais e
de estatsticas por endereo IP, para o perodo citado
acima.
5.2.1

Confirmou-se, tambm, que a maior parte das reclamaes recebidas, cerca de 80%, so dos tipos efetivamente tratados pelo sistema. Porm, existe um nmero expressivo (300.585) de reclamaes no tratadas, que necessitam ser processadas no futuro.
5.2.2

Estatsticas por Endereo IP

O grfico da Figura 4 foi criado com base em dados de estatsticas por IP, armazenados pelo sistema.
Nele so apresentados os 10 blocos CIDR com o maior nmero de reclamaes associadas, em ordem decrescente. Foi considerado o somatrio das reclamaes dos tipos proxy aberto, relay aberto e spamvertised website.

Estatsticas Gerais

O grfico da Figura 3 foi criado com base em dados de estatsticas gerais, armazenados pelo sistema.
Segue uma breve discusso sobre os dados observados neste grfico.

106

10

Total

Spamvertised
Proxy aberto
Relay aberto
Outros

105

105

104

104

103

200.206/16

200.194.192/19
200.189.160/19
200.153/16
200.232.77/24
200.168/16
200.171/16
200.162.240/20
200.207/16
200.155/19

Figura 4: Redes com maior nmero de reclamaes associadas, agrupadas por bloco CIDR. Utilizada escala logartmica.

102

101
01/jan

01/fev

01/mar

01/abr

01/mai

01/jun

Dentre todas as reclamaes associadas a esses 10


blocos CIDR, foram contabilizados cerca de 6000 endereos IP distintos. Para a grande maioria destes
IPs foi possvel determinar o nome completo de domnio (Fully Qualified Domain Name) a eles associados, atravs de uma consulta de DNS reverso. Mais da
metade desses nomes sugerem que estes endereos IP
estavam sendo utilizados na prestao de servios envolvendo o acesso Internet via banda larga (ADSL,
cable modem, etc).
O fornecimento de relatrios agrupados por blocos CIDR pode auxiliar organizaes a:

30/jun

Figura 3: Totais reportados no primeiro semestre de 2003.


Utilizada escala logartmica.

Das reclamaes envolvendo mquinas possivelmente sendo abusadas por terceiros, aquelas referentes a proxies abertos totalizaram 311.793, o que corresponde a aproximadamente 25%. J as reclamaes
referentes a relays abertos somaram apenas 3.897, representando menos de 0,1% do total. Acredita-se que
esta grande diferena, entre o nmero de reclamaes
do primeiro tipo em relao ao segundo, est relacionada com a popularizao dos servios de acesso
Internet via banda larga, como ADSL, cable modem,
etc. As mquinas conectadas atravs de banda larga muitas vezes possuem um servidor proxy instalado
com sua configurao padro, que permite que o servio seja abusado por terceiros [12].
Tambm interessante observar que as reclamaes do tipo spamvertised website somaram 767.282,
correpondendo a 55% do total. Este no um problema apenas tcnico, mas sim uma questo de poltica
de uso dos recursos da rede. Para resolv-lo necessrio que os responsveis por estas redes apliquem
Polticas de Uso Aceitvel que tenham regras claras
sobre a utilizao dos recursos e aes a serem tomadas em casos de abuso.

relacionar reclamaes de spam associadas a


um determinado bloco CIDR sob sua responsabilidade com, por exemplo, um determinado
servio sendo prestado;
focar seus esforos em partes de suas redes que
apresentem o maior nmero de reclamaes e,
conseqentemente, o maior nmero de possveis problemas de segurana.
O sistema tambm permite gerar relatrios contendo dados agrupados por responsvel de contato.
A Figura 5 apresenta 3 grficos, separados por tipo
de reclamao efetivamente tratada pelo sistema, cada um contendo as 10 redes com o maior nmero de
reclamaes associadas.
As informaes contidas nestes grficos podem
ser utilizadas no s para os mesmos propsitos re7

lacionados ao grfico da Figura 4, mas tambm para que os responsveis possam identificar quais problemas so mais iminentes e, at mesmo, estabelecer
uma ordem de prioridade para combat-los.
106

efetivo deste tipo de reclamao. O processamento


manual de tais reclamaes implicaria na alocao de
diversas pessoas desse grupo para trabalhar em tempo
integral na leitura dessas mensagens, e mesmo assim
no asseguraria que fossem tratadas em tempo hbil.
Deste modo, o sistema mostrou ser uma ferramenta
eficiente e de grande importncia para grupos de segurana, tratamento de abusos e resposta a incidentes
que recebem este tipo de reclamao.
Devido ao curto intervalo de tempo desde o momento que o sistema entrou em produo, no foi possvel avaliar se o envio de notificaes para os responsveis pelas redes envolvidas nas reclamaes de
spam colaborou para a reduo destas atividades abusivas. Mas, espera-se que com o passar do tempo, as
notificaes enviadas por este ou por qualquer outro
grupo que venha a utilizar o sistema, possam auxiliar
na reduo de tais atividades, bem como dos problemas de segurana relacionados.
As estatsticas geradas pelo sistema tambm podem ser utilizadas com os mesmos propsitos citados anteriormente. Num primeiro momento, a anlise destas estatsticas pode direcionar os esforos, por
parte dos responsveis, para que busquem solues
para problemas srios e emergenciais associados a suas redes. Num segundo momento, estas estatsticas
podem ser utilizadas para avaliar se as reclamaes,
de determinado tipo de abuso e associadas a uma rede, reduziram ou at mesmo cessaram.

Spamvertised

105

104

telefonica
tbline
impsat

diveo

ajato
ehosting
uaiminas
comdominio
telemar
stech

10

Proxy Aberto

105

104

103

telefonica
ajato
brasiltelecom mcmtelecom
fisepe
telemar
embratel
diveo
linkexpress
telepar

104

Relay Aberto

103

102

101

telefonica
ajato

embratel
copel
telepar
comdominio
telemar
intelig
diveo
ufscar

Figura 5: Redes com maior nmero de reclamaes associadas, agrupadas por contato e separadas por tipo. Utilizada
escala logartmica.

AGRADECIMENTOS
Os autores gostariam de agradecer a Frederico A.
C. Neves e a Hugo K. Kobayashi, do Registro .br, e
a Ricardo G. Patara, do LACNIC, pelo apoio dado a
este projeto.

TRABALHOS FUTUROS

O sistema de controle e acompanhamento de notificaes de spam aqui apresentado trata apenas reclamaes enviadas pelo SpamCop, de determinados
tipos e que contm padres bem definidos.
Desta forma, pretende-se expandir o sistema para que possa tratar reclamaes enviadas pelo SpamCop, dos tipos que no foram efetivamente contemplados na atual implementao e, tambm, enviadas
por outras fontes que, por ventura, forneam servio
semelhante ao do SpamCop.
Alm disso, planeja-se adequar e aplicar o sistema
no controle e acompanhamento de reclamaes envolvendo outras formas de atividades abusivas. Um
exemplo seria aplic-lo no tratamento de reclamaes
que discriminem eventos relacionados com worms.
7

REFERNCIAS
[1] R. Shirey, RFC 2828: Internet Security Glossary. http://www.ietf.org/rfc/rfc2828.
txt, May 2000.
[2] S. Hambridge and A. Lunde, RFC 2635:
DONT SPEW A Set of Guidelines for Mass
Unsolicited Mailings and Postings (spam).
http://www.ietf.org/rfc/rfc2635.txt,
June 1999.
[3] R. Zakon, RFC 2235: Hobbes Internet Timeline. http://www.ietf.org/rfc/rfc2235.
txt, November 1997.
[4] B. Hayes, Spam, spam, spam, lovely spam,
American Scientist, vol. 91, pp. 200204, May
June 2003.

CONCLUSES

A automatizao de boa parte do processo de anlise e tratamento de reclamaes de spam tem permitido que o grupo de resposta a incidentes, onde o sistema foi implementado, realize um encaminhamento

[5] G. Lindberg, RFC 2505: Anti-Spam Recommendations for SMTP MTAs. http://www.
ietf.org/rfc/rfc2505.txt, February 1999.
8

[6] T. Killalea, RFC 3013:


Recommended
Internet Service Provider Security Services
and Procedures. http://www.ietf.org/rfc/
rfc3013.txt, November 2000.
[7] P. Graham, A Plan for SPAM. http://www.
paulgraham.com/spam.html, August 2002.
[8] D. Crocker, V. Schryver, and J. Levine,
Internet Draft:
Technical Considerations for Spam Control Mechanisms.
http://www.ietf.org/internet-drafts/
draft-crocker-spam-techconsider-02.
txt, May 2003.
[9] M. J. W. Brown, D. Stikvoort, K. P. Kossakowski, G. Killcrece, R. Ruefle, and M. Zajicek, Handbook for Computer Security Incident
Response Teams. Carnegie Mellon University,
2nd ed., April 2003. CMU/SEI-2003-HB-002.
[10] M. Chatel, RFC 1919: Classical versus Transparent IP Proxies. http://www.ietf.org/
rfc/rfc1919.txt, March 1996.
[11] J. Klensin, RFC 2821: Simple Mail Transfer Protocol. http://www.ietf.org/rfc/
rfc2821.txt, April 2001.
[12] CERT Coordination Center, Vulnerability Note
VU#150227 Multiple vendors HTTP proxy
default configurations allow arbitrary TCP connections via HTTP CONNECT method. http:
//www.kb.cert.org/vuls/id/150227, June
2003.
[13] B. W. Kernighan and R. Pike, The Practice of
Programming. Addison-Wesley, 1999.
[14] L. Wall, T. Christiansen, and R. L. Schwartz,
Programming Perl. OReilly & Associates,
2nd ed., 1996.
[15] J. Viega and G. McGraw, Building Secure Software: How to Avoid Security Problems the Right
Way. Addison-Wesley, 2002.
[16] Perl Programmers Reference Guide: perlsec
Perl security. http://www.perldoc.com/
perl5.8.0/pod/perlsec.html.

You might also like