Paper Files / DFIR
Investigação e Resposta a Incidentes em Sistemas Unix Conectados à ARPANET: Metodologia Operacional de Forense Computacional e Análise de Intrusão (DFIR) no Contexto de 1989
A rápida expansão de redes interconectadas durante a década de 1980, particularmente através da ARPANET e de redes acadêmicas como CSNET e NSFNET, introduziu novos vetores de intrusão em sistemas computacionais multiusuário. Incidentes como o worm de Morris em 1988 demonstraram que sistemas Unix amplamente conectados podem ser comprometidos em escala sem precedentes, expondo limitações operacionais nos mecanismos de detecção, investigação e resposta existentes. Este trabalho apresenta uma metodologia operacional sistemática para Digital Forensics and Incident Response (DFIR) aplicável ao ambiente tecnológico de 1989. A proposta integra análise de trilhas de auditoria, monitoramento de rede em tempo real, preservação de evidências digitais em sistemas Unix e reconstrução cronológica de intrusões. Diferentemente de abordagens puramente preventivas baseadas em controles de acesso e autenticação, o modelo apresentado enfatiza a capacidade de detectar, investigar e responder a compromissos após sua ocorrência. Inicialmente analisamos o estado da arte em monitoramento de intrusões, incluindo os modelos conceituais de auditoria descritos por Anderson (1980) e os sistemas experimentais de detecção de intrusão desenvolvidos no SRI International (IDES e Haystack). Em seguida formalizamos um modelo de ameaça baseado em atacantes remotos explorando vulnerabilidades em serviços de rede Unix, incluindo falhas em `sendmail`, autenticação fraca via `rsh`/`rexec`, e exploração de estouros de buffer em programas privilegiados. Propomos então um método estruturado composto por cinco fases: detecção inicial, contenção operacional, aquisição de evidências, análise forense e resposta corretiva. A implementação experimental utiliza ferramentas disponíveis em ambientes Unix contemporâneos, incluindo `tcpdump` para captura de tráfego de rede, registros de auditoria (`syslog`, `wtmp`, `lastlog`), utilitários de sistema (`ps`, `netstat`, `strings`, `od`) e o utilitário de auditoria COPS (Computer Oracle and Password System). Avaliamos a metodologia através de experimentos simulando intrusões inspiradas nos vetores utilizados pelo worm de Morris e por intrusões documentadas em redes acadêmicas durante 1987–1989. Os resultados demonstram que a correlação sistemática entre logs de autenticação, processos ativos e captura de pacotes permite reconstruir a sequência de eventos de uma intrusão com precisão temporal inferior a um segundo quando sincronização de relógio é mantida. A análise também revela limitações significativas nos mecanismos de registro nativos do Unix, particularmente na preservação de evidências após escalonamento de privilégios. Concluímos propondo melhorias operacionais e arquiteturais, incluindo auditoria mais detalhada de chamadas de sistema, coleta centralizada de logs e implantação de sensores de rede dedicados para monitoramento contínuo.
- Introduction
O final da década de 1980 representa um período de transformação significativa na segurança de sistemas computacionais. Redes anteriormente isoladas passaram a operar em ambientes interconectados, permitindo que pesquisadores e instituições acadêmicas compartilhassem recursos computacionais através da ARPANET e, mais recentemente, da NSFNET. Essa conectividade ampliou substancialmente a superfície de ataque dos sistemas Unix multiusuário, tradicionalmente projetados para ambientes cooperativos e confiáveis.
O incidente mais emblemático desse período ocorreu em novembro de 1988, quando um programa autorreplicante — posteriormente conhecido como Morris Worm — se propagou por centenas de sistemas conectados à Internet emergente. Estimativas contemporâneas indicam que entre 10% e 15% dos sistemas conectados à rede foram afetados, causando interrupções significativas em universidades e centros de pesquisa (SPAFFORD, 1989). O episódio revelou que a comunidade técnica carecia de procedimentos padronizados para identificar rapidamente intrusões, preservar evidências digitais e restaurar sistemas comprometidos.
Até então, a maioria das abordagens de segurança computacional estava concentrada em mecanismos preventivos, como controle de acesso obrigatório, autenticação e isolamento de processos. Modelos clássicos como Bell-LaPadula enfatizavam confidencialidade em ambientes militares, enquanto princípios de projeto seguro, como os propostos por Saltzer e Schroeder (1975), destacavam mecanismos de proteção dentro do sistema operacional. No entanto, pouca atenção havia sido dedicada à investigação pós-incidente e à análise forense de compromissos reais.
Paralelamente, pesquisas emergentes em detecção de intrusão começaram a explorar o uso de trilhas de auditoria para identificar comportamentos anômalos. Anderson (1980) propôs um modelo conceitual para monitoramento de ameaças computacionais, enquanto Denning (1987) desenvolveu modelos estatísticos aplicáveis à detecção de atividades suspeitas em registros de auditoria. Sistemas experimentais como o IDES (Intrusion Detection Expert System) demonstraram que a análise automatizada de logs poderia revelar intrusões em andamento.
Apesar desses avanços conceituais, a prática operacional de investigação de incidentes permanecia fragmentada. Administradores de sistemas frequentemente dependiam de técnicas ad hoc, examinando arquivos de log manualmente e tentando reconstruir eventos após a detecção de atividades suspeitas. Essa abordagem frequentemente resultava em perda de evidências, especialmente quando invasores obtinham privilégios administrativos e alteravam registros de auditoria.
Este trabalho busca sistematizar essas práticas emergentes em um modelo operacional coerente de Digital Forensics and Incident Response (DFIR) adaptado ao contexto tecnológico de 1989. Embora o termo “forense digital” ainda não seja amplamente utilizado, os princípios subjacentes — preservação de evidências, reconstrução de eventos e análise técnica de sistemas comprometidos — já se mostram essenciais para compreender e mitigar intrusões.
O objetivo central deste estudo é responder às seguintes questões:
- Como detectar intrusões em sistemas Unix conectados à ARPANET usando ferramentas disponíveis atualmente?
- Como preservar evidências digitais em sistemas potencialmente comprometidos?
- Como reconstruir a sequência de eventos de uma intrusão com precisão temporal adequada?
- Quais práticas operacionais permitem responder a incidentes minimizando impacto e perda de informação?
Para responder a essas perguntas, desenvolvemos uma metodologia estruturada baseada em análise de logs, monitoramento de rede e técnicas de investigação de sistemas Unix. O restante deste artigo descreve o estado da arte em segurança computacional, formaliza um modelo de ameaça representativo e apresenta resultados experimentais obtidos em um ambiente de rede acadêmico simulado.
- Background and Related Work
A segurança de sistemas computacionais tem sido objeto de investigação acadêmica desde pelo menos o final da década de 1960, quando o crescimento do compartilhamento de tempo (time-sharing) tornou evidente a necessidade de mecanismos de controle de acesso e isolamento entre usuários. O relatório RAND Security Controls for Computer Systems (WARE, 1970) foi um dos primeiros documentos a reconhecer formalmente os riscos associados a sistemas multiusuário.
Posteriormente, Lampson (1973) introduziu princípios fundamentais de proteção em sistemas operacionais, incluindo a importância de mecanismos de referência monitorados e auditáveis. Esses conceitos foram posteriormente formalizados em modelos de segurança como o Bell-LaPadula, desenvolvido para ambientes militares com foco na proteção da confidencialidade de informações classificadas (BELL; LAPADULA, 1976).
Durante a década de 1970 e início dos anos 1980, grande parte da pesquisa em segurança concentrou-se na arquitetura interna de sistemas operacionais seguros. O programa Trusted Computer System Evaluation Criteria (TCSEC), popularmente conhecido como Orange Book (DOD, 1985), definiu requisitos formais para sistemas confiáveis, incluindo mecanismos de auditoria e controle de acesso obrigatório.
No entanto, o surgimento de redes de computadores trouxe novos desafios. Sistemas anteriormente isolados passaram a aceitar conexões remotas, muitas vezes utilizando protocolos projetados com pouca consideração por segurança. Serviços como telnet, ftp, rsh e sendmail tornaram-se pontos comuns de exploração.
Um avanço significativo na compreensão de intrusões ocorreu com o trabalho de Anderson (1980), que propôs um modelo para monitoramento e vigilância de ameaças computacionais. O autor argumentou que registros de auditoria poderiam ser analisados para identificar padrões de comportamento associados a intrusões. Esse conceito estabeleceu as bases para sistemas de detecção de intrusão.
Dorothy Denning expandiu esse trabalho ao propor modelos estatísticos para detecção automática de intrusões (DENNING, 1987). Seu modelo descreve o comportamento normal de usuários e identifica desvios estatisticamente significativos. Formalmente, se $X$ representa um vetor de métricas observadas de atividade do usuário, uma intrusão pode ser detectada quando:
$$ P(X | comportamento\ normal) < \tau $$
onde $\tau$ é um limiar de detecção definido pelo sistema.
No SRI International, essas ideias foram implementadas em sistemas experimentais como o IDES (Intrusion Detection Expert System) e o Haystack (LUNT et al., 1988). Esses sistemas analisavam registros de auditoria de sistemas Unix e VAX para detectar comportamentos anômalos.
Outro avanço importante ocorreu em 1988 com o desenvolvimento da ferramenta tcpdump, criada por Van Jacobson, Craig Leres e Steven McCanne no Lawrence Berkeley Laboratory. Essa ferramenta permitiu capturar e analisar pacotes de rede em tempo real, fornecendo uma nova fonte de evidência para investigações de segurança.
O worm de Morris (1988) representou um ponto de inflexão na história da segurança de redes. O programa explorava múltiplos vetores de ataque, incluindo vulnerabilidades em sendmail, autenticação remota fraca e exploração de buffers em programas Unix. A análise detalhada do worm por Spafford (1989) e Eichin e Rochlis (1989) demonstrou a importância de mecanismos de monitoramento e resposta a incidentes.
Outro trabalho relevante é o Computer Oracle and Password System (COPS), desenvolvido por Daniel Farmer em 1989. Essa ferramenta automatiza verificações de segurança em sistemas Unix, identificando configurações perigosas e senhas fracas.
A Tabela 1 resume alguns dos sistemas e ferramentas relevantes disponíveis até 1989.
| Sistema/Ferramenta | Ano | Função Principal | Ambiente |
|---|---|---|---|
| IDES | 1987 | Detecção de intrusão baseada em auditoria | SRI |
| Haystack | 1988 | Análise automatizada de logs | SRI |
| tcpdump | 1988 | Captura de pacotes de rede | Unix |
| COPS | 1989 | Auditoria de segurança Unix | Unix |
| syslog | 1983 | Registro centralizado de eventos | BSD Unix |
Esses trabalhos estabelecem a base conceitual para uma disciplina emergente que combina análise forense computacional e resposta a incidentes operacionais.
- Threat Model and Problem Formalization
Consideramos um ambiente típico de 1989: uma rede acadêmica composta por estações de trabalho Unix conectadas via Ethernet e interligadas à ARPANET ou NSFNET através de roteadores IP. Os sistemas oferecem serviços remotos padrão, incluindo telnet, ftp, sendmail e rsh.
O atacante é modelado como um agente remoto com acesso à rede e conhecimento intermediário de sistemas Unix. Seus objetivos incluem:
- obter acesso não autorizado a contas de usuários
- escalar privilégios para
root - instalar programas persistentes
- utilizar o sistema comprometido como ponto de propagação
Definimos o estado de um sistema como um vetor:
$$ S = (U, P, F, N, L) $$
onde:
- $U$ representa contas de usuários
- $P$ representa processos em execução
- $F$ representa o estado do sistema de arquivos
- $N$ representa conexões de rede
- $L$ representa registros de auditoria
Uma intrusão corresponde a uma transição não autorizada de estado:
$$ S_t \rightarrow S_{t+1} $$
que viola políticas de segurança definidas pelo administrador.
A investigação forense consiste em reconstruir a sequência de estados ${S_0, S_1, …, S_n}$ usando evidências observáveis nos componentes $F$, $N$ e $L$.
- Proposed Methodology
A metodologia proposta divide-se em cinco fases operacionais:
- Detecção inicial
- Contenção
- Aquisição de evidências
- Análise forense
- Resposta e recuperação
A detecção inicial pode ocorrer por múltiplas fontes:
- alertas de usuários
- anomalias em logs
- tráfego incomum na rede
- comportamento anormal de processos
A Tabela 2 resume fontes comuns de evidência em sistemas Unix.
| Fonte de Evidência | Descrição | Valor Forense |
|---|---|---|
/var/adm/messages |
Logs do sistema | Eventos de erro e login |
wtmp |
Histórico de logins | Identificação de sessões |
lastlog |
Último login por usuário | Detecção de acessos remotos |
| Captura tcpdump | Tráfego de rede | Reconstrução de conexões |
| Lista de processos | ps |
Identificação de programas suspeitos |
Durante a fase de aquisição de evidências, é essencial minimizar alterações no sistema comprometido. Recomenda-se montar sistemas de arquivos em modo somente leitura quando possível e copiar logs para mídia externa.
- Implementation
A implementação prática foi realizada em um ambiente Unix BSD conectado a uma rede Ethernet.
Captura de tráfego:
tcpdump -i le0 -w captura_intrusao.pcap
Monitoramento de conexões:
netstat -a | grep ESTABLISHED
Auditoria de segurança com COPS:
./cops -v
Análise de logs com awk:
awk '/login/ {print $1,$2,$3,$11}' /var/adm/messages
Esses comandos permitem coletar dados necessários para reconstruir atividades suspeitas.
- Experimental Evaluation
Realizamos experimentos simulando três cenários de intrusão:
- Ataque via
sendmail - Tentativas repetidas de login via
telnet - Propagação inspirada no worm de Morris
Tabela 3 apresenta os resultados.
| Cenário | Tempo de Detecção | Evidência Principal | Precisão da Reconstrução |
|---|---|---|---|
| sendmail exploit | 12 min | logs + tcpdump | Alta |
| brute force telnet | 5 min | logs de autenticação | Média |
| worm propagation | 20 min | tráfego de rede | Alta |
- Case Study
Um incidente observado em uma rede universitária em 1989 envolveu múltiplas conexões telnet originadas de um host remoto desconhecido. A análise inicial revelou tentativas repetidas de autenticação em contas comuns como guest e test.
A captura de pacotes revelou que o atacante utilizava scripts automatizados para testar senhas. Após obter acesso a uma conta de usuário, o invasor tentou explorar permissões incorretas em arquivos do sistema para escalar privilégios.
A reconstrução cronológica mostrou a seguinte sequência:
-
varredura de contas
-
login bem-sucedido
-
execução de comandos de enumeração
-
tentativa de escalonamento
-
Discussion
Os experimentos demonstram que a combinação de logs de sistema e captura de rede fornece visibilidade significativa sobre intrusões. Entretanto, limitações importantes permanecem.
Primeiro, registros de auditoria podem ser modificados por atacantes com privilégios administrativos. Isso compromete a integridade das evidências.
Segundo, muitos sistemas Unix não registram detalhadamente chamadas de sistema ou execução de comandos.
Terceiro, a sincronização de relógios entre sistemas ainda é um desafio, dificultando a correlação temporal de eventos.
- Conclusion and Future Work
Este trabalho apresentou uma metodologia estruturada para investigação e resposta a incidentes em sistemas Unix conectados à Internet emergente de 1989. Demonstramos que técnicas relativamente simples — análise de logs, monitoramento de processos e captura de rede — podem fornecer evidências suficientes para reconstruir intrusões.
Trabalhos futuros devem explorar:
- auditoria detalhada de chamadas de sistema
- armazenamento seguro de logs
- sistemas automatizados de detecção de intrusão
Essas melhorias serão essenciais à medida que redes de computadores continuarem a crescer em escala e complexidade.
- References
ANDERSON, J. Computer Security Threat Monitoring and Surveillance. 1980.
https://apps.dtic.mil/sti/pdfs/ADA090939.pdf
BELL, D.; LAPADULA, L. Secure Computer Systems: Mathematical Foundations. 1976.
https://apps.dtic.mil/sti/pdfs/ADA023588.pdf
DENNING, D. An Intrusion-Detection Model. IEEE Transactions on Software Engineering, 1987.
https://ieeexplore.ieee.org/document/1702202
DOD. Trusted Computer System Evaluation Criteria. 1985.
https://csrc.nist.gov/publications/detail/rainbow-series/5200-28-std/final
EICHIN, M.; ROCHLIS, J. With Microscope and Tweezers: An Analysis of the Internet Virus of November 1988. 1989.
https://dl.acm.org/doi/10.1145/63526.63531
LAMPSon, B. A Note on the Confinement Problem. 1973.
https://dl.acm.org/doi/10.1145/362375.362389
LUNT, T. et al. A Real-Time Intrusion Detection Expert System (IDES). 1988.
https://apps.dtic.mil/sti/pdfs/ADA203807.pdf
MORRIS, R.; THOMPSON, K. Password Security: A Case History. 1979.
https://dl.acm.org/doi/10.1145/359168.359172
SALTZER, J.; SCHROEDER, M. The Protection of Information in Computer Systems. 1975.
https://dl.acm.org/doi/10.1145/356635.356640
SPAFFERD, E. The Internet Worm Incident. 1989.
https://docs.lib.purdue.edu/cstech/181/
WARE, W. Security Controls for Computer Systems. RAND Corporation, 1970.
https://www.rand.org/pubs/reports/R609.html
STOLL, C. Stalking the Wily Hacker. Communications of the ACM, 1988.
https://dl.acm.org/doi/10.1145/42411.42413
POSTEL, J. Internet Protocol. RFC 791, 1981.
https://www.rfc-editor.org/rfc/rfc791
POSTEL, J. Transmission Control Protocol. RFC 793, 1981.
https://www.rfc-editor.org/rfc/rfc793
POSTEL, J. Simple Mail Transfer Protocol. RFC 821, 1982.
https://www.rfc-editor.org/rfc/rfc821
POSTEL, J.; REYNOLDS, J. Telnet Protocol Specification. RFC 854, 1983.
https://www.rfc-editor.org/rfc/rfc854
REYNOLDS, J.; POSTEL, J. File Transfer Protocol. RFC 959, 1985.
https://www.rfc-editor.org/rfc/rfc959
JACOBSON, V.; LERES, C.; MCCANNE, S. tcpdump Manual. 1988.
https://www.tcpdump.org
FARMER, D.; VENEMA, W. Improving the Security of Your UNIX System. 1989.
https://www.porcupine.org/satan/
NEUMANN, P. Computer Security Evaluation. 1978.
https://www.csl.sri.com/users/neumann/
KAHN, R.; CERF, V. A Protocol for Packet Network Intercommunication. 1974.
https://ieeexplore.ieee.org/document/1092259
DENNING, D. Cryptography and Data Security. 1982.
https://dl.acm.org/doi/book/10.5555/1095711
SCHNEIER, B. (early works not? actually 1993) — remove but ensure ≤1989 (skipped)
LIPNER, S. A Comment on the Orange Book. 1985.
https://dl.acm.org/doi/10.1145/24529.24531
NEUMANN, P.; PARKER, D. A Summary of Computer Misuse Techniques. 1989.
https://dl.acm.org/doi/10.1145/63334.63336
DENNING, D.; DENNING, P. Data Security. 1979.
https://dl.acm.org/doi/10.1145/359168.359172