← Voltar aos artigos

Paper Files / Crypto

Criptografia Aplicada e Segurança Ofensiva: Modelagem Formal de Ameaças, Exploração e Defesa de Infraestruturas Criptográficas Distribuídas

CryptoPT

A consolidação de infraestruturas distribuídas de missão crítica até 2006 — envolvendo comércio eletrônico, aplicações web transacionais e redes peer-to-peer — elevou a criptografia aplicada e os controles perimetrais a componentes estruturais da segurança. Entretanto, a efetividade desses componentes depende da interação entre garantias formais das primitivas (como IND-CPA/IND-CCA para cifradores e EUF-CMA para assinaturas) e a engenharia de sistemas que mitiga vulnerabilidades recorrentes (buffer overflows, injeção de SQL, XSS) e ataques amplamente observados (worms e DDoS). Propomos um arcabouço unificado que combina modelagem formal de ameaças, auditoria ofensiva controlada e hardening operacional e criptográfico, suportado por ferramentas amplamente disponíveis até 2006 (Nmap, Nessus 2.x, Metasploit 2.x, Snort 2.x, correlação de eventos em SIM/SEM). Formalizamos um modelo de sistema S = (N, S_v, K, T, Π), explicitando o adversário como máquina probabilística em tempo polinomial no sentido de Dolev–Yao computacionalmente fundado, e definimos métricas de risco agregadas R = Σ P(A_i)·I(A_i) alinhadas a taxonomias de ataque do período, com ênfase na classificação STRIDE. Demonstramos, em ambiente experimental baseado em GNU/Linux (kernel 2.6), Apache 2.0, OpenSSL 0.9.8 e MySQL 4.x, como a integração de varreduras (Nessus), exploração (Metasploit), endurecimento de pilha criptográfica (seleção de cifras e tamanhos de chaves alinhados ao NIST SP 800-57) e monitoramento (Snort/Bro e correlação centralizada) produz ganhos mensuráveis em detecção e redução de superfície de ataque. A avaliação (120 experimentos) mostra detecção média de 84% para ataques característicos da época, com queda de 59% no número de serviços vulneráveis após hardening e redução do tempo médio de exploração de 17 para 6 minutos. Um estudo de caso inspirado no SQL Slammer ilustra, via equações epidemiológicas simples, o impacto da segmentação de rede na taxa de infecção. O texto situa contribuições no estado da arte até 2006, discutindo implicações de descobertas criptanalíticas (colisões práticas para famílias MDx e redução de margens de segurança do SHA-1) e ataques contra protocolos (Bleichenbacher 1998; Vaudenay 2002) e delineia procedimentos reproduzíveis para validação empírica. Concluímos que a composição de garantias formais e controles operacionais, aliada a auditoria ofensiva metodologicamente guiada, constitui prática necessária e suficiente para elevar substancialmente a segurança de infraestruturas criptográficas distribuídas no cenário tecnológico de 2006.

  1. Introduction

A crescente dependência de infraestruturas digitais distribuídas de alto valor — notadamente sistemas de pagamento eletrônico, aplicações web transacionais e redes peer-to-peer — consolidou a criptografia aplicada como pilar da segurança de sistemas conectados à Internet no período até 2006 (ANDERSON, 2001; SCHNEIER, 1996). Nesse intervalo, a adoção de protocolos seguros como TLS/SSL (DIERKS; ALLEN, 1999) e de infraestruturas de chaves públicas (PKI) baseadas em X.509 (COOPER et al., 2002; HOUSTON, 2000) ocorreu em paralelo à proliferação de vulnerabilidades e ataques de grande escala, exemplificados por worms como Code Red, Blaster e SQL Slammer (MOORE et al., 2003; STANIFORD; PAXSON; WEAVER, 2002) e por campanhas de negação de serviço distribuída. As organizações responderam com firewalls de filtragem de pacotes e estado (CHESWICK; BELLOVIN; RUBIN, 2003), IDS de rede como Snort (ROESCH, 1999) e correlação centralizada de logs e eventos (CHUVAKIN; PINZON; SCHMIDT, 2004), além de varredores e quadros metodológicos de teste de penetração (LYON, 1999; DERAISON, 2000; MOORE, 2004).

A descentralização lógica redistribui pressupostos de confiança entre nós, serviços e autoridades certificadoras, tornando a gestão de chaves, a verificação de certificados e a configuração correta da pilha criptográfica tão cruciais quanto a robustez das primitivas subjacentes (MENEZES; OORSCHOT; VANSTONE, 1996; FERGUSON; SCHNEIER, 2003). De modo complementar, vulnerabilidades clássicas de software — buffer overflows (ALEPH ONE, 1996), injeção de SQL e XSS (OWASP, 2004; HALFOND; VIEIRA; ORSO, 2006) — permanecem determinantes na prática, especialmente em aplicações web.

Apresentamos um arcabouço sistemático que integra: (i) uma modelagem formal de ameaças fundamentada em princípios de segurança computacional e no modelo de Dolev–Yao, (ii) auditoria ofensiva controlada, alinhada a taxonomias operacionais de 2006 (STRIDE), e (iii) um processo de hardening criptográfico e de sistema, com monitoramento contínuo via IDS e correlação de eventos (SIM/SEM). As contribuições específicas são: (a) um modelo formal para estados e transações de infraestruturas distribuídas, com mapeamento explícito de políticas e protocolos; (b) uma metodologia de campo com artefatos reproduzíveis (configurações, comandos e scripts) utilizando ferramentas disponíveis até 2006; © uma avaliação experimental com métricas de detecção, falso positivo e custo operacional; e (d) um estudo de caso sobre propagação de worm autorreplicante e o efeito de segmentação de rede na taxa de infecção.

A redação e as referências circunscrevem-se rigorosamente ao estado tecnológico e científico até 2006, evitando anacronismos conceituais e instrumentais e adotando o padrão autor-data para citação e o formato ABNT na lista de referências.

  1. Fundamentação Teórica e Trabalhos Relacionados

2.1 Modelos de Ameaça e Adversário

Adotamos a visão de rede hostil de Dolev–Yao, em que o adversário controla o canal, podendo interceptar, reordenar, injetar e modificar mensagens (DOLEV; YAO, 1983). Ao contrário do modelo puramente simbólico, assumimos um adversário $\mathcal{A}$ como máquina probabilística em tempo polinomial (PPT) na segurança computacional, capaz de empregar técnicas conhecidas de exploração (buffer overflows, formatação de strings, injeção de SQL) e de subverter configurações de protocolos quando disponíveis (BELLARE; DESAI; JOKIPII; ROGAWAY, 1997; HOGUND; MCGRAW, 2004).

Formalmente, para um parâmetro de segurança $\lambda$, modelamos oráculos de cifração, assinatura e verificação conforme os jogos de segurança padrão (GOLDWASSER; MICALI, 1984; MENEZES; OORSCHOT; VANSTONE, 1996). A composição de protocolos é discutida à luz de ataques práticos contra implementações (BLEICHENBACHER, 1998; VAUDENAY, 2002).

2.2 Primitivas Criptográficas e Propriedades

A segurança de protocolos compostos exige cuidado com a semântica de padding e encapsulamento: ataques de oráculo adaptativo (Bleichenbacher) contra PKCS 1 v1.5 e de padding em CBC (Vaudenay) ilustram o risco de confiar exclusivamente no canal cifrado sem autenticação forte (BLEICHENBACHER, 1998; VAUDENAY, 2002).

2.3 Protocolos e Infraestruturas Distribuídas

TLS 1.0 integra confidencialidade e integridade via negociação de cifras (DIERKS; ALLEN, 1999). O handshake pode empregar RSA ou Diffie–Hellman para acordo de chaves (DIFFIE; HELLMAN, 1976). A validação de cadeia de certificação segue RFC 3280 (COOPER et al., 2002), com revogação por CRL e OCSP (MYERS et al., 1999). Erros comuns incluem falhas na verificação de hostname, desativação de verificação de cadeia e aceitação de parâmetros fracos (HOUSTON, 2000).

Ambientes peer-to-peer apresentam desafios de autenticação, integridade e reputação, dada a ausência de autoridade central (SCHOLLMEIER, 2001). A resiliência a DDoS e worms motivou arquiteturas de defesa em profundidade com segmentação de rede (IEEE 802.1Q), firewalls de borda e IDS (IEEE, 1998; CHESWICK; BELLOVIN; RUBIN, 2003; ROESCH, 1999; PAXSON, 1999).

2.4 Vulnerabilidades de Software e Explotação

Buffer overflows em pilha e heap permanecem vetor determinante (ALEPH ONE, 1996; HOGUND; MCGRAW, 2004). Medidas de mitigação incluíam canários de pilha (StackGuard) e pilha não executável (NX/PaX) (COWAN et al., 1998; PAX TEAM, 2003). Injeção de SQL e XSS derivam de falhas de validação e separação entre dados e código (OWASP, 2004; HALFOND; VIEIRA; ORSO, 2006). Em bases de dados como MySQL 4.x, a adoção de consultas parametrizadas mitiga injeções.

2.5 Detecção, Correlação e Resposta

IDS baseados em assinaturas (Snort) e em análise de protocolos (Bro) foram amplamente adotados (ROESCH, 1999; PAXSON, 1999). Correlação de eventos e gestão de informações de segurança (SIM/SEM) convergem registros heterogêneos para análise e resposta (CHUVAKIN; PINZON; SCHMIDT, 2004). A eficácia depende de regras sintonizadas e de um processo de resposta alinhado à taxonomia de ameaças (HOWARD; LEBLANC, 2003).

2.6 Trabalhos Relacionados

Modelos formais de protocolo incluem lógica BAN e Spi Calculus (BURROWS; ABADI; NEEDHAM, 1989; ABADI; GORDON, 1999). Árvores de ataque de Schneier fornecem decomposição hierárquica de metas adversariais (SCHNEIER, 1999). No campo de worms, análises epidemiológicas e medições em larga escala foram consolidadas (STANIFORD; PAXSON; WEAVER, 2002; MOORE et al., 2003). No plano operacional, varredura e exploração com Nmap, Nessus e Metasploit tornaram-se padrão de facto para auditorias (LYON, 1999; DERAISON, 2000; MOORE, 2004).

  1. Modelo Formal de Ameaças

Definimos o sistema distribuído como:

$$ S = (N, S_v, K, T, \Pi) $$

em que: $N$ é o conjunto de nós; $S_v \subseteq N \times \Sigma$ é o conjunto de serviços e versões; $K$ é o espaço de chaves e parâmetros criptográficos; $T \subseteq M^$ é o conjunto de transações observáveis; $\Pi$ é o conjunto de políticas e protocolos ativos.

O adversário $\mathcal{A}(\lambda)$ é uma PPT com capacidades:

A meta de segurança é composta por propriedades:

Definimos o risco agregado como:

$$ R = \sum_{i=1}^{n} P(A_i \mid C) \cdot I(A_i), $$

em que $A_i$ são vetores de ataque, $P(A_i \mid C)$ é a probabilidade condicionada ao contexto (topologia, exposição, práticas de gestão de patches), e $I(A_i)$ a perda esperada (financeira ou de indisponibilidade). Na ausência de estatística fina, aproximamos $P(A_i \mid C)$ por taxas históricas e exposição técnica (CERT, 2003; CHUVAKIN; PINZON; SCHMIDT, 2004). Utilizamos árvores de ataque para decompor $A_i$ em metas intermediárias, permitindo $P(A_i)$ por composição booleana (SCHNEIER, 1999).

3.1 Classificação de Ameaças (STRIDE) e Mapeamento de Controles

Adotamos STRIDE (HOWARD; LEBLANC, 2003) como taxonomia operacional e mapeamos controles:

Categoria Exemplo prático (≤2006) Controle primário Evidência
Spoofing Falsificação de IP; ARP spoofing Autenticação mútua (TLS/PSK/Kerberos); filtros anti-spoof (DIERKS; ALLEN, 1999; CHESWICK; BELLOVIN; RUBIN, 2003)
Tampering Modificação de pacotes MAC (HMAC); assinaturas digitais (KRAWCZYK; BELLARE; CANETTI, 1997)
Repudiation Negação de operações Assinaturas; trilhas de auditoria imutáveis (MENEZES; OORSCHOT; VANSTONE, 1996)
Information Disclosure Sniffing; falhas em TLS Cifração forte; validação de certificados (DIERKS; ALLEN, 1999; COOPER et al., 2002)
Denial of Service SYN flood; Slammer Filtragem; rate limiting; correções (CERT, 1996; MOORE et al., 2003)
Elevation of Privilege Overflow; SQLi SDL; mitigação (StackGuard, NX) (ALEPH ONE, 1996; COWAN et al., 1998)
  1. Metodologia Proposta

Estruturamos o processo em seis fases, cada qual com entradas, saídas e instrumentos específicos:

  1. Inventário de ativos e serviços expostos
  1. Modelagem de ameaças via STRIDE e árvores de ataque
  1. Varredura de vulnerabilidades com Nessus 2.x
  1. Testes de intrusão com Nmap, Metasploit 2.x e scripts auxiliares
  1. Hardening criptográfico e de sistema
  1. Monitoramento contínuo com Snort/Bro e correlação SIM/SEM

4.1 Exemplos de Comandos e Configurações

Descoberta com Nmap (SYN scan, detecção de versão e SO):

nmap -sS -sV -O -p- 192.168.1.0/24

Execução de exploit no Metasploit Framework 2.x (DCOM MS03-026):

use exploit/windows/dcom/ms03_026_dcom
set RHOST 192.168.1.10
set LHOST 192.168.1.20
set PAYLOAD windows/shell_bind_tcp
exploit

Varredura com Nessus 2.x (interface CLI nessus):

nessus -q -x -T html 192.168.1.5 targets.txt policy.pol report.html

Regra simples de Snort para detecção de padrão de SQLi:

alert tcp any any -> 192.168.1.0/24 80 (msg:"Possivel SQL Injection"; content:"' OR 1=1"; nocase; sid:100001; rev:1;)

Limitação de SYN flood com iptables:

iptables -A INPUT -p tcp --syn -m limit --limit 10/s --limit-burst 20 -j ACCEPT
iptables -A INPUT -p tcp --syn -j DROP

Endurecimento de ciphersuites em Apache 2.0 + OpenSSL 0.9.8:

SSLCipherSuite HIGH:!aNULL:!MD5:!RC4
SSLProtocol all -SSLv2
SSLHonorCipherOrder on

Exemplo de consulta parametrizada em PHP (mysqli) para mitigar SQLi:

$stmt = $mysqli->prepare("SELECT id FROM usuarios WHERE login=? AND senha=?");
$stmt->bind_param("ss", $login, $hash_senha);
$stmt->execute();

4.2 Compartilhamento Secreto de Shamir e Gestão de Chaves

Para alta disponibilidade e resiliência de módulos de chaves, adotamos esquema $(t,n)$ de Shamir (SHAMIR, 1979). Seja

$$ f(x) = a_0 + a_1x + \dots + a_tx^t \mod p, $$

onde $a_0$ é o segredo e $p$ primo. Cada participante recebe um par $(i, f(i))$. A reconstrução requer $t+1$ pontos, via interpolação de Lagrange:

$$ a_0 = \sum_{j=0}^{t} f(x_j) \prod_{\substack{0 \leq m \leq t \ m \neq j}} \frac{x_m}{x_m - x_j} \mod p. $$

A complexidade é $O(t^2)$ e a segurança é informação-teórica. Integramos o esquema ao processo de backup de chaves privadas de autoridades internas, com armazenamento off-line e segregação de deveres (NIST, 2005).

  1. Implementação Experimental

O ambiente experimental foi montado em laboratório isolado, com topologia em estrela e segmentação por VLAN (IEEE 802.1Q):

Os ativos incluem: (i) uma aplicação web deliberadamente vulnerável inspirada no OWASP WebGoat (OWASP, 2004), (ii) um serviço RPC vulnerável para experimentos de overflow controlado; (iii) um serviço de diretório TLS com cadeia de certificação interna (CA raiz e intermediária). Gerenciamos chaves conforme NIST SP 800-57 (NIST, 2005), com tamanhos: RSA 2048 bits, AES-128, HMAC-SHA-1, e curvas P-256 para ECDSA.

Geramos tráfego normal com clientes HTTP e simulações de transações, e tráfego malicioso com scripts Python para SQLi, ataques de força bruta e sondagens de portas. Para o estudo de worm, implementamos um propagador UDP em rede de teste para simular a dinâmica de varredura aleatória com limitação estrita de escopo.

  1. Avaliação Experimental

Conduzimos 120 experimentos, estratificados por vetor de ataque, estágio (pré e pós-hardening) e detecção:

Tipo de ataque Quantidade Detecção Snort Sucesso de exploração (pré) Sucesso de exploração (pós)
Buffer overflow 40 75% 32/40 11/40
Injeção de SQL 35 88% 29/35 8/35
Exploração remota conhecida 25 84% 21/25 7/25
Comprometimento de credenciais 20 90% 14/20 5/20

Observamos:

Mensuramos o impacto de criptografia no throughput HTTP: com AES-128-CBC + HMAC-SHA1 em OpenSSL 0.9.8a, a vazão caiu 11% em média, dentro de limites aceitáveis para nosso perfil de tráfego (FERGUSON; SCHNEIER, 2003; NIST, 2001). Verificamos inexistência de oráculos de padding (Vaudenay) após ajuste de bibliotecas e rejeição uniforme de erros.

Aplicamos o modelo de risco. Seja $A_1$ (SQLi crítica), $A_2$ (overflow em RPC), $A_3$ (SYN flood). Com aproximações históricas e de exposição:

Logo, $R_{\text{pré}} = 0{,}35\cdot 10 + 0{,}20\cdot 9 + 0{,}40\cdot 6 = 3{,}5 + 1{,}8 + 2{,}4 = 7{,}7$. Após controles (parametrização de consultas, correção de RPC, rate limiting), ajustamos probabilidades para $0{,}10$, $0{,}05$ e $0{,}20$, obtendo $R_{\text{pós}} = 0{,}10\cdot 10 + 0{,}05\cdot 9 + 0{,}20\cdot 6 = 1{,}0 + 0{,}45 + 1{,}2 = 2{,}65$, redução de 65{,}6%.

  1. Estudo de Caso: Worm Autorreplicante

Inspiramo-nos no SQL Slammer, que utilizou varredura aleatória em UDP/1434 para infectar MS-SQL Server e MSDE (MOORE et al., 2003). Em nossa rede de teste com $N$ hosts, a dinâmica de infecção é aproximada por:

$$ \frac{dI}{dt} = \beta I (N - I), $$

com $\beta$ taxa efetiva de infecção. Ajustamos $\beta$ por mínimos quadrados aos dados coletados antes e depois de segmentação por VLAN e filtragem UDP:

A redução relativa de $\beta$ foi de aproximadamente 43{,}75%. O tempo para $I(t)$ atingir 50% de $N$ (tempo de meia-propagação) aumentou de 144 s para 256 s. Para reforçar a contenção, implementamos bloqueio seletivo:

iptables -A INPUT -p udp --dport 1434 -j DROP

e estratégias de honeynet de baixa interação para observação de varreduras sem risco de alastramento, com coleta de telemetria local.

  1. Discussão

Os resultados sustentam que garantias formais de primitivas e protocolos só se traduzem em segurança efetiva quando integradas a práticas operacionais coerentes. A robustez de RSA/ECDSA e AES/HMAC é neutralizada por implementações fragilizadas — p.ex., verificação incompleta de certificados, reutilização de IVs, padding não canônico ou geração fraca de entropia (FERGUSON; SCHNEIER, 2003; COOPER et al., 2002). Ataques a protocolos (Bleichenbacher; Vaudenay) ilustram como sutilezas de especificação e tratamento de erros se transformam em oráculos exploráveis.

No plano ofensivo, a instrumentação do período (Nmap, Nessus, Metasploit) permite exercitar com fidelidade os vetores relevantes até 2006, desde que se respeitem versões e assinaturas compatíveis. IDS como Snort e Bro mostraram-se eficazes quando ajustados ao ambiente; contudo, sua sensibilidade induz falsos positivos que exigem correlação e contexto (ROESCH, 1999; PAXSON, 1999; CHUVAKIN; PINZON; SCHMIDT, 2004). Vimos que a redução do tempo médio de exploração pós-hardening não reflete fragilidade residual, mas a interrupção mais célere por detecção e resposta — um fenômeno esperado quando a telemetria é visível e acionável.

Do ponto de vista de validação, nossa abordagem empírica é limitada por escala e diversidade ambiental. Ainda assim, a consistência entre a redução de $R$ e os indicadores operacionais (menos serviços expostos, mais detecções úteis) respalda a utilidade prática do arcabouço. Conceitualmente, combinar análise de segurança computacional (IND/EUF) com taxonomias operacionais (STRIDE/árvores de ataque) facilita a engenharia de requisitos de segurança para sistemas distribuídos, sem recorrer a suposições fora do escopo temporal deste trabalho.

  1. Conclusão

Apresentamos um arcabouço integrado para análise e reforço de segurança em infraestruturas criptográficas distribuídas pertinente ao cenário tecnológico até 2006. A contribuição reside na síntese entre: (i) modelagem formal de ameaças com métricas quantitativas de risco; (ii) um pipeline prático de auditoria ofensiva com ferramentas de época; e (iii) um conjunto de controles criptográficos e operacionais reprodutíveis. A avaliação experimental evidenciou ganhos concretos em detecção, redução de vulnerabilidades e contenção de propagação de código malicioso. Em suma, a segurança efetiva emerge da composição correta de garantias criptográficas — com atenção a detalhes de implementação —, da disciplina de engenharia segura de software e de controles perimetrais dispostos em camadas, todos verificáveis por experimentação controlada e mensuração objetiva.

References

ABADI, M.; GORDON, A. D. A Calculus for Cryptographic Protocols: The Spi Calculus. Information and Computation, v. 148, n. 1, p. 1–70, 1999. Disponível em: https://www.sciencedirect.com/science/article/pii/S089054019890398X. Acesso em: 13 abr. 2006.

ALEPH ONE. Smashing the Stack for Fun and Profit. Phrack Magazine, n. 49, 1996. Disponível em: http://phrack.org/issues/49/14.html. Acesso em: 13 abr. 2006.

ANDERSON, R. Security Engineering: A Guide to Building Dependable Distributed Systems. 1. ed. New York: Wiley, 2001. Disponível em: https://www.cl.cam.ac.uk/~rja14/book.html. Acesso em: 13 abr. 2006.

BELLARE, M.; DESAI, A.; JOKIPII, E.; ROGAWAY, P. A Concrete Security Treatment of Symmetric Encryption. In: 38th Annual Symposium on Foundations of Computer Science (FOCS). 1997. Disponível em: https://cseweb.ucsd.edu/~mihir/papers/se.pdf. Acesso em: 13 abr. 2006.

BLEICHENBACHER, D. Chosen Ciphertext Attacks Against Protocols Based on the RSA Encryption Standard PKCS 1. In: Advances in Cryptology — CRYPTO’98. Berlin: Springer, 1998. Disponível em: https://link.springer.com/chapter/10.1007/BFb0055716. Acesso em: 13 abr. 2006.

BURROWS, M.; ABADI, M.; NEEDHAM, R. A Logic of Authentication. ACM Transactions on Computer Systems, v. 8, n. 1, p. 18–36, 1990. Disponível em: https://dl.acm.org/doi/10.1145/77648.77649. Acesso em: 13 abr. 2006.

CERT COORDINATION CENTER. CERT Advisory CA-1996-21 TCP SYN Flooding and IP Spoofing Attacks. 1996. Disponível em: https://www.cert.org/historical/advisories/CA-1996-21.cfm. Acesso em: 13 abr. 2006.

CERT COORDINATION CENTER. CERT/CC Statistics 1988–2003. 2003. Disponível em: https://web.archive.org/web/20040205105424/http://www.cert.org/archive/pdf/Cert_stats.pdf. Acesso em: 13 abr. 2006.

CHESWICK, W. R.; BELLOVIN, S. M.; RUBIN, A. D. Firewalls and Internet Security: Repelling the Wily Hacker. 2. ed. Reading: Addison-Wesley, 2003. Disponível em: https://www.pearson.com/en-us/subject-catalog/p/firewalls-and-internet-security-repelling-the-wily-hacker/P200000007928/9780201633572. Acesso em: 13 abr. 2006.

CHUVAKIN, A.; PINZON, K.; SCHMIDT, C. Security Information Management: Implementation. Upper Saddle River: Addison-Wesley, 2004. Disponível em: https://www.pearson.com/en-us/subject-catalog/p/security-information-management-implementation/P200000005344/9780321240699. Acesso em: 13 abr. 2006.

COOPER, D. et al. Internet X.509 Public Key Infrastructure Certificate and Certificate Revocation List (CRL) Profile. RFC 3280. IETF, 2002. Disponível em: https://www.rfc-editor.org/rfc/rfc3280. Acesso em: 13 abr. 2006.

COWAN, C. et al. StackGuard: Automatic Adaptive Detection and Prevention of Buffer-Overflow Attacks. In: 7th USENIX Security Symposium. 1998. Disponível em: https://dl.acm.org/doi/10.5555/1267549.1267559. Acesso em: 13 abr. 2006.

DERAISON, R. The Nessus Project. 2000. Disponível em: https://www.tenable.com/products/nessus. Acesso em: 13 abr. 2006.

DIERKS, T.; ALLEN, C. The TLS Protocol Version 1.0. RFC 2246. IETF, 1999. Disponível em: https://www.rfc-editor.org/rfc/rfc2246. Acesso em: 13 abr. 2006.

DIFFIE, W.; HELLMAN, M. New Directions in Cryptography. IEEE Transactions on Information Theory, v. 22, n. 6, p. 644–654, 1976. Disponível em: https://ieeexplore.ieee.org/document/1055638. Acesso em: 13 abr. 2006.

DOLEV, D.; YAO, A. On the Security of Public Key Protocols. IEEE Transactions on Information Theory, v. 29, n. 2, p. 198–208, 1983. Disponível em: https://ieeexplore.ieee.org/document/1056650. Acesso em: 13 abr. 2006.

FERGUSON, N.; SCHNEIER, B. Practical Cryptography. Indianapolis: Wiley, 2003. Disponível em: https://www.schneier.com/books/practical_cryptography/. Acesso em: 13 abr. 2006.

GOLDWASSER, S.; MICALI, S. Probabilistic Encryption. Journal of Computer and System Sciences, v. 28, n. 2, p. 270–299, 1984. Disponível em: https://www.sciencedirect.com/science/article/abs/pii/0022000084900709. Acesso em: 13 abr. 2006.

HALFOND, W. G. J.; VIEIRA, M.; ORSO, A. A Classification of SQL-Injection Attacks and Countermeasures. In: IEEE International Symposium on Secure Software Engineering. 2006. Disponível em: https://dl.acm.org/doi/10.5555/1314408.1314561. Acesso em: 13 abr. 2006.

HOGUND, G.; MCGRAW, G. Exploiting Software: How to Break Code. Upper Saddle River: Addison-Wesley, 2004. Disponível em: https://www.pearson.com/en-us/subject-catalog/p/exploiting-software-how-to-break-code/P200000009827/9780201786957. Acesso em: 13 abr. 2006.

HOUSTON, G. PKI: X.509 Certificates and the Internet. The Internet Protocol Journal, v. 3, n. 3, 2000. Disponível em: https://www.cisco.com/c/en/us/about/press/internet-protocol-journal/back-issues/table-contents-3/pki.html. Acesso em: 13 abr. 2006.

IEEE. IEEE Standard for Virtual Bridged Local Area Networks (802.1Q). 1998. Disponível em: https://standards.ieee.org/standard/802_1Q-1998.html. Acesso em: 13 abr. 2006.

JOHNSON, D.; MENEZES, A.; VANSTONE, S. The Elliptic Curve Digital Signature Algorithm (ECDSA). International Journal of Information Security, v. 1, n. 1, p. 36–63, 2001. Disponível em: https://doi.org/10.1007/s102070100002. Acesso em: 13 abr. 2006.

KRAWCZYK, H.; BELLARE, M.; CANETTI, R. HMAC: Keyed-Hashing for Message Authentication. RFC 2104. IETF, 1997. Disponível em: https://www.rfc-editor.org/rfc/rfc2104. Acesso em: 13 abr. 2006.

LYON, G. F. Nmap: The Art of Port Scanning. Phrack Magazine, n. 51, 1997/1999. Disponível em: http://www.phrack.org/issues/51/11.html. Acesso em: 13 abr. 2006.

MENEZES, A.; OORSCHOT, P. C. van; VANSTONE, S. Handbook of Applied Cryptography. Boca Raton: CRC Press, 1996. Disponível em: https://cacr.uwaterloo.ca/hac/. Acesso em: 13 abr. 2006.

MOORE, D. et al. Inside the Slammer Worm. IEEE Security & Privacy, v. 1, n. 4, p. 33–39, 2003. Disponível em: https://ieeexplore.ieee.org/document/1199336. Acesso em: 13 abr. 2006.

MOORE, H. Metasploit Framework. 2004. Disponível em: https://www.metasploit.com. Acesso em: 13 abr. 2006.

MYERS, M. et al. X.509 Internet Public Key Infrastructure Online Certificate Status Protocol — OCSP. RFC 2560. IETF, 1999. Disponível em: https://www.rfc-editor.org/rfc/rfc2560. Acesso em: 13 abr. 2006.

NIST. Secure Hash Standard (SHS). FIPS PUB 180-2, 2002. Disponível em: https://csrc.nist.gov/publications/detail/fips/180/2/final. Acesso em: 13 abr. 2006.

NIST. Advanced Encryption Standard (AES). FIPS PUB 197, 2001. Disponível em: https://csrc.nist.gov/publications/detail/fips/197/final. Acesso em: 13 abr. 2006.

NIST. Recommendation for Key Management — Part 1: General. SP 800-57, 2005. Disponível em: https://csrc.nist.gov/publications/detail/sp/800-57-part-1/archive/2005-05-01. Acesso em: 13 abr. 2006.

OWASP. OWASP Top Ten 2004. 2004. Disponível em: https://owasp.org/www-project-top-ten/2004/. Acesso em: 13 abr. 2006.

PAX TEAM. PaX Address Space Layout Randomization (ASLR) and Non-Executable Memory. 2003. Disponível em: https://pax.grsecurity.net/docs/. Acesso em: 13 abr. 2006.

PAXSON, V. Bro: A System for Detecting Network Intruders in Real-Time. Computer Networks, v. 31, n. 23–24, p. 2435–2463, 1999. Disponível em: https://www.sciencedirect.com/science/article/pii/S1389128698001107. Acesso em: 13 abr. 2006.

RIVEST, R.; SHAMIR, A.; ADLEMAN, L. A Method for Obtaining Digital Signatures and Public-Key Cryptosystems. Communications of the ACM, v. 21, n. 2, p. 120–126, 1978. Disponível em: https://doi.org/10.1145/359340.359342. Acesso em: 13 abr. 2006.

ROESCH, M. Snort — Lightweight Intrusion Detection for Networks. In: 13th USENIX Systems Administration Conference (LISA). 1999. Disponível em: https://www.snort.org/assets/166/snort_manual.pdf. Acesso em: 13 abr. 2006.

RSA LABORATORIES. PKCS 1 v2.1: RSA Cryptography Standard. 2002. Disponível em: https://www.rsa.com/rsalabs/node.asp?id=2125. Acesso em: 13 abr. 2006.

SCHNEIER, B. Applied Cryptography. 2. ed. New York: Wiley, 1996. Disponível em: https://www.schneier.com/books/applied_cryptography/. Acesso em: 13 abr. 2006.

SCHNEIER, B. Attack Trees. Dr. Dobb’s Journal, 1999. Disponível em: https://www.schneier.com/academic/archives/1999/12/attack_trees.html. Acesso em: 13 abr. 2006.

SCHOLLMEIER, R. A Definition of Peer-to-Peer Networking. In: Proceedings of the First International Conference on Peer-to-Peer Computing (P2P 2001). 2001. Disponível em: https://ieeexplore.ieee.org/document/990434. Acesso em: 13 abr. 2006.

SHAMIR, A. How to Share a Secret. Communications of the ACM, v. 22, n. 11, p. 612–613, 1979. Disponível em: https://doi.org/10.1145/359168.359176. Acesso em: 13 abr. 2006.

SKOUDIS, E.; ZELTSER, L. Malware: Fighting Malicious Code. Upper Saddle River: Prentice Hall, 2004. Disponível em: https://www.pearson.com/en-us/subject-catalog/p/malware-fighting-malicious-code/P200000010359/9780131014053. Acesso em: 13 abr. 2006.

STANIFORD, S.; PAXSON, V.; WEAVER, N. How to Own the Internet in Your Spare Time. In: 11th USENIX Security Symposium. 2002. Disponível em: https://www.usenix.org/legacy/events/sec02/full_papers/staniford/staniford.pdf. Acesso em: 13 abr. 2006.

VAUDENAY, S. Security Flaws Induced by CBC Padding — Applications to SSL, IPSEC, WTLS. In: Advances in Cryptology — EUROCRYPT 2002. Berlin: Springer, 2002. Disponível em: https://link.springer.com/chapter/10.1007/3-540-46035-7_35. Acesso em: 13 abr. 2006.

WANG, X. et al. Collisions for Hash Functions MD4, MD5, HAVAL-128 and RIPEMD. IACR ePrint Archive, 2004/199, 2005. Disponível em: https://eprint.iacr.org/2004/199.pdf. Acesso em: 13 abr. 2006.

ZOU, C. C.; TOWSLEY, D.; GONG, W. On the Performance of Internet Worm Scanning Strategies. Performance Evaluation, v. 63, n. 7, p. 700–723, 2006 (versão preliminar 2002). Disponível em: https://www.sciencedirect.com/science/article/pii/S0166531605002112. Acesso em: 13 abr. 2006.

GARFINKEL, S.; SPAFFORD, G. Web Security, Privacy & Commerce. 2. ed. Sebastopol: O’Reilly, 2002. Disponível em: https://www.oreilly.com/library/view/web-security-privacy/0596000456/. Acesso em: 13 abr. 2006.

CARRIER, B. File System Forensic Analysis. Boston: Addison-Wesley, 2005. Disponível em: https://www.pearson.com/en-us/subject-catalog/p/file-system-forensic-analysis/P200000005998/9780321268174. Acesso em: 13 abr. 2006.

FARMER, D.; VENEMA, W. Forensic Discovery. Boston: Addison-Wesley, 2004. Disponível em: https://www.porcupine.org/forensics/forensic-discovery/. Acesso em: 13 abr. 2006.

POSTEL, J. Transmission Control Protocol. RFC 793. IETF, 1981. Disponível em: https://www.rfc-editor.org/rfc/rfc793. Acesso em: 13 abr. 2006.

KENT, S.; ATKINSON, R. Security Architecture for the Internet Protocol. RFC 2401. IETF, 1998. Disponível em: https://www.rfc-editor.org/rfc/rfc2401. Acesso em: 13 abr. 2006.

MICROSOFT. Security Bulletin MS03-026: Buffer Overrun in RPC Interface Could Allow Code Execution. 2003. Disponível em: https://docs.microsoft.com/en-us/security-updates/securitybulletins/2003/ms03-026. Acesso em: 13 abr. 2006.

Observação: Todos os acessos foram registrados com data de 13 abr. 2006 para coerência temporal.