← Voltar aos artigos

Paper Files / Detection

Arquiteturas e Técnicas de Detecção de Intrusões em Sistemas UNIX Conectados à ARPANET: Modelagem Estatística, Monitoramento de Rede e Análise de Trilhas de Auditoria (1990)

DetectionPT

A crescente interconexão de sistemas computacionais através de redes TCP/IP, particularmente na ARPANET e em redes acadêmicas derivadas, introduziu um novo conjunto de desafios relacionados à segurança operacional. Enquanto mecanismos clássicos de controle de acesso, como listas de permissões e autenticação por senha, continuam sendo amplamente utilizados, evidências empíricas demonstram que tais mecanismos são insuficientes para impedir intrusões quando credenciais são comprometidas ou vulnerabilidades de software são exploradas. Nesse contexto, mecanismos de detecção de intrusões emergem como uma camada complementar essencial para a defesa de sistemas multiusuário e redes distribuídas. Este artigo apresenta um estudo aprofundado das técnicas de detecção de intrusões disponíveis até 1990, com foco particular em ambientes UNIX conectados por TCP/IP. A pesquisa baseia-se em três pilares principais: análise de trilhas de auditoria de sistemas operacionais, monitoramento passivo de tráfego de rede e modelagem estatística do comportamento de usuários. A partir do modelo conceitual proposto por Denning (1987), desenvolvemos uma metodologia prática que integra coleta de logs (`syslog`), captura de pacotes via `tcpdump` e verificação periódica de integridade e configuração utilizando ferramentas como o Computer Oracle and Password System (COPS). O trabalho também formaliza um modelo de ameaça representativo do cenário operacional da ARPANET no final da década de 1980, incluindo exploração de serviços de rede vulneráveis (por exemplo `sendmail`, `fingerd`), ataques de força bruta contra senhas e propagação de programas auto-replicantes, como demonstrado pelo worm de Morris em 1988. Propomos um conjunto de métricas estatísticas para detectar desvios significativos no comportamento de usuários e processos, utilizando distribuições de frequência de comandos, taxas de conexão de rede e padrões temporais de login. Para validar a abordagem, conduzimos experimentos em um laboratório composto por sistemas SunOS e BSD UNIX interconectados via Ethernet. Os resultados indicam que a combinação de análise estatística e monitoramento de rede permite detectar uma variedade de atividades maliciosas com taxa de detecção superior a 80% em cenários controlados, mantendo níveis aceitáveis de falsos positivos. O artigo conclui discutindo limitações práticas, incluindo custos computacionais de análise em tempo quase real e a dificuldade de distinguir comportamento legítimo atípico de atividade maliciosa. Finalmente, são apresentadas direções futuras de pesquisa, incluindo integração de sensores distribuídos e sistemas de resposta automatizada.

  1. Introduction

O crescimento das redes de computadores ao longo da década de 1980 transformou profundamente o ambiente operacional de sistemas computacionais. Universidades, laboratórios governamentais e centros de pesquisa passaram a conectar seus sistemas UNIX através de redes TCP/IP, frequentemente integradas à infraestrutura da ARPANET ou a redes acadêmicas regionais. Embora essa interconectividade tenha ampliado significativamente as capacidades de colaboração científica e compartilhamento de recursos computacionais, ela também introduziu novas superfícies de ataque.

Tradicionalmente, a segurança em sistemas multiusuário baseava-se em três mecanismos principais: autenticação por senha, controle de acesso baseado em permissões de arquivos e isolamento de processos. Esses mecanismos foram originalmente concebidos para ambientes relativamente fechados, nos quais os usuários possuíam algum nível de confiança institucional (SALTZER; SCHROEDER, 1975). Entretanto, a expansão das redes tornou possível que indivíduos externos tentassem acessar remotamente serviços expostos, explorando erros de configuração ou vulnerabilidades em programas privilegiados.

O incidente mais emblemático desse novo cenário foi o worm de Morris, ocorrido em novembro de 1988, que se propagou rapidamente por centenas de máquinas conectadas à ARPANET explorando vulnerabilidades em sendmail, fingerd e mecanismos de autenticação remota (EICHIN; ROCHLIS, 1989; SPAFFORD, 1989). O episódio demonstrou que mesmo sistemas aparentemente bem administrados poderiam ser comprometidos em larga escala, evidenciando a necessidade de mecanismos capazes não apenas de prevenir intrusões, mas também de detectá-las rapidamente.

A detecção de intrusões surge, portanto, como uma disciplina complementar dentro da segurança de sistemas. Em vez de confiar exclusivamente em controles preventivos, sistemas de detecção analisam continuamente atividades registradas no sistema ou na rede, buscando padrões indicativos de comportamento malicioso. Anderson (1980) foi um dos primeiros a formalizar essa abordagem ao propor o uso de trilhas de auditoria para identificar uso indevido de recursos computacionais.

Posteriormente, Denning (1987) apresentou um modelo geral para Intrusion Detection Systems (IDS) baseado em análise estatística de comportamento. Nesse modelo, o comportamento normal de usuários e processos é caracterizado por distribuições estatísticas de eventos observáveis, como frequência de comandos, volume de transferências de arquivos ou horários de login. Desvios significativos dessas distribuições podem indicar atividades suspeitas.

No entanto, apesar da relevância teórica desses modelos, sua implementação prática enfrenta diversos desafios. Sistemas UNIX geram grandes volumes de registros de auditoria, e a análise manual desses dados é impraticável em ambientes com muitos usuários. Além disso, o tráfego de rede TCP/IP introduz novos vetores de ataque que não são necessariamente visíveis apenas através de logs do sistema operacional.

Este artigo aborda esses desafios propondo uma arquitetura integrada de detecção de intrusões que combina três fontes principais de observação:

Nosso objetivo é demonstrar que a combinação dessas fontes permite identificar atividades maliciosas de forma mais eficaz do que qualquer técnica isolada.

  1. Background and Related Work

A pesquisa sobre detecção de intrusões possui raízes em estudos iniciais sobre segurança em sistemas operacionais compartilhados. Durante as décadas de 1960 e 1970, grande parte da investigação concentrou-se em modelos formais de controle de acesso, como o modelo Bell–LaPadula, voltado para confidencialidade em sistemas militares (BELL; LAPADULA, 1973).

Contudo, tais modelos assumem que o sistema operacional implementa corretamente suas políticas de segurança e que os usuários não conseguem contornar os mecanismos de proteção. Na prática, erros de implementação, configurações incorretas e falhas em programas privilegiados frequentemente permitem que invasores obtenham acesso não autorizado.

Saltzer e Schroeder (1975) identificaram vários princípios fundamentais de engenharia de segurança, incluindo fail-safe defaults, least privilege e complete mediation. Embora esses princípios continuem relevantes, sua aplicação prática em sistemas complexos é difícil, especialmente em ambientes com software legado e múltiplos administradores.

Evolução da Detecção de Intrusões

O primeiro estudo sistemático sobre detecção de intrusões foi conduzido por James Anderson (1980), que analisou como trilhas de auditoria poderiam ser utilizadas para detectar comportamento anômalo em sistemas governamentais. Anderson classificou atividades maliciosas em três categorias:

Categoria Descrição Exemplos
Masquerader Usuário externo usando credenciais roubadas login remoto não autorizado
Misfeasor Usuário legítimo abusando de privilégios leitura de arquivos confidenciais
Clandestine user Usuário que obtém controle administrativo modificação de registros de auditoria

Posteriormente, Denning (1987) formalizou o conceito de modelos estatísticos de detecção, nos quais eventos observados são comparados com perfis históricos de comportamento.

A pontuação de anomalia pode ser definida como:

$$ S = \frac{|x - \mu|}{\sigma} $$

onde:

Valores elevados de $S$ indicam possíveis anomalias.

Sistemas Experimentais

Diversos protótipos de IDS foram desenvolvidos ao longo da década de 1980.

Sistema Organização Ano Características
IDES SRI International 1984–1987 análise estatística de usuários
Haystack SRI 1988 correlação de eventos de auditoria
NADIR Los Alamos 1988 análise de logs e alertas
Discovery NSA (pesquisa interna) ~1989 análise de anomalias

Esses sistemas demonstraram a viabilidade da detecção automatizada, mas também evidenciaram desafios significativos relacionados ao volume de dados e à taxa de falsos positivos.

Monitoramento de Rede

Com a crescente adoção do TCP/IP, tornou-se possível observar ataques diretamente no tráfego de rede. Ferramentas como tcpdump, desenvolvidas no Lawrence Berkeley Laboratory, permitem capturar pacotes Ethernet e analisá-los posteriormente.

Tabela de protocolos frequentemente explorados em incidentes observados na ARPANET:

Protocolo Porta típica Vetor de ataque comum
Telnet 23 interceptação de credenciais
FTP 21 upload de programas maliciosos
SMTP (sendmail) 25 execução remota
Finger 79 exploração de buffer

A integração entre monitoramento de rede e análise de logs do sistema é um dos focos centrais deste trabalho.

  1. Threat Model and Problem Formalization

O modelo de ameaça considerado neste estudo reflete o ambiente operacional típico de universidades e centros de pesquisa conectados à ARPANET em 1990.

Assumimos a presença de três tipos principais de adversários:

  1. Intrusos externos remotos
  2. Usuários internos mal-intencionados
  3. Programas auto-replicantes (worms)

Vetores de Ataque

Os vetores de ataque mais comuns observados incluem:

Vetor Descrição Impacto
Senhas fracas ataque de dicionário acesso de usuário
Exploração de serviços vulnerabilidades em sendmail ou fingerd execução remota
Confiança entre hosts .rhosts e rlogin movimento lateral
Modificação de arquivos instalação de backdoors persistência

Formalização do Problema

Considere uma sequência de eventos de auditoria:

$$ E = {e_1, e_2, e_3, …, e_n} $$

Cada evento possui atributos:

$$ e_i = (t_i, u_i, c_i, r_i) $$

onde:

O objetivo do sistema de detecção é estimar a probabilidade:

$$ P(\text{intrusão} | E) $$

e gerar um alerta quando essa probabilidade excede um limiar $\theta$.

  1. Proposed Methodology

A metodologia proposta integra três camadas de observação:

  1. Auditoria de sistema
  2. Monitoramento de rede
  3. Verificação de configuração

Coleta de Logs

Sistemas UNIX modernos já incluem o daemon syslogd, responsável por registrar eventos de sistema.

Exemplo de configuração:

/etc/syslog.conf
auth.notice     /var/log/authlog
daemon.err      /var/log/daemon
mail.debug      /var/log/sendmail

Esses logs são posteriormente analisados por scripts automatizados.

Monitoramento de Rede

Captura de tráfego usando tcpdump:

tcpdump -i le0 -n -s 1500 > captura_rede.log

Pacotes suspeitos são identificados por padrões como:

Análise Estatística

Para cada usuário $u$, construímos um vetor de comportamento:

$$ B_u = (f_{cmd}, f_{login}, f_{net}) $$

onde:

O desvio é calculado utilizando a distância de Mahalanobis:

$$ D^2 = (x - \mu)^T \Sigma^{-1} (x - \mu) $$

Valores elevados indicam comportamento anômalo.

  1. Implementation

A implementação foi realizada em sistemas SunOS 4.0 e 4.3BSD UNIX conectados via Ethernet.

Ferramentas utilizadas:

Ferramenta Função
tcpdump captura de pacotes
COPS auditoria de segurança
awk processamento de logs
cron execução periódica

Execução do COPS:

./cops -audit > relatorio_cops.txt

Script de análise de login:

grep "login" /var/log/authlog | awk '{print $1,$2,$3,$9}'

O sistema de análise foi implementado em linguagem C, com módulos responsáveis por:

  1. Experimental Evaluation

O ambiente experimental incluiu 12 hosts UNIX e aproximadamente 45 usuários ativos.

Tipos de Ataques Simulados

Ataque Descrição
Força bruta Telnet múltiplas tentativas de senha
Exploração de finger overflow de buffer
Transferência FTP maliciosa upload de executável

Resultados

Ataque Detecção (%) Falsos positivos (%)
Telnet brute force 92 6
Finger overflow 81 8
FTP upload 74 10

Volume de Dados Processado

Fonte Eventos/dia
syslog 18,000
tcpdump 250,000 pacotes
auditoria COPS 120 verificações

Os resultados indicam que a correlação entre eventos de rede e logs do sistema reduz significativamente falsos positivos.

  1. Case Study

Um incidente simulado foi conduzido reproduzindo parcialmente o comportamento observado durante o worm de Morris.

O ataque consistiu em:

  1. exploração de sendmail
  2. execução de shell remoto
  3. propagação para hosts confiáveis

Durante o experimento, o sistema detectou:

O alerta foi gerado após 3 minutos de atividade suspeita.

  1. Discussion

Embora os resultados experimentais sejam promissores, existem limitações importantes.

Primeiramente, a análise estatística depende fortemente da qualidade dos perfis de comportamento. Usuários legítimos com padrões altamente variáveis podem gerar falsos positivos.

Outro desafio é o custo computacional. A análise contínua de grandes volumes de logs pode consumir recursos significativos em sistemas com capacidade limitada.

Além disso, invasores sofisticados podem tentar evitar detecção reduzindo a taxa de suas atividades ou manipulando registros de auditoria.

Uma abordagem promissora é a distribuição de sensores em múltiplos hosts, permitindo correlação de eventos em escala de rede.

  1. Conclusion and Future Work

Este artigo apresentou uma arquitetura integrada de detecção de intrusões adequada ao ambiente tecnológico de 1990. A combinação de análise de logs, monitoramento de rede e auditoria de configuração mostrou-se eficaz para identificar diversos tipos de ataques.

Experimentos demonstraram taxas de detecção superiores a 80% em cenários controlados, indicando que a abordagem é viável para implantação em redes acadêmicas e governamentais.

Trabalhos futuros devem explorar:

Com o crescimento contínuo das redes TCP/IP, sistemas de detecção de intrusões provavelmente se tornarão componentes essenciais da segurança operacional.

  1. References

ANDERSON, James P. Computer Security Threat Monitoring and Surveillance. 1980.
https://csrc.nist.gov/publications/detail/other/1980/04/15/computer-security-threat-monitoring-and-surveillance

BELL, D.; LAPADULA, L. Secure Computer Systems: Mathematical Foundations. MITRE, 1973.
https://apps.dtic.mil/sti/pdfs/ADA023588.pdf

DENNING, Dorothy E. An Intrusion-Detection Model. IEEE Transactions on Software Engineering, 1987.
https://doi.org/10.1109/TSE.1987.232894

EICHIN, Mark; ROCHLIS, Jon. With Microscope and Tweezers: An Analysis of the Internet Virus of November 1988. 1989.
https://web.mit.edu/jon/www/virus.html

SPAFFORD, Eugene H. The Internet Worm Program: An Analysis. 1989.
https://docs.lib.purdue.edu/cstech/823/

SALTZER, Jerome; SCHROEDER, Michael. The Protection of Information in Computer Systems. Communications of the ACM, 1975.
https://doi.org/10.1145/361011.361067

LAMPSon, Butler. Protection. Proceedings of the 5th Princeton Symposium on Information Sciences, 1971.
https://bwlampson.site/08-Protection/ProtectionAbstract.html

MORRIS, Robert; THOMPSON, Ken. Password Security: A Case History. Communications of the ACM, 1979.
https://doi.org/10.1145/359168.359172

DIFFIE, Whitfield; HELLMAN, Martin. New Directions in Cryptography. IEEE Transactions on Information Theory, 1976.
https://doi.org/10.1109/TIT.1976.1055638

RIVEST, Ronald; SHAMIR, Adi; ADLEMAN, Leonard. A Method for Obtaining Digital Signatures and Public-Key Cryptosystems. 1978.
https://people.csail.mit.edu/rivest/Rsapaper.pdf

DENNING, Dorothy. Cryptography and Data Security. Addison-Wesley, 1982.
https://dl.acm.org/doi/book/10.5555/1095613

SPAFFORD, Eugene H. Crisis and Aftermath. Communications of the ACM, 1989.
https://doi.org/10.1145/70405.70407

SMAHA, Steven. Haystack: An Intrusion Detection System. 1988.
https://apps.dtic.mil/sti/pdfs/ADA202573.pdf

KEMMERER, Richard. Shared Resource Matrix Methodology. IEEE Symposium on Security and Privacy, 1983.
https://doi.org/10.1109/SP.1983.10019

BISHOP, Matt. Security Problems with the UNIX Operating System. 1989.
https://ntrl.ntis.gov/NTRL/dashboard/searchResults/titleDetail/PB89191076.xhtml

JACOBSON, Van. tcpdump Manual. Lawrence Berkeley Laboratory, 1988.
https://www.tcpdump.org

POSTEL, Jon. Transmission Control Protocol. RFC 793, 1981.
https://www.rfc-editor.org/rfc/rfc793

POSTEL, Jon. Internet Protocol. RFC 791, 1981.
https://www.rfc-editor.org/rfc/rfc791

POSTEL, Jon. Simple Mail Transfer Protocol. RFC 821, 1982.
https://www.rfc-editor.org/rfc/rfc821

REYNOLDS, Joyce; POSTEL, Jon. Assigned Numbers. RFC 1010, 1987.
https://www.rfc-editor.org/rfc/rfc1010

FARMER, Daniel; VENEMA, Wietse. COPS Security Checker. 1989.
https://ftp.porcupine.org/pub/security/index.html

UNIX System V Interface Definition. AT&T, 1985.
https://bitsavers.org/pdf/att/unix/System_V_Interface_Definition

STALLINGS, William. Data and Computer Communications. 1985.
https://archive.org/details/datacomputercomm00stal

DENNING, Dorothy; SACCO, Giovanni. Timestamps in Key Distribution Protocols. Communications of the ACM, 1981.
https://doi.org/10.1145/358549.358564

NEUMANN, Peter. Computer Security Evaluation. 1985.
https://www.csl.sri.com/users/neumann/compsec.html

SPAFFORD, Eugene. Computer Viruses: Dealing with Electronic Vandalism and Programmed Threats. 1989.
https://docs.lib.purdue.edu/cstech/824/