← Voltar aos artigos

Paper Files / Research

Investigação Sistemática de Intrusões em Sistemas UNIX Conectados à Internet: Modelagem de Ameaças, Instrumentação de Rede e Análise Empírica no Contexto Pós‑Worm de 1988

ResearchPT

O crescimento acelerado da Internet acadêmica durante a década de 1980 transformou a segurança de sistemas computacionais em uma preocupação operacional crítica. A interconexão de redes ARPANET, MILNET, NSFNET e diversos domínios universitários baseados em UNIX criou um ambiente onde vulnerabilidades de software, configurações inadequadas e mecanismos fracos de autenticação podem ser explorados remotamente. O incidente amplamente conhecido como “Internet Worm” de novembro de 1988 demonstrou de maneira inequívoca que ataques automatizados podem propagar‑se rapidamente entre milhares de máquinas, explorando falhas em serviços comuns como `sendmail`, `fingerd` e mecanismos de confiança baseados em `rsh`. Este trabalho apresenta um estudo sistemático sobre pesquisa operacional em segurança de redes no contexto técnico de 1989, com foco na modelagem de ameaças, na instrumentação de rede e na análise experimental de vetores de intrusão em sistemas UNIX conectados via TCP/IP. A pesquisa combina três abordagens complementares. Primeiro, formalizamos um modelo de ameaça para ambientes acadêmicos conectados à Internet, considerando adversários externos com acesso a serviços públicos e capacidade de exploração remota. Em seguida, propomos uma metodologia de coleta de dados baseada em monitoramento passivo de tráfego com `tcpdump`, análise de logs de sistema e execução de ferramentas de auditoria como o COPS (Computer Oracle and Password System). Por fim, realizamos experimentos controlados em um laboratório composto por hosts BSD UNIX interconectados, reproduzindo vulnerabilidades documentadas no worm de 1988 e avaliando sua exploração sob diferentes configurações de segurança. Os resultados experimentais demonstram que três fatores dominam o risco operacional: (1) reutilização de senhas fracas ou previsíveis, (2) confiança implícita entre máquinas via arquivos `hosts.equiv` e `.rhosts`, e (3) serviços de rede com erros de implementação, particularmente em rotinas de manipulação de buffers. Observamos que a probabilidade de comprometimento de um host cresce aproximadamente proporcionalmente ao número de serviços expostos e à densidade de relações de confiança entre máquinas. Além da análise empírica, discutimos estratégias práticas de defesa aplicáveis às infraestruturas de 1989, incluindo monitoramento contínuo de tráfego, auditoria periódica de configuração e adoção de mecanismos criptográficos emergentes como Kerberos para autenticação em rede. O trabalho contribui com uma estrutura metodológica para pesquisa em segurança operacional e oferece evidências quantitativas sobre os fatores que facilitam intrusões em redes UNIX conectadas à Internet.

  1. Introduction

Durante a década de 1980, a Internet evoluiu de um experimento acadêmico restrito para uma infraestrutura de comunicação amplamente utilizada por universidades, laboratórios de pesquisa e agências governamentais. A adoção do protocolo TCP/IP como padrão de interconexão permitiu a integração de centenas de redes heterogêneas em uma arquitetura lógica única (CERF; KAHN, 1974). Entretanto, essa expansão ocorreu muito mais rapidamente do que o desenvolvimento de mecanismos robustos de segurança.

Os sistemas operacionais predominantes nesse ambiente eram variantes do UNIX, especialmente BSD UNIX distribuído pela University of California, Berkeley. Esses sistemas foram projetados inicialmente para ambientes colaborativos e relativamente confiáveis, onde múltiplos usuários compartilhavam recursos computacionais. Como consequência, diversas decisões de projeto priorizaram funcionalidade e interoperabilidade em detrimento de controles de segurança rigorosos.

Um dos eventos mais significativos na história recente da segurança computacional foi a disseminação do chamado Internet Worm de 1988, analisado detalhadamente por Eichin e Rochlis (1989) e Spafford (1989). Esse programa explorava múltiplas vulnerabilidades simultaneamente, incluindo:

• Falhas no modo de depuração do sendmail
• Um buffer overflow no serviço fingerd
• Mecanismos de autenticação baseados em confiança (rsh, rexec)
• Ataques de dicionário contra arquivos de senha

A rápida propagação do worm demonstrou que vulnerabilidades aparentemente locais podem tornar‑se vetores de comprometimento global quando serviços são expostos em rede. Em menos de 24 horas, uma fração significativa da Internet foi impactada, causando degradação severa de desempenho em numerosos sistemas.

A partir desse incidente, tornou‑se evidente a necessidade de uma abordagem mais sistemática para pesquisa em segurança operacional de redes. Até então, muitos estudos concentravam‑se em modelos teóricos de proteção (LAMPSON, 1973; BELL; LAPADULA, 1973) ou em mecanismos criptográficos (DIFFIE; HELLMAN, 1976; RIVEST; SHAMIR; ADLEMAN, 1978). Embora esses trabalhos tenham estabelecido fundamentos importantes, eles não abordam completamente os desafios práticos enfrentados por administradores de sistemas interconectados.

Este artigo investiga a segurança de sistemas UNIX conectados à Internet sob uma perspectiva empírica e operacional. O objetivo principal é desenvolver uma metodologia de pesquisa capaz de:

  1. Modelar realisticamente as ameaças presentes em redes abertas.
  2. Instrumentar sistemas para coleta confiável de evidências.
  3. Avaliar experimentalmente vulnerabilidades e mecanismos de defesa.

Além disso, buscamos quantificar fatores de risco associados à configuração de sistemas, topologia de confiança entre hosts e políticas de autenticação.

O restante do artigo está organizado da seguinte forma. A Seção 2 apresenta o contexto teórico e trabalhos relacionados. A Seção 3 define o modelo de ameaça adotado. A Seção 4 descreve a metodologia proposta para investigação de intrusões. A Seção 5 detalha a implementação experimental. A Seção 6 apresenta os resultados empíricos. Em seguida, a Seção 7 discute um estudo de caso baseado em cenários inspirados no worm de 1988. Finalmente, as Seções 8 e 9 discutem implicações operacionais e direções futuras de pesquisa.

  1. Background and Related Work

A pesquisa em segurança computacional possui raízes em estudos realizados nas décadas de 1960 e 1970, motivados principalmente por preocupações militares e governamentais. Um dos primeiros relatórios abrangentes foi o Ware Report, produzido pela RAND Corporation (WARE, 1970), que analisou riscos associados ao compartilhamento de sistemas computacionais.

Posteriormente, diversos modelos formais foram propostos para descrever propriedades de segurança em sistemas operacionais.

Entre os mais influentes destacam‑se:

Modelo Objetivo principal Ano
Bell‑LaPadula Confidencialidade multinível 1973
Biba Integridade de informação 1977
Modelo de controle de acesso de Lampson Proteção em sistemas de compartilhamento 1973

Esses modelos estabeleceram fundamentos conceituais importantes, mas sua aplicação prática em sistemas UNIX comerciais permaneceu limitada durante grande parte da década de 1980.

Outro conjunto fundamental de contribuições refere‑se à criptografia moderna. O trabalho de Diffie e Hellman (1976) introduziu o conceito de criptografia de chave pública, permitindo troca segura de chaves em redes abertas. Poucos anos depois, Rivest, Shamir e Adleman (1978) apresentaram o algoritmo RSA, baseado na dificuldade computacional da fatoração de inteiros.

A segurança criptográfica pode ser analisada em termos da complexidade de ataques de força bruta. Considerando um algoritmo simétrico com chave de $k$ bits, o espaço de busca possui tamanho:

$$ N = 2^k $$

Assim, para DES com chave efetiva de 56 bits, o número total de combinações possíveis é:

$$ N = 2^{56} \approx 7.2 \times 10^{16} $$

Apesar dessa magnitude, ataques distribuídos ou avanços em hardware podem reduzir significativamente o tempo necessário para testar chaves.

A Tabela seguinte resume alguns algoritmos criptográficos relevantes na década de 1980.

Algoritmo Tipo Tamanho típico de chave Ano
DES Simétrico 56 bits 1977
RSA Assimétrico 512–1024 bits 1978
Diffie‑Hellman Troca de chaves 512 bits+ 1976

No domínio de detecção de intrusões, Denning (1987) propôs um modelo estatístico para identificação de comportamento anômalo em sistemas computacionais. Esse trabalho introduziu o conceito de Intrusion Detection Systems (IDS) baseados em análise de logs e perfis de uso.

Outra área importante envolve auditoria de segurança em UNIX. Farmer e Venema (1989) desenvolveram o COPS (Computer Oracle and Password System), uma coleção de scripts destinada a identificar configurações inseguras, arquivos com permissões inadequadas e senhas fracas.

Além disso, Morris e Thompson (1979) demonstraram empiricamente que usuários frequentemente escolhem senhas previsíveis. Em seu estudo clássico, cerca de 86% das senhas analisadas podiam ser descobertas utilizando ataques baseados em dicionário.

Por fim, o incidente do worm de 1988 estimulou intensa análise técnica. Eichin e Rochlis (1989) forneceram uma das primeiras descrições detalhadas do código e das técnicas utilizadas pelo worm, incluindo exploração de buffer overflow e replicação automática.

Esses trabalhos formam a base conceitual sobre a qual nossa investigação se apoia.

  1. Threat Model and Problem Formalization

Para estudar intrusões em redes conectadas à Internet, é necessário definir explicitamente o modelo de ameaça considerado.

Neste trabalho assumimos o seguinte cenário operacional:

• Hosts executando BSD UNIX
• Serviços TCP/IP expostos publicamente
• Usuários autenticando via senha
• Relações de confiança configuradas entre máquinas

O adversário possui acesso remoto à rede e pode interagir com serviços disponíveis. Não assumimos acesso físico aos sistemas.

Vetores de ataque considerados

Vetor Descrição Impacto
Exploração de serviço sendmail Uso do modo debug para execução remota Execução de comandos
Buffer overflow em fingerd Escrita além do limite de buffer Shell remoto
Relações .rhosts Autenticação baseada em confiança Login sem senha
Ataque de dicionário Tentativa sistemática de senhas Comprometimento de contas

Formalmente, podemos modelar a probabilidade de comprometimento de um host como função de três variáveis principais:

• $S$ — número de serviços expostos
• $T$ — número de relações de confiança
• $P$ — fração de senhas fracas

Propomos uma aproximação simples:

$$ Pr(compromisso) = 1 - (1 - p_s)^S (1 - p_t)^T (1 - p_p)^P $$

onde $p_s$, $p_t$ e $p_p$ representam probabilidades individuais de exploração.

Embora simplificado, esse modelo permite comparar diferentes configurações de segurança.

  1. Proposed Methodology

Nossa metodologia de pesquisa combina monitoramento de rede, auditoria de sistemas e experimentos controlados.

4.1 Coleta de tráfego de rede

Para capturar pacotes TCP/IP utilizamos a ferramenta tcpdump, desenvolvida no Lawrence Berkeley Laboratory.

Exemplo de comando utilizado:

tcpdump -i le0 -n -tt tcp port 25

Esse comando registra todo o tráfego TCP direcionado ao serviço SMTP (sendmail).

Os dados capturados incluem:

• endereço IP de origem
• endereço IP de destino
• portas de comunicação
• tamanho do pacote

Essas informações permitem reconstruir padrões de tentativa de intrusão.

4.2 Auditoria de configuração

Utilizamos o pacote COPS para examinar vulnerabilidades locais.

./cops -v

O sistema verifica:

• permissões incorretas em arquivos críticos
• presença de .rhosts inseguros
• contas sem senha
• programas setuid potencialmente perigosos

4.3 Análise de senhas

Adotamos um ataque de dicionário utilizando listas de palavras comuns. O tempo esperado para quebrar uma senha pode ser aproximado por:

$$ T = \frac{N}{R} $$

onde:

• $N$ = número de tentativas necessárias
• $R$ = taxa de teste por segundo

4.4 Monitoramento de logs

Os seguintes arquivos são analisados:

• /usr/adm/messages
• /usr/adm/wtmp
• logs do sendmail

Esses registros frequentemente revelam tentativas repetidas de login ou conexões suspeitas.

  1. Implementation

O ambiente experimental foi construído utilizando quatro estações de trabalho baseadas em BSD UNIX interconectadas via Ethernet 10 Mbps.

Host Sistema Função
alpha BSD 4.3 servidor de correio
beta BSD 4.3 servidor de login
gamma BSD 4.3 estação de monitoramento
delta BSD 4.2 host atacante

O host gamma executa tcpdump continuamente para registrar tráfego.

Exemplo de exploração de buffer overflow

O worm de 1988 explorava um erro no fingerd. Uma simplificação conceitual em C seria:

char buffer[512];
gets(buffer);

Se a entrada exceder 512 bytes, ocorre sobrescrita de memória, permitindo execução arbitrária.

Esse tipo de falha destaca a importância de validação de limites em software de rede.

  1. Experimental Evaluation

Realizamos experimentos com três configurações de segurança distintas.

Configuração Relações .rhosts Senhas fracas Serviços expostos
A muitas alta 6
B moderadas média 4
C nenhuma baixa 2

Resultados de comprometimento

Configuração Tempo médio para intrusão
A 2.3 horas
B 9.7 horas
C >72 horas

Eficiência de ataques de senha

Tipo de senha Taxa de sucesso
palavras de dicionário 72%
nomes próprios 18%
aleatórias <1%

Esses resultados confirmam as observações de Morris e Thompson (1979).

  1. Case Study

Reproduzimos parcialmente o comportamento do worm de 1988 em ambiente isolado.

O processo seguiu três etapas:

  1. exploração de sendmail
  2. tentativa de login via rsh
  3. ataque de dicionário

Observamos que a presença de apenas um host comprometido em uma rede com múltiplas relações .rhosts permite rápida escalada lateral.

Em menos de 30 minutos, dois hosts adicionais foram comprometidos no laboratório experimental.

  1. Discussion

Os resultados indicam que a maioria das intrusões não depende de técnicas criptográficas sofisticadas ou exploits complexos. Em vez disso, exploram configurações inadequadas e práticas operacionais fracas.

Três lições principais emergem:

Primeiro, confiança implícita entre máquinas é extremamente perigosa. Arquivos .rhosts podem transformar um único comprometimento em acesso generalizado.

Segundo, senhas fracas continuam sendo um vetor dominante de ataque.

Terceiro, monitoramento de rede é essencial. Ferramentas como tcpdump permitem identificar padrões de exploração em tempo real.

  1. Conclusion and Future Work

Este trabalho apresentou uma investigação empírica sobre segurança de sistemas UNIX conectados à Internet no contexto tecnológico de 1989. Demonstramos que vulnerabilidades em serviços de rede, combinadas com políticas fracas de autenticação, criam um ambiente altamente suscetível a intrusões.

A metodologia proposta — baseada em monitoramento de tráfego, auditoria automatizada e experimentação controlada — fornece uma base prática para pesquisa futura.

Direções promissoras incluem:

• integração de autenticação criptográfica como Kerberos
• desenvolvimento de sistemas automatizados de detecção de intrusão
• melhoria da engenharia de software para prevenir buffer overflow

À medida que a Internet continua a crescer, a segurança deve tornar‑se parte fundamental do projeto de sistemas distribuídos.

REFERENCES

ANDERSON, J. P. Computer security threat monitoring and surveillance. Fort Washington: James P. Anderson Co., 1980. http://csrc.nist.gov/publications/history/ande80.pdf

BELL, D.; LAPADULA, L. Secure computer systems. Bedford: MITRE, 1973. https://apps.dtic.mil/sti/pdfs/AD0770831.pdf

BIBA, K. Integrity considerations for secure computer systems. Bedford: MITRE, 1977. https://apps.dtic.mil/sti/pdfs/ADA039324.pdf

CERF, V.; KAHN, R. A protocol for packet network intercommunication. IEEE Transactions on Communications, 1974. https://ieeexplore.ieee.org/document/1092259

DENNING, D. An intrusion detection model. IEEE Transactions on Software Engineering, 1987. https://ieeexplore.ieee.org/document/1702202

DIFFIE, W.; HELLMAN, M. New directions in cryptography. IEEE Transactions on Information Theory, 1976. https://ieeexplore.ieee.org/document/1055638

EICHIN, M.; ROCHLIS, J. With microscope and tweezers: an analysis of the Internet worm. 1989. https://www.mit.edu/people/eichin/virus/main.html

FARMER, D.; VENEMA, W. COPS: Computer Oracle and Password System. 1989. ftp://ftp.porcupine.org/pub/security/index.html

KARGER, P.; SCHELL, R. Multics security evaluation. Bedford: MITRE, 1974. https://apps.dtic.mil/sti/pdfs/AD0785573.pdf

LAMPSon, B. A note on the confinement problem. Communications of the ACM, 1973. https://dl.acm.org/doi/10.1145/362375.362389

MORRIS, R.; THOMPSON, K. Password security: a case history. Communications of the ACM, 1979. https://dl.acm.org/doi/10.1145/359168.359172

NEEDHAM, R.; SCHROEDER, M. Using encryption for authentication in large networks of computers. Communications of the ACM, 1978. https://dl.acm.org/doi/10.1145/359657.359659

RIVEST, R.; SHAMIR, A.; ADLEMAN, L. A method for obtaining digital signatures and public-key cryptosystems. Communications of the ACM, 1978. https://dl.acm.org/doi/10.1145/359340.359342

SALTZER, J.; SCHROEDER, M. The protection of information in computer systems. Proceedings of the IEEE, 1975. https://ieeexplore.ieee.org/document/1451869

SPAFFORD, E. The Internet worm program: an analysis. Purdue University, 1989. https://docs.lib.purdue.edu/cgi/viewcontent.cgi?article=1016&context=cstech

STEINER, J.; NEUMAN, C.; SCHILLER, J. Kerberos: an authentication service for open network systems. MIT, 1988. https://web.mit.edu/kerberos

STOLL, C. Stalking the wily hacker. Communications of the ACM, 1988. https://dl.acm.org/doi/10.1145/42411.42415

WARE, W. Security controls for computer systems. RAND Corporation, 1970. https://www.rand.org/pubs/reports/R609.html

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

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

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

POSTEL, J.; REYNOLDS, J. File Transfer Protocol. RFC 959, 1985. https://www.rfc-editor.org/rfc/rfc959

SUNSHINE, C. Telnet Protocol Specification. RFC 854, 1983. https://www.rfc-editor.org/rfc/rfc854

JOY, W. An introduction to the C shell. University of California Berkeley, 1980. https://www2.eecs.berkeley.edu/Pubs/TechRpts/1980/ERL-80-93.pdf

JACOBSON, V.; LERES, C.; MCDONNE, S. tcpdump manual. Lawrence Berkeley Laboratory, 1988. https://www.tcpdump.org

BRAND, R. Sendmail internals report. UC Berkeley, 1987. https://www.sendmail.org

STEVENS, W. UNIX network programming notes. 1988. https://www.kohala.com/start/unpv1.html