9
Abstract— Spams and Phishing Scams are some of the abuse forms on the Internet that have grown up now. These abuses influence in user's routine of electronic mail and in the infrastructure of Internet communication. So, this paper proposes a new model messages filter based in Euclidian distance, beyond show the containment's methodologies currently more used. A new model messages filter, based in frequency’s distribution of character present in your content and in signature generation is described. An architecture to combat Phishing Scam and spam is proposed in order to contribute to the containment of attempted fraud by mail. Keywords— Spam, Phishing Scam, e-mail, Signature. I. NOMENCLATURA ASA: ACME! Spam signAture DNS: Domain Name System HTML: HyperText Markup Language IP: Internet Protocol MIME: Multipurpose Internet Mail Extensions MDA: Mail Delivery Agent MTA: Mail Transfer Agent PHP: Hipertext PreProcessor RBL: Real Time Balcklist SMTP: Simple Mail Transfer Protocol SPAM: SPiced hAM SPF: Sender Policy Framework TCP: Transnission Control Protocol II. INTRODUÇÃO CORREIO eletrônico é uma das aplicações que mais cresceu e se desenvolveu nos últimos tempos. Segundo Tanenbaum [1], antes de 1990, o correio eletrônico era utilizado principalmente nos meios acadêmicos. Depois dos Estre trabalho foi financiado pela FAPESP através do processo 2008/09054-8. I. L. Oliveira e A. M. Cansian pertencem ao Laboratório ACME! de Pesquisa em Segurança da UNESP – Universidade Estadual Paulista, Campus de São José do Rio Preto, Rua Cristóvão Colombo, 2265, CEP 15054-000 S. J. Rio Preto, SP – Brasil (e-mails: [email protected]; [email protected]). J. L. Corrêa é pesquisador do MCT (Ministério da Ciência e Tecnologia) vinculado ao Instituto Nacional de Ciência e Tecnologia – Sistemas Embarcados Críticos MCT (Ministério da Ciência e Tecnologia) vinculado ao Instituto Nacional de Ciência e Tecnologia – Sistemas Embarcados Críticos, Laboratório ACME! de Pesquisa em Segurança, Depto. de Ciências de Computação e Estatística, UNESP – Universidade Estadual Paulista, Campus de São José do Rio Preto – SP – Brazil. ([email protected]). anos 90, ele ficou conhecido para o público em geral e seu uso cresceu vertinosamente. Esse crescimento se deve ao fato de que o correio eletrônico é rápido, fácil de distribuir e barato enquanto que o correio convencional é mais lento [2]. Nos últimos tempos o correio eletrônico tem sido utilizado não apenas para facilitação do transporte de mensagens, mas para disseminação de informações não solicitadas e tentativas de fraudes eletrônicas. Spam é o termo utilizado para referir- se as mensagens não solicitadas enviadas em massa para grandes listas de destinatários. O Phishing Scam é uma modalidade de spam cujo objetivo é lesar diversos destinatários, enviando falsos avisos e anúncios, ou mensagens de caráter apelativo. A utilização dos serviços de correio eletrônico indevidamente tem causado diversos problemas. Usuários são afetados pelo não recebimento de novas mensagens devido à lotação de suas caixas, perda de tempo em sua identificação e eliminação, além de estarem sujeitos às tentativas de fraudes. No âmbito de infra-estrutura, este mau uso pode impactar na banda utilizada pela empresa ou instituição, má utilização dos equipamentos dedicados aos serviços de correio além de requerer investimentos para contra medidas. O relatório divulgado pela empresa McAfee [3] em março de 2009 faz uma estimativa sobre a perda de produtividade que uma empresa pode ter devido aos spams. Segundo a McAffe, uma empresa que tenha 1000 empregados que ganham 30 dólares por hora terá um prejuízo de $182,500 por ano em perda de produtividade. Diversos laboratórios e grupos monitoram a quantidade de spams mundialmente, como por exemplo, o Spamcop [4] que é um mecanismo de filtragem baseado em um grande banco de dados de mensagens atualizado constantemente. A figura 1 ilustra a quantidade de spams reportados ao Spamcop no último ano. Esta estatística ressalva a situação crítica do abuso ao serviço de correio eletrônico. Em 1975 Jon Postel atentou para o problema de abuso no serviço de correio no documento RFC 706: On the junk mail problem [5]. Mais de trinta anos depois, o problema ainda perdura sendo alvo constante no desenvolvimento de metodologias para mitigação de seus efeitos. Como abordado em [6], o problema continuará até que o retorno aos spammers (financeiro, ou de qualquer espécie) seja muito baixo quando comparado aos riscos de violação de leis ou aos custos para realização da tarefa. I. L. Oliveira, J. L. Corrêa and A. M. Cansian Using the Euclidean Distance as a Mechanism Distance between Signatures to the Detect Spam and Phishing Scams O 340 IEEE LATIN AMERICA TRANSACTIONS, VOL. 8, NO. 4, AUG. 2010

Using the Euclidean Distance as a Mechanism Distance ... · dados de mensagens atualizado constantemente. A figura 1 ilustra a quantidade de spams reportados ao Spamcop no último

Embed Size (px)

Citation preview

Page 1: Using the Euclidean Distance as a Mechanism Distance ... · dados de mensagens atualizado constantemente. A figura 1 ilustra a quantidade de spams reportados ao Spamcop no último

Abstract— Spams and Phishing Scams are some of the abuse forms on the Internet that have grown up now. These abuses influence in user's routine of electronic mail and in the infrastructure of Internet communication. So, this paper proposes a new model messages filter based in Euclidian distance, beyond show the containment's methodologies currently more used. A new model messages filter, based in frequency’s distribution of character present in your content and in signature generation is described. An architecture to combat Phishing Scam and spam is proposed in order to contribute to the containment of attempted fraud by mail.

Keywords— Spam, Phishing Scam, e-mail, Signature.

I. NOMENCLATURA

ASA: ACME! Spam signAture DNS: Domain Name System HTML: HyperText Markup Language IP: Internet Protocol MIME: Multipurpose Internet Mail Extensions MDA: Mail Delivery Agent MTA: Mail Transfer Agent PHP: Hipertext PreProcessor RBL: Real Time Balcklist SMTP: Simple Mail Transfer Protocol SPAM: SPiced hAM SPF: Sender Policy Framework TCP: Transnission Control Protocol

II. INTRODUÇÃO

CORREIO eletrônico é uma das aplicações que mais cresceu e se desenvolveu nos últimos tempos. Segundo

Tanenbaum [1], antes de 1990, o correio eletrônico era utilizado principalmente nos meios acadêmicos. Depois dos

Estre trabalho foi financiado pela FAPESP através do processo

2008/09054-8. I. L. Oliveira e A. M. Cansian pertencem ao Laboratório ACME! de Pesquisa

em Segurança da UNESP – Universidade Estadual Paulista, Campus de São José do Rio Preto, Rua Cristóvão Colombo, 2265, CEP 15054-000 S. J. Rio Preto, SP – Brasil (e-mails: [email protected]; [email protected]).

J. L. Corrêa é pesquisador do MCT (Ministério da Ciência e Tecnologia) vinculado ao Instituto Nacional de Ciência e Tecnologia – Sistemas Embarcados Críticos MCT (Ministério da Ciência e Tecnologia) vinculado ao Instituto Nacional de Ciência e Tecnologia – Sistemas Embarcados Críticos, Laboratório ACME! de Pesquisa em Segurança, Depto. de Ciências de Computação e Estatística, UNESP – Universidade Estadual Paulista, Campus de São José do Rio Preto – SP – Brazil. ([email protected]).

anos 90, ele ficou conhecido para o público em geral e seu uso cresceu vertinosamente. Esse crescimento se deve ao fato de que o correio eletrônico é rápido, fácil de distribuir e barato enquanto que o correio convencional é mais lento [2].

Nos últimos tempos o correio eletrônico tem sido utilizado não apenas para facilitação do transporte de mensagens, mas para disseminação de informações não solicitadas e tentativas de fraudes eletrônicas. Spam é o termo utilizado para referir-se as mensagens não solicitadas enviadas em massa para grandes listas de destinatários. O Phishing Scam é uma modalidade de spam cujo objetivo é lesar diversos destinatários, enviando falsos avisos e anúncios, ou mensagens de caráter apelativo.

A utilização dos serviços de correio eletrônico

indevidamente tem causado diversos problemas. Usuários são afetados pelo não recebimento de novas mensagens devido à lotação de suas caixas, perda de tempo em sua identificação e eliminação, além de estarem sujeitos às tentativas de fraudes. No âmbito de infra-estrutura, este mau uso pode impactar na banda utilizada pela empresa ou instituição, má utilização dos equipamentos dedicados aos serviços de correio além de requerer investimentos para contra medidas.

O relatório divulgado pela empresa McAfee [3] em março de 2009 faz uma estimativa sobre a perda de produtividade que uma empresa pode ter devido aos spams. Segundo a McAffe, uma empresa que tenha 1000 empregados que ganham 30 dólares por hora terá um prejuízo de $182,500 por ano em perda de produtividade.

Diversos laboratórios e grupos monitoram a quantidade de spams mundialmente, como por exemplo, o Spamcop [4] que é um mecanismo de filtragem baseado em um grande banco de dados de mensagens atualizado constantemente. A figura 1 ilustra a quantidade de spams reportados ao Spamcop no último ano. Esta estatística ressalva a situação crítica do abuso ao serviço de correio eletrônico.

Em 1975 Jon Postel atentou para o problema de abuso no serviço de correio no documento RFC 706: On the junk mail problem [5]. Mais de trinta anos depois, o problema ainda perdura sendo alvo constante no desenvolvimento de metodologias para mitigação de seus efeitos. Como abordado em [6], o problema continuará até que o retorno aos spammers (financeiro, ou de qualquer espécie) seja muito baixo quando comparado aos riscos de violação de leis ou aos custos para realização da tarefa.

I. L. Oliveira, J. L. Corrêa and A. M. Cansian

Using the Euclidean Distance as a Mechanism Distance between Signatures to the Detect Spam

and Phishing Scams

O

340 IEEE LATIN AMERICA TRANSACTIONS, VOL. 8, NO. 4, AUG. 2010

Page 2: Using the Euclidean Distance as a Mechanism Distance ... · dados de mensagens atualizado constantemente. A figura 1 ilustra a quantidade de spams reportados ao Spamcop no último

Fig. 1. Número de spams reportados ao Spamcop no último ano.

Portanto, este artigo mostra um novo modelo de filtragem

de mensagens sobre uma arquitetura distribuída e colaborativa de informações sobre spams e Phishing Scams. Este modelo visa realizar a análise de uma mensagem com base em seu conteúdo sem infringir a privacidade do destinatário, além de trabalhar com o conceito de assinaturas e utilizar distanciamento de vetores com o uso da distância euclidiana como métrica para detecção.

III. METODOLOGIA

A. Trabalhos relacionados

Devido ao elevado número de spams várias pesquisas têm sido realizadas nesta área. Dhinakaran, Lee e Nagamalai [7] classificam os spams em duas categorias: spam com anexos e spams sem anexos. Baseados nisso, os autores realizam um levantamento estatístico sobre o tráfego de e-mails na Internet além de analisar o comportamento dos spammers.

Em 2004, Gomes et. al. [8] fizeram uma análise quantitativa sobre determinadas características do tráfego de spams. A arquitetura utilizada foi composta pelo Amavis [9], que consistem em um software que analisa vírus em e-mails, e pelo Spamassassin [10] que é um mecanismo de detecção de spam. Com isso, os e-mails coletados e analisados foram divididos em três categorias: Spam, e-mails detectados pelo Spamassassin, Não spam, e-mails legítimos e Agregado, todos os e-mails registrados pelo Amavis. Assim, seus estudos demonstram que o envio de e-mails legítimos ocorre em relações bilaterais enquanto que a transmissão de spams é uma ação unilateral com o intuito de atingir o maior número possível de usuários.

Jindal e Liu em [11] fizeram uma classificação e análise sobre spams reviews, geralmente praticados em sites de comércio eletrônico, além de proporem técnicas para conter esse tipo de spam. Dentre essas técnicas está a detecção de spams por meio de spams duplicados. Além disso, o artigo contém um modelo de regressão logística que utiliza um aprendizado supervisionado para estimar a probabilidade de uma mensagem ser spam ou não.

Em [12], Sirisanyalak e Sornil propõem um novo sistema de detecção de spam baseado em um sistema imunológico artificial. A metodologia utilizada por esse modelo para classificar mensagens desconhecidas é composta por características extraídas previamente de mensagens válidas e inválidas conhecidas, durante a fase de aprendizado. Em adicional, esse sistema utiliza um algoritmo de distância de edição entre duas strings no processo de aprendizado.

B. Metodologias atuais

Existem atualmente diversas metodologias de combate às mensagens indesejáveis que tentam minimizar a quantidade de mensagens não solicitadas e fornecer um nível de segurança adequado [13]. Estas metodologias baseiam-se tanto em protocolos quanto na filtragem de conteúdo. As baseadas em protocolos verificam se as mensagens estão de acordo com os padrões de Internet enquanto as filtragens procuram classificar as mensagens segundo determinadas regras. Neste artigo é abordado as seguintes metodologias: Greylisting, Sender Policy Framework (SPF), Razor, Real Time Blacklits (RBL) e Rule-Based Filter.

O Greylisting é uma técnica de bloqueio de spams baseada no comportamento correto de servidores válidos. Trata-se de um método simples cuja essência está em aceitar ou recusar mensagens de acordo com a combinação de três informações: o endereço IP do host que está enviando a mensagem, o endereço do remetente e do destinatário no envelope da mensagem. Com esta tripla, a regra utilizada resume-se a “Se a tripla nunca foi vista, então recuse a mensagem e todas as outras que contiverem a mesma tripla, dentro de um determinado período de tempo, com um erro temporário”. Servidores de correio válidos inerentemente tentarão reenviar as mensagens recusadas. Neste ponto, um grande número de mensagens inválidas é bloqueado, visto que spammers não consideram o reenvio no caso de um erro ou acabam utilizando tentativas subseqüentes, bloqueadas pelo período de tempo estipulado no servidor destino. A vantagem do Greylisting reside no fato de não requerer esforços por parte dos usuários além de simplicidade na manutenção, sendo implementado no nível do MTA (Mail Transfer Agent). Como desvantagem, spammers que utilizam métodos mais aprimorados de envio podem passar por filtros Greylisting após algumas tentativas e posteriores retransmissões.

O SPF [14] é uma política que combate a falsificação do endereço de retorno no envelope de uma mensagem. O mecanismo atua em duas partes: do lado do administrador que publica uma política SPF e do lado do servidor que recebe uma mensagem e realiza uma checagem SPF para determinado endereço. A publicação de uma política consiste em anunciar via DNS (Domain Name System) quais são os MTAs autorizados a enviar mensagens em nome de um domínio. Do outro lado, um MTA que receba uma mensagem deste domínio pode verificar se o host que está enviando é de fato autorizado a fazê-lo. O SPF é uma política bastante funcional. No entanto, depende de ampla aceitação e implantação nos servidores de correio da Internet, a fim de tornar a política efetiva. Além disso, é totalmente factível a aquisição de um domínio e conseguinte publicação de SPF e

OLIVEIRA et al.: I2TS03 - USING THE EUCLIDEAN 341

Page 3: Using the Euclidean Distance as a Mechanism Distance ... · dados de mensagens atualizado constantemente. A figura 1 ilustra a quantidade de spams reportados ao Spamcop no último

disseminação de spams por parte de um spammer, desta forma atuando como um servidor válido.

A metodologia de filtragem Razor [15] realiza uma filtragem baseada em um hash gerado para uma mensagem considerada spam. O Razor utiliza uma base de hashes distribuída, na qual servidores podem trocar informações sobre a ocorrência de novas mensagens, atualizando suas bases de hashes. Embora os sistemas de hash se caracterizem por gerar assinaturas completamente diferentes com a modificação de um único caractere, algoritmos são utilizados para que este problema não ocorra, tornando o Razor mais efetivo com mensagens de conteúdo aleatório inserido. Assim, a sua eficiência está ligada a colaboração de cada cliente para identificação e geração de hashes. Ainda, a geração destas assinaturas não considera toda a mensagem, apenas parte delas como algumas linhas iniciais ou finais do conteúdo.

As RBL são listas que identificam em tempo real hosts que fazem spam ou que fizeram em um período recente. O mecanismo de consulta utiliza-se do DNS para obter informações sobre determinado domínio ou emissor. Desta forma, caso um endereço esteja em alguma lista, a mensagem poderá ser considerada spam. Uma desvantagem desse mecanismo é a classificação generalizada de um domínio. Uma vez que um único usuário tenha abusado do serviço de correio incluindo o domínio em uma RBL, todos os outros usuários sofrerão a possibilidade de negação de suas mensagens, se o MTA destino utilizar políticas de checagem de RBLs.

Os Rule-Based Filter realizam classificações baseados em regras de pontuação. Essa pontuação é definida baseada na análise do corpo da mensagem. Uma vez que a pontuação atinja um limiar pré-definido a mensagem será considerada spam. Um dos mais conhecidos filtros rule-based é o Spamassassin. A ocorrência de certas palavras, a utilização do resultado de outros filtros ou de um treinamento anterior, contribuem para a pontuação de uma mensagem. Diversos mecanismos têm sido utilizados nestes filtros, como algoritmos genéticos, redes neurais e classificação segundo probabilidades (Bayesian Filters). Uma das grandes desvantagens destes sistemas é a alta carga de recurso computacional exigida, principalmente em servidores de correio de grande porte. Outro problema consiste nos falsos positivos obtidos por este mecanismo.

C. SMTP e MIME

O Simple Mail Transfer Protocol (SMTP), definido no RCF 2821 [16], é um protocolo cuja principal função consiste em transmitir mensagens de forma eficiente. O SMTP interage somente com sistemas de correio eletrônico. Não é de sua responsabilidade armazenar os e-mails recebidos.

O SMTP é composto por duas partes: um lado cliente e um lado servidor. Ambos os lados do SMTP executam em todos os servidores de correio. Quando um servidor de correio envia uma correspondência (para outros servidores de correio), ele age como cliente SMTP. Quando o servidor de correio recebe uma correspondência (de outros servidores de correio), ele age como servidor SMTP [2]. A figura 2 exemplifica esse

funcionamento.

Fig. 2. Estrutura do SMTP.

Uma vez que o modelo de análise lida com o conteúdo de

uma mensagem é importante ressaltar os pontos nos quais o analisador atua. Uma mensagem SMTP divide-se em duas partes: cabeçalho e corpo, separados por uma linha em branco. No cabeçalho são especificadas as informações necessárias para a transferência da mensagem como tipo de codificação, qual seu conteúdo, remetente e destinatário, etc. No corpo são transportadas as informações da mensagem propriamente dita, seja diretamente ou na forma de anexos.

O protocolo SMTP possui uma limitação de representação de símbolos, fixada à codificação ASCII [17] de 7 bits. Portanto, não é ideal para a transferência de arquivos. Para solucionar esta limitação alguns padrões foram desenvolvidos para permitir a transferência de ficheiros em formato binário através de texto simples, como é o caso do MIME (Multipurpose Internet Mail Extensions) [18].

O MIME provê mecanismos para conversão de codificações possibilitando o envio de diversos outros tipos de informações. Uma mensagem que utilize MIME possui um cabeçalho MIME dentro do cabeçalho principal, indicando a versão utilizada e o tipo de conteúdo daquela mensagem. Existem diversos tipos MIME [19]. Para o modelo desenvolvido foram considerados os tipos multiparted com textos e imagens, os tipos text e image, e as mensagens em texto plano, que não utilizam o padrão MIME. A figura 3 mostra um exemplo de cabeçalho MIME.

Fig. 3. Exemplo de cabeçalho MIME.

D. Modelo de Assinatura

O modelo de assinatura utilizado foi baseado na distribuição de freqüência dos caracteres que ocorrem em uma mensagem. Foram considerados 68 caracteres ASCII compreendendo o intervalo do ASCII 33 ao 96 e do 123 ao 126. Para simplificar o modelo, os caracteres alfabéticos de 'A'

342 IEEE LATIN AMERICA TRANSACTIONS, VOL. 8, NO. 4, AUG. 2010

Page 4: Using the Euclidean Distance as a Mechanism Distance ... · dados de mensagens atualizado constantemente. A figura 1 ilustra a quantidade de spams reportados ao Spamcop no último

a 'Z' e de 'a' a 'z' possuem somente uma representação para cada um destes caracteres. Outras informações úteis que também são armazenadas na assinatura representam a soma do total de caracteres e a quantidade de caracteres diferentes que ocorrem em uma mensagem.

Para compor uma assinatura, o cabeçalho principal não é considerado, ou seja, a assinatura é gerada baseada no corpo da mensagem. Com isso, as assinaturas foram divididas em dois grupos: assinaturas que descrevem campos do tipo text, sejam eles em mensagens de texto plano ou mensagens MIME e assinaturas que descrevem a codificação MIME do tipo image.

O maior problema de sistemas de reconhecimento baseados em assinaturas reside na ocorrência de falso-positivos (mensagens válidas que são classificadas como inválidas). Neste modelo, esta possibilidade existe, embora seja bastante remota.

Utilizando probabilidades podemos obter dados referentes ao poder representativo do modelo. Considerando apenas as possíveis combinações de caracteres diferentes, o modelo é capaz de representar 268 combinações como ilustra a equação

(1) em que P é probabilidade, xC68 é combinação 68 em x e x

é a quantidade de caracteres diferentes. Calculando esta probabilidade para 1 ≤ x ≤ 68 teremos valores muito baixos no intervalo de 3 a 65 caracteres e alguns casos extremos para a ocorrência de 1, 2, 67 e 68 caracteres diferentes.

(1)

Os valores baixos no intervalo de 3 a 65 devem-se ao grande número de possibilidades de combinações com uma quantidade diferente de caracteres neste intervalo. Nos casos extremos, esta probabilidade aumenta. Considerando uma assinatura que possua 68 caracteres diferentes, a probabilidade de que outra assinatura, com 68 caracteres, possua exatamente os mesmos caracteres é de 100%.

A segunda parte do modelo visa amortizar este caso e conferir uma alta capacidade de diferenciação de assinaturas. Para cada caractere diferente, a assinatura armazena seu número de ocorrências. Desta forma, para duas assinaturas serem consideradas parecidas, tanto devem conter os mesmos caracteres, quanto um número de ocorrências semelhantes para cada um deles, ou seja, o modelo analisará a ocorrência de cada caractere buscando discrepâncias que as caracterizem como não representantes da mesma mensagem com o intuito de encontrar uma determinada distância entre as assinaturas. Esta característica pode ser verificada na figura 4. Neste gráfico, duas assinaturas com a mesma quantidade de caracteres diferentes (49) e com quantidade total próxima (449 e 474) são comparadas. Podemos verificar que embora haja uma semelhança quanto aos caracteres que ocorrem na mensagem, há uma discrepância quanto às ocorrências de cada um deles, em cada assinatura.

Fig. 4. Diferentes ocorrências para cada assinatura possibilitam uma diferenciação.

Para facilitar e automatizar a geração de assinaturas foi desenvolvido um programa em linguagem C. O trecho de código responsável pela geração da assinatura pode ser observado na figura 5.

//line: uma linha da mensagem; //text_sig.counter[i]: estrutura que guarda as ocorrências dos caracteres; for (i=0;i<strlen(line);i++){ // analyze one line

if (line[i] >= 33 && line[i] <=96) text_sig.counter[line[i]-33]++; else{ if (line[i] >= 97 && line[i] <=122) text_sig.counter[line[i]-65]++; else{

if (line[i] >= 123 && line[i] <=126) text_sig.counter[line[i]-59]++;

} } }

Fig. 5. Trecho de código para a geração de uma assinatura.

E. Metodologia proposta para detecção

A distância Euclidiana [20], matematicamente, representa a distância entre dois pontos, ou seja, dado o ponto A = (a1,a2, ...,an) e o ponto B = (b1,b2,...bn), em um espaço euclidiano n-dimensional, a distância euclidiana pode ser calculada pela equação (2).

(2) Na metodologia desenvolvida, a distância euclidiana

representa a distância entre uma mensagem de correio eletrônico e uma assinatura armazenada no banco de dados. Tanto a mensagem como a assinatura serão representadas por uma tupla, ou seja, M = (a1, a2, ..., a68) em que cada ai representa a freqüência de um determinado caractere em uma mensagem.

Neste caso, a distância entre os caracteres implica no quão a mensagem analisada esta distante de uma assinatura que representa um spam, ou seja, é possível verificar se a mensagem se parece com um spam. A figura 6 ilustra o trecho de código responsável pelo calculo da distância Euclidiana.

OLIVEIRA et al.: I2TS03 - USING THE EUCLIDEAN 343

Page 5: Using the Euclidean Distance as a Mechanism Distance ... · dados de mensagens atualizado constantemente. A figura 1 ilustra a quantidade de spams reportados ao Spamcop no último

//verify_sig.counter[i] e text_sig.counter[i]: estrutura que guarda as ocorrências dos caracteres da mensagem e assinatura, respectivamente; //distance é a distancia final entre uma assinatura e uma mensagem for (j=0; j<68; j++){

parcial = 0; if(verify_sig.counter[j]!=text_sig.counter[j]) { if(verify_sig.counter[j]>text_sig.counter[j]) {

parcial=verify_sig.counter[j]-text_sig.counter[j]; } else{ parcial=text_sig.counter[j]-verify_sig.counter[j]; } parcial = parcial*parcial; distance += parcial; } } distance = sqrt(distance);

Fig. 6. Código para calculo da distância euclidiana.

Para classificar se uma mensagem será considerada válida

ou não, o mecanismo desenvolvido realiza o cálculo de um limiar. Uma mensagem será considerada inválida caso o resultado da distância seja inferior ao limiar obtido. A maneira como se obtém este limiar é ilustrado na equação (3).

(3)

Neste cálculo, i representa cada caractere e c representa o maior valor entre as ocorrências de um mesmo caractere na assinatura e na mensagem comparadas.

III. AMBIENTE DE TESTES

Considerando os tipos de filtragem com base nas etapas necessárias para a transferência de uma mensagem, o modelo descrito neste artigo é classificado como um filtro após enfileiramento [21]. Diversos filtros e políticas agem antes mesmo de uma mensagem ser colocada na fila de entrega de um servidor. No modelo descrito, as mensagens filtradas já se encontram enfileiradas, prontas para ser entregues às caixas dos usuários.

Esta arquitetura possibilita a utilização do filtro de freqüências junto a diversos outros. Desta forma, filtros podem ser utilizados tanto antes do enfileiramento quanto após a mensagem ser recebida, de acordo com as necessidades e políticas do servidor. A figura 7 demonstra a organização dos componentes desta arquitetura.

Fig. 7. Arquitetura do servidor de correio.

Inicialmente uma mensagem é recebida pelo MTA e colocada em uma fila para posterior entrega. Uma vez nesta fila, a mensagem deve passar por todos os filtros configurados, sendo colocada novamente na fila após todas as verificações. Neste momento, o MDA (Mail Delivery Agent) é responsável por retirá-la da fila e entregá-la a caixa de mensagens do usuário destino.

Nesta arquitetura o MDA tem papel fundamental. É a partir dele que as mensagens são separadas em válidas, spams ou Phishings e entregues aos usuários. Durante o processo de filtragem, se uma mensagem é classificada como inválida, uma linha é inserida no seu cabeçalho a fim de que o MDA possa diferenciá-las. Diversas aplicações de controle de mensagens inserem linhas de informações, como antivírus e outras políticas. A metodologia descrita neste artigo insere uma linha semelhante à X-Spam-Euclidiano-Status: Yes - Differ 22.5488, indicando que a mensagem foi identificada com alguma assinatura do banco, com uma distância de 22.5488. Esta marcação permite então que o MDA faça a separação das mensagens, entregues ao usuário separadamente das mensagens válidas.

IV. TESTES E RESULTADOS

Para o armazenamento das assinaturas foi criado um banco de dados, denominado antispam, constituído de duas tabelas de dados, text e image. Os campos dessas tabelas armazenam as informações que constituem uma assinatura.

A forma como o banco de dados foi desenvolvido mostrou ser bastante eficiente uma vez que a mensagem não necessita ser armazenada na íntegra. Essa característica além de consumir pouca demanda computacional, não permite a engenharia reversa, ou seja, não é possível obter o conteúdo da mensagem baseado em sua assinatura.

Foram coletas 13439 mensagens que são inválidas. Destas 880 são mensagens com o tipo image e 11349 possuem o tipo text. Tais mensagens foram utilizadas para a geração de assinaturas.

Para analisar o comportamento do sistema segundo o desempenho computacional, foram utilizadas duas plataformas diferentes de hardware para a leitura de um conjunto de mensagens, geração das assinaturas e inserção em uma base de dados. A tabela 1 ilustra o tempo necessário para a inserção dessas assinaturas no banco de dados.

344 IEEE LATIN AMERICA TRANSACTIONS, VOL. 8, NO. 4, AUG. 2010

Page 6: Using the Euclidean Distance as a Mechanism Distance ... · dados de mensagens atualizado constantemente. A figura 1 ilustra a quantidade de spams reportados ao Spamcop no último

TABELA I

TESTE DE DESEMPENHO ENVOLVENDO DUAS PLATAFORMAS DE HARDWARE. Velocidade

do processador

Memória dos sistemas

Tempo médio de inserção da caixa de SPAM

Hardware 1 Pentium III 630 MB 38 segundos Hardware 2 Intel(R)

Pentium(R) D CPU 2.80GHz;

1 GB 15.85 segundos

Para cada assinatura gerada, o programa desenvolvido

retorna o resultado mostrado na figura 8.

Inserted registers 1 INSERT INTO text(n_chars_text,different_chars,C33,C34,C35,C36, C37,C38,C39,C40,C41,C42,C43,C44,C45,C46,C47,C48,C49,C50, C51,C52,C53,C54,C55,C56,C57,C58,C59,C60,C61,C62,C63,C64,A,B,C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,C91,C92, C93,C94,C95,C96,C123,C124,C125,C126) values('3612','48','17','34','0','0','0','0','6','0','0','0','0','32','32','45','40', '29','4','28','10','3','5','1','0','1','1','5','1','56','34','56','4','0','267','63','84', '147','323','61','69','134','233','8','28','120','116','230','260','87','3','176', '165','314','91','21','74','7','84','3','0','0','0','0','0','0','0','0','0','0');

Fig. 8. Resultado da inserção de uma assinatura.

Os testes com modelo desenvolvido foram realizados com base em mensagens acumuladas, separadas em duas caixas denominadas SPAM e INBOX. A tabela 2 mostra as características de cada um desses conjuntos.

TABELA II

CONJUNTO DE MENSAGENS UTILIZADAS PARA TESTE. Conjuntos

Total de mensagem

Inválidas Válidas Com imagem

Tamanho

SPAM 13449 13449 0 880 61 M INBOX 726 0 726 7 80 M

Novamente para analisar o comportamento do sistema

segundo o desempenho computacional, foram utilizadas duas plataformas diferentes de hardware. Os testes foram divididos em duas etapas. A primeira consistiu em utilizar o mesmo conjunto (SPAM) apenas para a classificação das mensagens, sendo necessária, para cada mensagem do conjunto, sua leitura, geração de assinatura, busca das assinaturas parecidas na base de dados e comparação para determinação da distância entre elas. Neste teste também podemos verificar a quantidade de erros do tipo falso-negativo (classificar uma mensagem inválida como válida). A segunda etapa foi realizada utilizando um conjunto de mensagens majoritariamente válidas (INBOX). Neste caso, obtivemos a quantidade de erros do tipo falso-positivo. A tabela 3 mostra os tempos médios obtidos para cada um destes testes.

TABELA III

TESTE DE DESEMPENHO ENVOLVENDO DUAS PLATAFORMAS DE HARDWARE. Velocidade

do processador

Memória dos sistemas

Tempo médio de verificação da caixa de SPAM

Tempo médio de verificação da caixa de INBOX

Hardware 1 Pentium III 630 MB 10,7 mensagens/segundo

12,32 mensagens/segundo

Hardware 2 Intel(R) Pentium(R) D CPU 2.80GHz;

1 GB 26,4 mensagens/segundo

28,35 mensagens/segundo

Por fim, foram analisadas as taxas de erros cometidas pelo

sistema de filtragem e classificação. De acordo com os conjuntos utilizados, duas medidas foram possíveis: taxa de falso-negativo no conjunto SPAM e taxa de falso-positivo no conjunto INBOX. Das 13449 mensagens avaliadas no conjunto SPAM, foram obtidos 12 falso-negativo representando uma taxa de 0.089%. Todas as mensagens com imagens foram detectadas corretamente, portanto os 12 erros foram devido a classificação errada da parte textual da mensagem. Ainda, 9 destas mensagens do tipo text foram verificadas como casos específicos, nos quais o corpo da mensagem era vazio. Neste caso, o sistema não aceita a representação por assinaturas, o que levaria a uma estrutura nula que pode ocorrer com freqüência em mensagens válidas. A baixa porcentagem de falso-negativos encontrada nos testes realizados demonstra tanto a efetividade dos sistemas de reconhecimento baseados em assinaturas quanto a do modelo de distribuição de freqüência.

No caso do conjunto INBOX, das 726 mensagens analisadas obtivemos 7 falso-positivos, representando uma taxa de 0.9641%. Destes erros, 2 foram devido a classificação errada de imagens e 5 devido a classificação errada da parte textual da mensagem. Ainda, estas 5 mensagens da parte textual eram mensagens com corpo vazio.

Com o intuito de prover um melhor compartilhamento e disseminação das assinaturas geradas, desenvolveu-se um sistema Web denominado ASA (ACME! Spam signAture).

Esse sistema foi desenvolvido em linguagem PHP (Hipertext PreProcessor) [22] devido ao fato desta linguagem prover modularização, além de ser flexível e possuir portabilidade. Essa linguagem consiste de scripts embutidos no HTML (HyperText Markup Language) [23].

O ASA possui a capacidade de inserção e obtenção de assinaturas. Para inserir uma assinatura basta que o usuário informe o conteúdo da mensagem e/ou o anexo. Em seguida é necessário classificar o assunto da mensagem a ser inserida e submetê-la, conforme ilustra a figura 9. O assunto não é um campo da assinatura, sendo utilizado somente para facilitar a administração do sistema. Essa mensagem será analisada pelo administrador do sistema e posteriormente adicionada ao banco de dados de assinatura. Outra característica do sistema é enviar e-mails para os outros usuários do sistema informando que uma nova assinatura foi inserida.

OLIVEIRA et al.: I2TS03 - USING THE EUCLIDEAN 345

Page 7: Using the Euclidean Distance as a Mechanism Distance ... · dados de mensagens atualizado constantemente. A figura 1 ilustra a quantidade de spams reportados ao Spamcop no último

Fig. 9. Inserir assinatura pelo sistema ASA.

Para obter uma assinatura, é preciso selecionar os assuntos

da assinatura que deseja adquirir. Em seguida, são mostradas para o usuário as mensagens inválidas que o sistema possui no assunto selecionado. Essa característica provê maior liberdade ao administrador de um servidor de correio eletrônico devido ao fato de possibilitar adicionar somente assinaturas de seu interesse. Para concluir o processo de obtenção de assinaturas basta o usuário selecionar as mensagens que considera spam e informar os dados do banco de dados que utiliza para armazenar as assinaturas, como ilustra a figura 10. O ASA automaticamente adiciona as assinaturas selecionadas ou, se houve algum erro, o sistema informa o problema ocorrido.

Em adicional, uma última característica do ASA que é interessante ser destacada é o fato do sistema possuir dados estatísticos referentes aos números e porcentagens de assinaturas que o sistema possui. Esses dados podem ser obtidos por meio de gráficos e tabelas, ilustrados nas figuras 11 e 12 respectivamente.

V. CONCLUSÃO

O SMTP e MIME são protocolos amplamente utilizados para o transporte de mensagens de correio eletrônico. O MIME possibilitou o envio de mensagens que não são codificadas em ASCII de 7 bits. Essa inovação trouxe benefícios como, por exemplo, transferência de imagens, arquivos binários, entre outros, através de mensagens de correio eletrônico, mas algumas pessoas o utilizam para enviar mensagens inválidas.

A implementação de um mecanismo de combate à SPAM e Phishing Scam, aliada ao conceito de assinatura baseada em freqüência de distribuição de caracteres, trouxe importantes características, como o bom desempenho, não possibilidade de quebra de privacidade (uma vez que as análises são baseadas

em distribuições de freqüências) e detecção de Phishings cadastrados sem possibilidade de falso-negativo. Além disso, devido ao fato de apresentar um desempenho satisfatório e escalável, a metodologia com Distância Euclidiana apresentada neste artigo pode ser adaptada para ambientes (servidores) de grande porte.

Fig. 10. Obter assinatura pelo sistema ASA.

Enfim, o desenvolvimento do sistema ASA possibilita um

melhor compartilhamento de assinaturas. Essa característica contribui para melhorar a eficiência da detecção de mensagens inválidas pela metodologia proposta neste artigo, uma vez que quanto mais rápida for a distribuição de assinaturas, melhor será a resposta contra determinada tentativa de Phishing Scam e menor será o número de usuários afetados.

346 IEEE LATIN AMERICA TRANSACTIONS, VOL. 8, NO. 4, AUG. 2010

Page 8: Using the Euclidean Distance as a Mechanism Distance ... · dados de mensagens atualizado constantemente. A figura 1 ilustra a quantidade de spams reportados ao Spamcop no último

Fig. 11. Dados das assinaturas em forma de gráfico.

Fig. 12. Dados das assinaturas em forma de tabela.

AGRADECIMENTOS

Os autores agradecem a André Proto, Leandro Arabi Alexandre e a Maira Lambort Batista por importantes discussões sobre o tema deste trabalho, à FAPESP por financiar o desenvolvimento do projeto 2008/09054-8 e ao

CNPq e FAPESP pelo financiamento ao INCT-SEC, processos 573963/2008-8 e 08/57870-9.

REFERÊNCIAS

[1] A. S. TANENBAUM, “Redes de Computadores”. Editora Campus, 2003. 945p.

[2] J. F. KUROSE, K. W. ROSS, “Rede de Computadores e a Internet: Uma Nova Abordagem, ” Pearson Addison Wesley. São Paulo, vol. 3, 2003.

[3] MCAFEE. “March 2009 Spam Report.” 2009. Disponível em: < www.mcafee.com/us/local_content/reports/mar_spam_report.pdf>.

[4] SPAMCOP. “Spamcop.net.” Disponível em: <http://www.spamcop.net>. [5] J. POSTEL, “RFC 706: On the junk mail problem.” 1975. Disponível em:

<http://www.faqs.org/rfcs/rfc706.html>. [6] N. LEAVITT, “Vendors Fight Spam’s Sudden Rise.” Computer, Vol.40,

Iss.3, March 2007, Pages:16-19. [7] C. DHINAKARAN, J. K. LEE, D. NAGAMALAI, “Characterizing Spam

traffic and Spammers”, 2007. In: International Conference on Convergence Information Technology. Page(s):831 – 836.

[8] L. H. GOMES, J. M. ALMEIDA, V. ALMEIDA, W. M. JUNIOR “Characterizing a Spam Traffic”. In: Proceedings of the 4th ACM SIGCOMM conference on Internet measurement. 2004.

[9] AMAVIS. “AMaViS - A Mail Virus Scanner”. Disponível em: <http://www.amavis.org/>.

[10] SPAMASSASSIN. “Spamassassin: The Apache SpamAssassin Project.” Disponível em: <http://spamassassin.apache.org/>.

[11] N. JINDAL, B. LIU, “Analyzing and Detecting Review Spam”. In: Seventh IEEE International Conference on Data Mining. 2007.

[12] B. Sirisanyalak, O. Sornil, “An artificial immunity-based spam detection system”. In: IEEE Congress on Evolutionary Computation, 2007. Sept. 2007 Pages:3392 – 3398

[13] G. R. RAMOS, A. M. CANSIAN, T. A. SIQUEIRA, A. C. JUNIOR “Análise de Desempenho de Políticas de Segurança em Servidores de Correio Eletrônico”. Proceedings of the 3rd I2TS - International Information and Telecommunication Technologies Symposium. Carlos, SP, Brazil. December 6-9, 2004.

[14] M. WONG, W. SCHLITT, “RFC 4408: Sender Policy Framework (SPF) for Authorizing Use of Domains in E-Mail.” 2006. Disponível em: <http://www.faqs.org/rfcs/rfc4408.html>.

[15] RAZOR. “Razor: spam should not be propagated beyond necessity.” 1999. Disponível em: <http://razor.sourceforge.net>.

[16] J. KLENSIN, “RFC 2821: Simple Mail Transfer Protocol.” 2001. Disponível em: <http://www.faqs.org/rfcs/rfc2821.html>.

[17] K. SIMONSEN, “RFC 1345: character Mnemonics and Character Sets.” 1992. Disponível em: <http://www.faqs.org/rfcs/rfc1345.html>.

[18] N. FREED, N. BORENSTEIN, “RFC 2045: Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet Message Bodies.” 1996. Disponível em: < https://ietf.org/rfc/rfc2045>.

[19] IANA “IANA - The Internet Corporation for Assigned Names and Numbers: MIME Media Types.” Disponível em:< http://www.iana.org/assignments/media-types>.

[20] H. J. BORTOLOSSI, “Cálculo diferencial a várias variáveis:uma introdução à teoria de otimização.” Loyola, 2003. 619. ISBN 851502442X

[21] POSTFIX. “Postfix After-Queue Content Filter.” Disponível em: <http://www.postfix.org/FILTER_README.html>.

[22] PHP, “Documentation.” Disponível em: http://www.php.net/docs.php. [23] T. BERNERS-LEE, “RFC 1866: Hypertext Markup Language - 2.0” .

1995. Disponível em: http://www.ietf.org/rfc/rfc1866.txt.

OLIVEIRA et al.: I2TS03 - USING THE EUCLIDEAN 347

Page 9: Using the Euclidean Distance as a Mechanism Distance ... · dados de mensagens atualizado constantemente. A figura 1 ilustra a quantidade de spams reportados ao Spamcop no último

Isabela Liane de Oliveira nasceu em Fronteira, Brasil, em 30 de novembro de 1985. Graduou-se na Universidade Estadual Paulista (UNESP - Brasil) em 2009. Em 2010 ingressou no Programa de Pós-Graduação em Ciência da Computação da UNESP.

Durante os últimos três anos atuou como pesquisadora e desenvolvedora de soluções para segurança de redes e computadores no laboratório

ACME! Computer Security Research. Tem desenvolvido pesquisas na área de combate a fraudes com SPAMs. Atualmente tem interesses em pesquisas de análise de artefatos maliciosos. Suas principais publicações constam de trabalhos relacionados à segurança da informação (SBSeg 07, 08; SPIE 09; I2TS 09).

Jorge Luiz Corrêa nasceu em São José do Rio Preto, Brasil, em 8 de abril de 1985. Graduou-se na Universidade Estadual Paulista (UNESP - Brasil) em 2006. Obteve seu título de Mestre em Ciência da Computação pela mesma Universidade em 2009.

Durante os últimos cinco anos atuou como pesquisador e desenvolvedor de soluções para segurança de redes e computadores no laboratório ACME! Computer Security Research. Tem desenvolvido pesquisas na área de detecção de

intrusos, análise de fluxos, análise de tráfego e combate a fraudes com SPAMs. Atualmente tem interesses em pesquisas com identificação de eventos em redes por meio de fluxos e análise de artefatos maliciosos.

O mestre em ciência da computação Corrêa é membro do comitê de programa do GTS (Grupo de Trabalho em Segurança de Redes) do Comitê Gestor da Internet no Brasil (CGI.br) e pesquisador do MCT (Ministério da Ciência e Tecnologia) vinculado ao Instituto Nacional de Ciência e Tecnologia – Sistemas Embarcados Críticos. Suas principais publicações constam de trabalhos relacionados à segurança da informação (SBSeg 07, 08, 09; ICCyber 09; I2TS 09).

Adriano Mauro Cansian possui graduação em Bacharelado em Física pela Universidade de São Paulo (1990), Mestrado em Física Aplicada pela Universidade de São Paulo (1992) e doutorado em Física Computacional pela Universidade de São Paulo (1997).

Atualmente é professor adjunto da UNESP - Universidade Estadual Paulista, campus de São José do Rio Preto, SP. É revisor da revista "Computers & Security" (Elsevier) e do "The International Journal of Forensic Computer Science - IJoFCS". É coordenador do Laboratório ACME! de Pesquisa em Segurança da

UNESP de São José do Rio Preto (http://www.acmesecurity.org). Tem experiência na área de Ciência da Computação, com ênfase em Sistemas de Segurança de Redes, atuando principalmente nos seguintes temas: segurança da informação, redes de computadores, hackers e Internet. Em 2005 recebeu Diploma de Reconhecimento Público do Comitê Gestor da Internet no Brasil (CGI.Br) pelos dez anos de serviços prestados ao desenvolvimento da Internet Brasileira. Em 2006 foi premiado como um dos 50 profissionais mais influentes na segurança da informação no Brasil. Em 2007 também recebeu o prêmio "SecMaster 2006" oferecido pela ISSA - Information Systems Security Association pela melhor contribuição ao setor público. É coordenador do GTS - Grupo de Trabalho em segurança do Comitê Gestor da Internet Brasileira (http://gts.nic.br), e membro voluntário em diversas entidades de política de uso da Internet.

348 IEEE LATIN AMERICA TRANSACTIONS, VOL. 8, NO. 4, AUG. 2010