Paper Files / Research
Pesquisa Experimental em Segurança de Sistemas UNIX Conectados à ARPANET: Modelagem de Ameaças, Exploração de Vulnerabilidades e Estratégias de Defesa (1988)
A consolidação da ARPANET e a crescente interconexão entre sistemas UNIX acadêmicos, governamentais e militares ao longo da década de 1980 transformaram radicalmente o perfil de risco das infraestruturas computacionais. A segurança, antes concebida majoritariamente como um problema de controle físico e autenticação local, passou a exigir abordagens formais de modelagem de ameaças, análise de vulnerabilidades remotas e mecanismos de detecção de intrusão em nível de rede. Este trabalho apresenta uma pesquisa experimental abrangente sobre segurança de sistemas UNIX conectados à ARPANET, com ênfase em serviços como Telnet, FTP, SMTP e rsh, bem como nos mecanismos de autenticação baseados em senhas e arquivos de confiança (e.g., `.rhosts`). Propomos um modelo formal de ameaça fundamentado em capacidades observáveis de atacantes remotos, incluindo interceptação de tráfego, exploração de erros de implementação e abuso de confiança entre hosts. Desenvolvemos uma metodologia sistemática de avaliação de segurança que combina análise estática de configuração, varredura ativa de portas TCP, testes de força bruta de senha e experimentos controlados de exploração de falhas de memória, inspirados por incidentes recentes envolvendo programas de correio eletrônico e o subsistema finger. Implementamos protótipos de ferramentas de auditoria utilizando utilitários padrão de UNIX (netstat, fingerd, sendmail, telnet) e analisadores de pacotes baseados em libpcap. Os experimentos, conduzidos em ambiente controlado com múltiplas variantes de BSD UNIX, demonstram taxas significativas de exposição de serviços desnecessários, reutilização insegura de senhas e vulnerabilidades exploráveis remotamente. Apresentamos métricas quantitativas de risco e discutimos contramedidas técnicas, incluindo hardening de serviços, filtragem em gateways e uso de criptografia de chave pública conforme proposto por Diffie e Hellman. Concluímos que a pesquisa sistemática em segurança deve ser integrada ao ciclo de desenvolvimento de sistemas distribuídos, sob pena de comprometer a confiabilidade das redes acadêmicas e estratégicas emergentes.
- Introduction
A década de 1980 testemunhou a transição de ambientes computacionais isolados para ecossistemas distribuídos interconectados por redes de longa distância. A ARPANET, inicialmente concebida como um experimento de comutação de pacotes resiliente a falhas (BARAN, 1964), evoluiu para uma infraestrutura crítica que conecta universidades, laboratórios de pesquisa e agências governamentais. Paralelamente, o sistema operacional UNIX, descrito por Ritchie e Thompson (1974), consolidou-se como a plataforma predominante em ambientes acadêmicos, favorecendo a portabilidade e a interoperabilidade.
Contudo, a interconexão ampliou exponencialmente a superfície de ataque. Serviços originalmente projetados para ambientes cooperativos — como Telnet, FTP e o conjunto de utilitários r-commands (rsh, rlogin, rcp) — passaram a operar sobre redes amplas, onde a suposição de confiança implícita entre hosts não mais se sustenta. A autenticação baseada exclusivamente em senha, transmitida em texto claro, e mecanismos de confiança por endereço IP ou nome de host revelaram-se insuficientes diante de atacantes capazes de interceptar tráfego ou falsificar identidades.
Incidentes recentes envolvendo exploração de falhas em serviços de rede e propagação automatizada de código malicioso evidenciam a necessidade de pesquisa sistemática em segurança. A análise empírica de vulnerabilidades, aliada à formalização de modelos de ameaça, constitui passo essencial para compreender o risco inerente a sistemas distribuídos. A literatura até o momento concentrou-se amplamente em modelos formais de segurança (BELL; LAPADULA, 1973; DENNING, 1976), mas carece de estudos experimentais extensivos que avaliem a robustez de implementações reais em ambientes interconectados.
Este trabalho propõe preencher essa lacuna por meio de uma investigação abrangente de sistemas UNIX conectados à ARPANET. Nosso objetivo é desenvolver uma metodologia replicável de pesquisa em segurança, combinando teoria formal e experimentação prática. Avaliamos configurações padrão, medimos exposição de serviços, executamos testes controlados de exploração e quantificamos riscos. Ao fazê-lo, buscamos estabelecer bases científicas para a disciplina emergente de segurança em redes.
A relevância deste estudo é dupla. Primeiramente, fornece evidências empíricas sobre vulnerabilidades concretas em sistemas amplamente utilizados. Em segundo lugar, propõe diretrizes metodológicas que podem orientar pesquisas futuras, fomentando uma cultura de segurança fundamentada em experimentação rigorosa e análise quantitativa.
- Background and Related Work
A segurança da informação, enquanto disciplina formal, possui raízes em pesquisas sobre controle de acesso e confidencialidade em sistemas multiusuário. O modelo Bell-LaPadula (BELL; LAPADULA, 1973) introduziu formalismo matemático para preservar confidencialidade em ambientes classificados, estabelecendo propriedades como no read up e no write down. Posteriormente, Denning (1976) expandiu a noção de controle de fluxo de informação, formalizando políticas de segurança baseadas em rótulos.
Saltzer e Schroeder (1975) delinearam princípios fundamentais de engenharia de segurança, incluindo economia de mecanismo, privilégio mínimo e falha segura. Esses princípios permanecem altamente relevantes na análise de serviços de rede, cuja complexidade crescente frequentemente viola o princípio de simplicidade.
No contexto de redes, a arquitetura TCP/IP, descrita por Postel (1981), estabeleceu o padrão de comunicação da ARPANET. Protocolos como Telnet (POSTEL; REYNOLDS, 1983) e FTP (POSTEL; REYNOLDS, 1985) foram concebidos em ambiente de confiança mútua. O Simple Mail Transfer Protocol (POSTEL, 1982) permitiu troca eficiente de mensagens, mas sem mecanismos intrínsecos de autenticação robusta.
A criptografia de chave pública, proposta por Diffie e Hellman (1976) e implementada por Rivest, Shamir e Adleman (1978), abriu possibilidades para autenticação forte e troca segura de chaves. Contudo, sua adoção prática em serviços de rede permanece limitada, em parte devido a restrições computacionais e à ausência de infraestrutura padronizada de distribuição de chaves.
Do ponto de vista experimental, estudos como o de Morris e Thompson (1979) demonstraram a fragilidade de senhas escolhidas por usuários, evidenciando que uma fração significativa pode ser descoberta por ataques de dicionário. Anderson (1980) analisou ameaças práticas a sistemas computacionais, destacando vulnerabilidades humanas e organizacionais.
A tabela a seguir resume contribuições fundamentais até 1988:
| Autor(es) | Ano | Contribuição | Impacto na Segurança de Redes |
|---|---|---|---|
| Bell; LaPadula | 1973 | Modelo formal de confidencialidade | Base teórica para políticas de acesso |
| Saltzer; Schroeder | 1975 | Princípios de engenharia segura | Diretrizes de projeto |
| Diffie; Hellman | 1976 | Criptografia de chave pública | Autenticação e troca de chaves |
| Rivest; Shamir; Adleman | 1978 | Algoritmo RSA | Assinaturas digitais |
| Morris; Thompson | 1979 | Análise de senhas UNIX | Evidência empírica de fraqueza |
Apesar desses avanços, a lacuna entre teoria e prática permanece significativa. Nossa pesquisa insere-se nesse espaço, propondo investigação empírica sistemática em ambiente operacional.
- Threat Model and Problem Formalization
Definimos o sistema alvo como um conjunto de hosts UNIX conectados via TCP/IP à ARPANET, oferecendo serviços remotos padrão. O atacante é modelado como entidade com as seguintes capacidades:
- Estabelecer conexões TCP arbitrárias a portas expostas.
- Interceptar tráfego em segmento de rede compartilhado.
- Executar código em host remoto caso obtenha credenciais válidas.
- Explorar erros de implementação que resultem em corrupção de memória.
Formalizamos o risco como função da probabilidade de exploração $P(E)$ e do impacto $I(E)$ associado a um evento $E$:
$$ R(E) = P(E) \times I(E) $$
A probabilidade pode ser estimada empiricamente pela frequência observada de sucesso em testes controlados:
$$ P(E) = \frac{n_{sucesso}}{n_{tentativas}} $$
O impacto é classificado ordinalmente (baixo, médio, alto) conforme acesso obtido: usuário comum, privilégio de superusuário, ou comprometimento total do sistema.
A superfície de ataque $S$ é definida como o conjunto de serviços ativos:
$$ S = { s_i \mid porta_i ; aberta } $$
Reduzir $|S|$ constitui estratégia direta de mitigação.
- Proposed Methodology
Nossa metodologia compreende cinco fases: (1) inventário de serviços, (2) análise de configuração, (3) teste de autenticação, (4) exploração controlada de falhas, (5) mensuração de impacto.
O inventário é realizado via análise de portas TCP utilizando conexões manuais com Telnet:
$ telnet host-alvo 21
$ telnet host-alvo 23
$ telnet host-alvo 25
A resposta do banner identifica serviço e versão aproximada. Em seguida, utiliza-se:
$ netstat -a
para listar portas ativas localmente.
Para análise de senhas, empregamos programa de teste baseado em função crypt() do UNIX, conforme descrito por Morris e Thompson (1979). O pseudocódigo executa comparação sistemática contra dicionário reduzido.
Testes de exploração de falhas incluem envio de entradas extensas a serviços interativos, observando travamentos ou comportamento anômalo. Pacotes são monitorados por analisador baseado em libpcap para capturar credenciais transmitidas em claro.
- Implementation
A implementação experimental ocorreu em três variantes de UNIX BSD (4.2BSD e 4.3BSD) executando em hardware VAX e Sun-3. Desenvolvemos scripts em shell para automatizar coleta de dados.
Exemplo de script para varredura sequencial de portas:
for p in 21 23 25 79 513 514
do
echo "Testing port $p"
(echo quit | telnet target $p) 2>&1 | grep -i connected
done
Para captura de tráfego em rede Ethernet compartilhada:
tcpdump -i le0 host target
As credenciais capturadas foram analisadas para verificar reutilização de senha entre serviços.
- Experimental Evaluation
Foram avaliados 30 hosts acadêmicos. A Tabela 2 apresenta exposição média de serviços:
| Serviço | Porta | Hosts com serviço ativo (%) |
|---|---|---|
| FTP | 21 | 93% |
| Telnet | 23 | 100% |
| SMTP | 25 | 100% |
| Finger | 79 | 87% |
| rsh | 514 | 76% |
Observa-se ampla exposição de serviços desnecessários. A Tabela 3 resume resultados de testes de senha:
| Métrica | Valor |
|---|---|
| Total de contas analisadas | 1.200 |
| Senhas quebradas por dicionário (%) | 21% |
| Senhas vazias (%) | 4% |
A Tabela 4 apresenta eventos de falha observados após envio de entradas extensas:
| Serviço | Tentativas | Travamentos observados | $P(E)$ |
|---|---|---|---|
| finger | 50 | 7 | 0,14 |
| sendmail | 40 | 3 | 0,075 |
Esses resultados indicam vulnerabilidades exploráveis remotamente com probabilidade não desprezível.
- Case Study
Em um host específico (anônimo), identificamos arquivo .rhosts permitindo acesso remoto sem senha a partir de múltiplos domínios. Após estabelecer conexão via rsh, foi possível obter shell de usuário privilegiado secundário. A análise subsequente revelou reutilização de senha entre contas administrativas.
O incidente ilustra encadeamento de vulnerabilidades: confiança excessiva entre hosts, autenticação fraca e ausência de monitoramento. A exploração completa demandou menos de duas horas de teste ativo.
- Discussion
Os resultados confirmam que sistemas UNIX conectados à ARPANET apresentam exposição significativa. A confiança implícita entre hosts viola o princípio de privilégio mínimo. Senhas fracas continuam sendo vetor predominante, corroborando Morris e Thompson (1979).
A adoção de criptografia de chave pública poderia mitigar interceptação de credenciais, mas requer infraestrutura de gerenciamento de chaves. Alternativamente, recomenda-se restrição de serviços via configuração de inetd.conf, remoção de .rhosts e auditorias periódicas.
A pesquisa experimental mostrou-se essencial para revelar falhas não evidentes em análises puramente formais. Integração entre teoria (modelos de controle de acesso) e prática (testes empíricos) constitui caminho promissor.
- Conclusion and Future Work
Este trabalho apresentou estudo experimental abrangente sobre segurança de sistemas UNIX na ARPANET. Demonstramos empiricamente vulnerabilidades em autenticação, configuração de serviços e robustez de implementações. Propusemos modelo formal de risco e metodologia replicável.
Trabalhos futuros devem investigar mecanismos de autenticação forte baseados em criptografia assimétrica, bem como desenvolvimento de ferramentas automatizadas de detecção de intrusão. A consolidação de políticas institucionais de segurança e treinamento de usuários também se revela fundamental.
A segurança em redes distribuídas deve ser tratada como disciplina científica autônoma, fundamentada em experimentação rigorosa e princípios formais sólidos.
- References
ANDERSON, J. P. Computer Security Threat Monitoring and Surveillance. Fort Washington: James P. Anderson Co., 1980. Disponível em: https://csrc.nist.gov/publications/detail/report/1980/04/15/computer-security-threat-monitoring-and-surveillance/final
BARAN, P. On Distributed Communications. RAND Corporation, 1964. Disponível em: https://www.rand.org/pubs/research_memoranda/RM3420.html
BELL, D. E.; LAPADULA, L. J. Secure Computer Systems. MITRE, 1973. Disponível em: https://csrc.nist.gov/csrc/media/publications/conference-paper/1973/10/01/secure-computer-systems-mathematical-foundations/documents/bell-lapadula.pdf
DENNING, D. E. A Lattice Model of Secure Information Flow. Communications of the ACM, 1976. Disponível em: https://dl.acm.org/doi/10.1145/360051.360056
DIFFIE, W.; HELLMAN, M. New Directions in Cryptography. IEEE Transactions on Information Theory, 1976. Disponível em: https://ieeexplore.ieee.org/document/1055638
MORRIS, R.; THOMPSON, K. Password Security: A Case History. Communications of the ACM, 1979. Disponível em: https://dl.acm.org/doi/10.1145/359168.359172
POSTEL, J. Transmission Control Protocol. RFC 793, 1981. Disponível em: https://www.rfc-editor.org/rfc/rfc793
POSTEL, J. Simple Mail Transfer Protocol. RFC 821, 1982. Disponível em: https://www.rfc-editor.org/rfc/rfc821
POSTEL, J.; REYNOLDS, J. Telnet Protocol Specification. RFC 854, 1983. Disponível em: https://www.rfc-editor.org/rfc/rfc854
POSTEL, J.; REYNOLDS, J. File Transfer Protocol. RFC 959, 1985. Disponível em: https://www.rfc-editor.org/rfc/rfc959
RITCHIE, D.; THOMPSON, K. The UNIX Time-Sharing System. CACM, 1974. Disponível em: https://dl.acm.org/doi/10.1145/361011.361061
RIVEST, R.; SHAMIR, A.; ADLEMAN, L. A Method for Obtaining Digital Signatures and Public-Key Cryptosystems. CACM, 1978. Disponível em: https://people.csail.mit.edu/rivest/Rsapaper.pdf
SALTZER, J.; SCHROEDER, M. The Protection of Information in Computer Systems. Proceedings of the IEEE, 1975. Disponível em: https://web.mit.edu/Saltzer/www/publications/protection/