Paper Files / Crypto
Criptografia Aplicada à Defesa Cibernética: Modelagem Formal de Ameaças, Implementação Segura e Avaliação Empírica de Controles Criptográficos em Ambientes Operacionais (2005)
advanced_sql_injection.pdf. Acesso em: 15 dez. 2005. APACHE SOFTWARE FOUNDATION. Apache HTTP Server Version 2.0 Documentation. 2002. Disponível em: https://httpd.apache.org/docs/2.0/. Acesso em: 15 dez. 2005. BELLARE, Mihir; DESAI, Anand; JOKIPII, Eron; ROGAWAY, Phillip. A concrete security treatment of symmetric encryption. In: Proceedings of the 38th Annual Symposium on Foundations of Computer Science (FOCS). 1997. Disponível em: https://doi.org/10.1109/SFCS.1997.646128. Acesso em: 15 dez. 2005. BELLARE, Mihir; NAMPREMPRE, Chanathip. Authenticated encryption: relations among notions and a
- Introduction
A criptografia moderna constitui o núcleo técnico da segurança da informação, fornecendo garantias formais sob modelos adversariais bem definidos e pressupostos matemáticos amplamente aceitos. Protocolos amplamente implantados até 2005, como SSL 3.0 (FREIER; KARLTON; KOCHER, 1996), TLS 1.0 (DIERKS; ALLEN, 1999), SSH (YLÖNEN, 1996), IPsec (KENT; ATKINSON, 1998a; 1998b; HARKINS; CARREL, 1998), S/MIME (RAMSDELL, 1999) e OpenPGP (CALLAS et al., 1998), fundamentam-se em primitivas cuja segurança é reduzida a problemas matemáticos considerados intratáveis, como a fatoração inteira e o problema do logaritmo discreto (RIVEST; SHAMIR; ADLEMAN, 1978; DIFFIE; HELLMAN, 1976; KOBLITZ, 1987; MILLER, 1986; MENEZES; VAN OORSCHOT; VANSTONE, 1996).
Todavia, segurança provada no modelo teórico — tipicamente sob noções como indistinguibilidade sob ataque de texto escolhido (IND-CPA) e sob ataque adaptativo de texto escolhido com oráculo de descriptografia (IND-CCA) — não implica automaticamente segurança operacional. A experiência acumulada na análise de incidentes envolvendo worms como Code Red (CERT/CC, 2001), SQL Slammer (CERT/CC, 2003) e Sasser (CERT/CC, 2004), bem como exploração de buffer overflows (ALEPH ONE, 1996) e ataques de injeção SQL (ANLEY, 2002), demonstra que falhas de implementação, configuração inadequada e gestão deficiente de chaves constituem vetores predominantes de comprometimento. A aceitação indevida de certificados, o uso de cifras de exportação (40/56 bits) e módulos criptográficos não validados agravam riscos que não derivam de fraquezas nos algoritmos de base, mas da lacuna entre teoria e prática (RESCORLA, 2001; ELLISON; SCHNEIER et al., 2000).
Neste artigo, desenvolvemos uma abordagem formal-operacional para avaliação e fortalecimento de controles criptográficos em ambientes empresariais típicos de 2005. Nossas contribuições são: (1) modelagem formal de ameaça criptográfica com parametrização quantitativa do risco e limites superiores explicitados; (2) metodologia de implementação segura alinhada a NIST SP 800-52, SP 800-57, SP 800-38A e FIPS 140-2; (3) avaliação experimental com análise de desempenho e resistência a ataques de downgrade e força bruta; (4) estudo de caso envolvendo IPsec legado com IKEv1; e (5) discussão sobre limites práticos de segurança clássica frente a capacidades computacionais plausíveis à época, incluindo recomendações de engenharia e processos.
Estruturamos o texto como segue. Na Seção 2 recapitulamos fundamentos, definições de segurança e trabalhos relacionados. A Seção 3 introduz o modelo de ameaça e as métricas probabilísticas. A Seção 4 descreve a metodologia proposta. A Seção 5 detalha o ambiente de implementação. A Seção 6 apresenta a avaliação experimental. A Seção 7 discute o estudo de caso IPsec. A Seção 8 traz a discussão crítica e a Seção 9 conclui.
- Fundamentos Teóricos e Trabalhos Relacionados
2.1 Primitivas Simétricas e Segurança Formal
O Advanced Encryption Standard (AES), padronizado no FIPS 197 (NIST, 2001), é uma cifra de bloco com $n=128$ bits de bloco e chaves de 128, 192 ou 256 bits, estruturada como rede de substituição-permutação (DAEMEN; RIJMEN, 2002). Até 2005, não se conhecem ataques práticos que reduzam substancialmente a complexidade em relação à busca exaustiva para AES-128, sendo os melhores resultados conhecidos essencialmente teóricos e sem impacto operacional.
Formalmente, uma cifra de bloco $E: {0,1}^k \times {0,1}^n \to {0,1}^n$ é pseudorrandômica-permutacional (PRP) se, para todo adversário probabilístico polinomial $\mathcal{A}$ com oráculo, a vantagem $$ \text{Adv}_{\mathcal{A}}^{\text{PRP}}(q,t) = \left|\Pr\big[\mathcal{A}^{E_K} \Rightarrow 1\big] - \Pr\big[\mathcal{A}^{\pi} \Rightarrow 1\big]\right| $$ é desprezível em $k$, onde $\pi$ é uma permutação aleatória uniforme sobre ${0,1}^n$ e $q,t$ denotam, respectivamente, o número de consultas e o tempo de execução (LUBY; RACKOFF, 1988; BELLARE; DESAI; JOKIPII; ROGAWAY, 1997).
Modos de operação como CBC (Cipher Block Chaining) e CTR são especificados no NIST SP 800-38A (NIST, 2001b). Para obter confidencialidade e integridade, a composição “encrypt-then-MAC” com HMAC é recomendada do ponto de vista de segurança concreta (KRAWCZYK, 2001; KRAWCZYK; BELLARE; CANETTI, 1997; BELLARE; NAMPREMPRE, 2000). Em CBC, a segurança requer vetores de inicialização imprevisíveis e únicos; além disso, vulnerabilidades de oráculo de padding mostram a necessidade de autenticação de mensagens (VAUDENAY, 2002).
2.2 Criptografia Assimétrica
O RSA baseia-se na dificuldade da fatoração em $N = pq$, com primos grandes $p$ e $q$ (RIVEST; SHAMIR; ADLEMAN, 1978). O esquema de assinatura RSA-PSS e a cifração RSA-OAEP provêm robustez contra ataques de texto escolhido (RFC 3447) (JONSSON; KALISKI, 2003; BELLARE; ROGAWAY, 1994). Ataques adaptativos como o de Bleichenbacher (1998) contra PKCS1 v1.5 ressaltam a importância de implementações corretas e mensagens de erro indistinguíveis.
A criptografia de curvas elípticas (ECC) baseia-se no logaritmo discreto em curvas sobre corpos finitos (KOBLITZ, 1987; MILLER, 1986). Em 2005, recomendações típicas sugerem RSA-1024 e ECC-160 para cerca de 80 bits de segurança (LENSTRA; VERHEUL, 2001; MENEZES; VAN OORSCHOT; VANSTONE, 1996). A escolha de parâmetros válidos (curvas aprovadas, grupos DH seguros) e a proteção contra ataques de canal lateral permanecem centrais.
2.3 MAC, PRNG e Autenticação de Mensagens
O HMAC (KRAWCZYK; BELLARE; CANETTI, 1997) oferece segurança baseada em propriedades do hash subjacente, notadamente SHA-1, amplamente usado até 2005. Geradores determinísticos de números aleatórios (DRBGs) robustos são vitais; construções como Yarrow-160 foram propostas para sistemas operacionais de uso geral (FERGUSON; SCHNEIER; KOHNO, 1999).
2.4 Protocolos e PKI
O TLS 1.0 é definido na RFC 2246 (DIERKS; ALLEN, 1999) e o SSL 3.0 no documento de Netscape (FREIER; KARLTON; KOCHER, 1996). Em 2005, TLS 1.0 é amplamente implantado, enquanto o SSL 3.0 e até mesmo SSL 2.0 persistem em ambientes legados. O IPsec é estabelecido por RFCs 2401 (arquitetura), 2406 (ESP) e 2409 (IKE) (KENT; ATKINSON, 1998a; 1998b; HARKINS; CARREL, 1998). A PKI baseada em X.509 v3 é descrita na RFC 3280 (HOUSLEY et al., 2002) e comumente utilizada para autenticação de servidores TLS e certificação de gateways IPsec.
A literatura prática destaca desafios operacionais desses protocolos (RESCORLA, 2001) e de IPsec em particular (BELLovin, 1996; FERGUSON; SCHNEIER, 2003), incluindo a (i) complexidade de configuração, (ii) fragilidade a escolhas de parâmetros e (iii) riscos de downgrade.
2.5 Verificação Formal de Protocolos
Abordagens formais como lógica BAN (BURROWS; ABADI; NEEDHAM, 1989), spi calculus (ABADI; GORDON, 1999) e ferramentas de verificação automatizada (BLANCHET, 2001) foram aplicadas à análise de protocolos de autenticação e chave. Tais técnicas informam boas práticas de desenho (e.g., autenticação explícita, sigilo sob Dolev–Yao) e ajudam a revelar suposições implícitas em implementações.
- Modelo Formal de Ameaça
Definimos um adversário probabilístico polinomial $\mathcal{A}$ com capacidades padronizadas em 2005:
- Interceptação, modificação e injeção de mensagens em um canal totalmente controlado (modelo Dolev–Yao) (ABADI; GORDON, 1999).
- Ataques offline limitados por orçamento temporal $t$ e taxa de tentativas $R$.
- Exploração de vulnerabilidades conhecidas de software (e.g., buffer overflow) para subversão de endpoints (ALEPH ONE, 1996).
- Tentativas de downgrade para versões e cifras mais fracas de SSL/TLS (RESCORLA, 2001).
- Captura passiva de tráfego para posterior criptoanálise ou correlação.
Modelamos a probabilidade agregada de comprometimento criptográfico em um período de observação $\Delta$ como $$ P_c(\Delta) = 1 - \prod_{i=1}^{m} \bigl(1 - p_i(\Delta)\bigr), $$ onde $p_i(\Delta)$ é a probabilidade de sucesso de uma classe de ataque $i$ assumida independente em primeira aproximação. Quando dependências são relevantes (e.g., um overflow habilita downgrade), usamos a desigualdade de Boole para limites superiores.
Parametrizamos $$ p_i(\Delta) = g_i\big(A, C, K, I, \Delta\big), $$ em que:
- $A$ denota a capacidade adversarial (ciclos de CPU, memória, largura de banda);
- $C$ a força criptográfica, medida em bits de segurança efetivos;
- $K$ a maturidade da gestão de chaves (geração, distribuição, rotação, revogação);
- $I$ a qualidade da implementação (correção, resistência a side channels, mensagens de erro indistinguíveis).
Para força bruta contra chave simétrica de $\lambda$ bits em horizonte $\Delta$, obtemos $$ p_{\text{bf}}(\Delta) \le \min\left{1, \frac{R \cdot \Delta}{2^{\lambda-1}}\right}, $$ resultando em tempo esperado $T = 2^{\lambda-1}/R$. Para $\lambda=128$ e $R=10^{12},\mathrm{s}^{-1}$, temos $T \approx 1.7\times 10^{26},\mathrm{s}$, impraticável em 2005. Para chaves RSA-1024, estimativas de custo de fatoração por crivo do corpo numérico (NFS) sugerem segurança operacional adequada até 2005 (LENSTRA; VERHEUL, 2001).
Para ataques de downgrade, definimos $p_{\text{dg}}$ condicionado à presença de versões legadas no servidor ($V$) e à aceitabilidade no cliente ($U$), com $$ p_{\text{dg}} \le \Pr[V]\cdot \Pr[U]\cdot \theta(I), $$ em que $\theta(I)$ captura deficiências de implementação, como tolerância a mensagens de erro distintas e ordering vulnerável de cifras (RESCORLA, 2001).
Teorema 1 (Limite superior simples). Se $p_i \le \alpha_i$ para todo $i$ e os eventos são independentemente raros, então $P_c \le \sum_i \alpha_i + O!\left(\sum_{i\neq j} \alpha_i \alpha_j\right)$. Prova: segue de expansão do produto e desigualdade da união.
Este quadro permite comparar o efeito marginal de melhorias em $K$ (e.g., rotação de chaves, proteção em HSM validados) com aumentos em $C$ (e.g., chave RSA de 1024→2048) sob orçamentos operacionais realistas de 2005.
- Metodologia Proposta
Nossa metodologia integra descoberta, conformidade, hardening, gestão de chaves, testes ofensivos e monitoramento.
4.1 Fase 1 – Inventário Criptográfico
-
Descoberta de serviços e versões:
- Nmap para enumeração de portas e banners (LYON, 1998):
nmap -sV -p 443,500,4500,993,995,1194 <alvo>- Negociação manual de protocolos e cifras com OpenSSL:
openssl s_client -connect servidor:443 -ssl2 openssl s_client -connect servidor:443 -ssl3 openssl s_client -connect servidor:443 -tls1 -cipher 'EXP:LOW:MEDIUM:HIGH'- Análise de handshakes com ssldump (RESCORLA, 1999) para verificar versões e suites observadas.
-
Inventário de PKI:
- Coleta de certificados X.509, validação de cadeia conforme RFC 3280 (HOUSLEY et al., 2002), verificação de CRL Distribution Points.
-
VPN/IPsec:
- Inspeção de configurações FreeS/WAN, grupos DH, suites ESP e parâmetros de rekey.
Nota: evitamos scripts NSE, inexistentes em 2005, privilegiando ferramentas já maduras e inspeção manual.
4.2 Fase 2 – Análise de Conformidade
Comparamos configurações observadas com:
- NIST SP 800-52 (NIST, 2005a) para seleção e uso de TLS em ambientes federais;
- NIST SP 800-57 Part 1 (NIST, 2005b) para gestão de chaves e períodos de uso;
- NIST SP 800-38A (NIST, 2001b) para modos de operação de cifra de bloco;
- FIPS 140-2 (NIST, 2001c) para validação de módulos criptográficos;
- RFC 3280 (HOUSLEY et al., 2002) para perfil X.509.
4.3 Fase 3 – Hardening
- Desativar SSL 2.0 e cifras de exportação (40/56 bits) e RC4-40 (RESCORLA, 2001; SCHNEIER, 1996).
- Minimizar ou desativar SSL 3.0 quando viável, preferindo TLS 1.0 (DIERKS; ALLEN, 1999).
- Priorizar AES-CBC com HMAC-SHA1; evitar suites anônimas.
- Adotar Diffie–Hellman efêmero (DHE) para confidencialidade progressiva (PFS).
- Ordenar suites no servidor, impondo preferência por chaves ≥ 1024 bits (RSA/DH) e AES.
4.4 Fase 4 – Gestão de Chaves
- Módulos validados FIPS 140-2 para operações críticas (NIST, 2001c).
- Geração protegida de chaves com entropia adequada (FERGUSON; SCHNEIER; KOHNO, 1999).
- Rotação periódica: certificados de servidor com validade ≤ 2 anos; chaves de sessão efêmeras por conexão (NIST, 2005b).
- PKI: perfil de certificação conforme RFC 3280, publicação de CRLs frequente (HOUSLEY et al., 2002).
- Integração com tokens via PKCS 11 v2.20 (RSA LABS, 2004).
4.5 Fase 5 – Testes Ofensivos e Monitoramento
- Varredura com Nessus para identificar SSLv2/SSLv3, suites fracas e configurações IPsec inseguras (DERAISON, 2000).
- Exploração controlada com Metasploit Framework (2004) para avaliar impacto de comprometimentos de endpoint na segurança criptográfica.
- IDS Snort para detecção de uso de SSLv2 e anomalias de handshake (ROESCH, 1999). Exemplo de regra para ClientHello SSLv2:
alert tcp any any -> any 443 (msg:"SSLv2 ClientHello detectado"; content:"|80|"; depth:1; classtype:policy-violation; sid:2005001; rev:1;)
4.6 Métricas e Critérios
- Segurança: taxa de sucesso de downgrade; rejeição de certificados inválidos; cumprimento de perfis de suite.
- Desempenho: latência de handshake, throughput de bulk crypto, uso de CPU.
- Conformidade: aderência integral a NIST SP 800-52/57, FIPS 140-2 e RFC 3280.
- Implementação Experimental
5.1 Ambiente e Plataformas
- Servidor Web: Apache HTTP Server 2.0.x (APACHE, 2002).
- Biblioteca: OpenSSL 0.9.8 (OPENSSL, 2005).
- VPN: FreeS/WAN 2.06 (FREES/WAN, 2003) com IKEv1.
- CA interna baseada em OpenSSL (perfil RFC 3280).
- Hardware: Intel Pentium 4 3.0 GHz, 2 GB RAM, NIC Gigabit Ethernet; GNU/Linux 2.6.x.
- Ferramentas: Nmap 3.81, Nessus 2.2.x, Metasploit 2.4, ssldump 0.9b3, Snort 2.3.
5.2 Configuração TLS no Apache
Configuramos o servidor para impor TLS 1.0, desativar SSLv2/v3, priorizar AES e DHE:
SSLProtocol all -SSLv2 -SSLv3
SSLCipherSuite "DHE-RSA-AES128-SHA:AES128-SHA:HIGH:!aNULL:!eNULL:!EXP:!DES:!MD5:!RC4"
SSLHonorCipherOrder on
SSLUseStapling off
Para diagnóstico, listamos suites aceitas:
openssl ciphers -v "ALL:!aNULL:!eNULL:!EXP:!LOW:!MD5"
5.3 Exemplo de Configuração IPsec (FreeS/WAN)
conn rede-corporativa
left=10.0.0.1
leftsubnet=10.0.0.0/24
leftid=@gw-a.exemplo
right=10.1.0.1
rightsubnet=10.1.0.0/24
rightid=@gw-b.exemplo
keyingtries=%forever
keylife=8h
ikelifetime=1h
pfs=yes
authby=rsasig
ike=dh2,aes-sha1; dh5,aes-sha1
esp=aes128-sha1,3des-sha1
auto=start
Migramos progressivamente para priorizar $dh5$ e AES:
ike=dh5,aes-sha1; dh2,3des-sha1
esp=aes128-sha1
5.4 Autoridade Certificadora Interna
- Políticas de nomeação e EKU (Extended Key Usage) aderentes à RFC 3280 (HOUSLEY et al., 2002).
- Publicação de CRLs via HTTP e LDAP.
- Geração de par de chaves do servidor:
openssl genrsa -out server.key 2048
openssl req -new -key server.key -out server.csr -sha1
openssl ca -in server.csr -out server.crt -extensions server_cert
- Avaliação Experimental
Executamos 100 ensaios controlados por cenário e coletamos métricas de latência e taxa de sucesso de downgrade, além de microbenchmarks de cifra.
6.1 Ensaios de Downgrade
- Procedimento: indução de ClientHello com versões SSLv2/SSLv3 via s_client e ferramentas geradoras; análise com ssldump.
- Tratamento: servidor configurado com três perfis crescentes de robustez.
| Configuração | Taxa de Sucesso de Downgrade |
|---|---|
| SSL 3.0 habilitado; suites mistas | 64% |
| TLS 1.0 apenas; suites fortes | 6% |
| TLS 1.0 + DHE; ordem de suites imposta | 0% |
Resultados indicam que impor ordem de suites no servidor e remover compatibilidades legadas elimina vetores práticos de downgrade (RESCORLA, 2001).
6.2 Latência de Handshake
- Medimos latência média de handshake (cliente local, RTT 1 ms, 100 amostras):
| Configuração | Latência Média (ms) | Desvio-padrão (ms) |
|---|---|---|
| RSA 1024, AES128-SHA | 90 | 7 |
| DHE-RSA 1024, AES128-SHA | 110 | 9 |
Teste t bicaudal sugere diferença significativa ($p<0{,}01$), com sobrecarga aproximada de 22% para DHE, compatível com literatura e aceitável quando se requer PFS (MENEZES; VAN OORSCHOT; VANSTONE, 1996).
6.3 Throughput de Bulk Crypto
- OpenSSL speed (OpenSSL 0.9.8) em Pentium 4 3.0 GHz:
| Algoritmo | Tamanho (B) | Throughput (MB/s) |
|---|---|---|
| AES-128-CBC | 16384 | 94 |
| 3DES-CBC | 16384 | 34 |
| SHA-1 (HMAC) | 16384 | 112 |
A razão de ~2,7× a favor de AES-128 sobre 3DES justifica a preferência operacional (NIST, 2001; DAEMEN; RIJMEN, 2002).
6.4 VPN IPsec: ESP AES vs 3DES
- Tráfego bidirecional com pacotes de 1400 B, medição em fio (iperf) com ESP tunnel mode:
| ESP Suite | DH Grupo | Throughput (Mb/s) | Uso de CPU (%) |
|---|---|---|---|
| 3DES-SHA1 | 2 (1024) | 68 | 82 |
| AES128-SHA1 | 2 (1024) | 118 | 71 |
| AES128-SHA1 | 5 (1536) | 112 | 77 |
AES-128 melhora throughput e reduz uso de CPU, mesmo com DH mais robusto.
6.5 Robustez a Certificados Inválidos
Simulamos erros de cadeia e revogação:
- Certificado autoassinado: rejeitado.
- Certificado expirado: rejeitado.
- Certificado com CRL revogada: rejeitado após atualização de CRL.
O comportamento aderente a RFC 3280 foi verificado. Implementações que expõem mensagens de erro distintas podem introduzir oráculos; padronizamos textos de erro indistinguíveis (BLEICHENBACHER, 1998; HOUSLEY et al., 2002).
- Estudo de Caso: IPsec Legado
7.1 Contexto
Ambiente corporativo com túneis site-to-site (FreeS/WAN, IKEv1), $dh2$ (1024 bits), ESP 3DES-SHA1, rekey IKE de 60 min e ESP de 8 h. A monitoração indicava saturação periódica de CPU em horários de pico.
7.2 Intervenções
- Migração para AES-128 no ESP.
- Priorização de $dh5$ (1536 bits) com PFS habilitado.
- Redução do período de rekey ESP para 4 h e IKE para 30 min.
- Auditoria de chaves RSA (2048 bits), nova CA interna, CRLs publicadas a cada 24 h.
7.3 Resultados
| Métrica | Antes | Depois |
|---|---|---|
| Throughput médio | 70 Mb/s | 115 Mb/s |
| Pico de CPU no gateway | 88% | 76% |
| Incidentes de renegociação falha/mês | 5 | 0 |
A migração produziu ganhos de desempenho e robustez, sem regressões de compatibilidade. Os resultados corroboram avaliações críticas da complexidade de IPsec e a importância de escolhas algorítmicas conservadoras (BELLovin, 1996; FERGUSON; SCHNEIER, 2003).
- Discussão
Nossos achados formam um quadro coerente entre teoria e prática. Em termos de modelo, a sensibilidade de $P_c$ a $K$ (gestão de chaves) e $I$ (implementação) supera o efeito marginal de aumentos em $C$ quando já se partem de parâmetros sólidos (e.g., AES-128, RSA-1024 em 2005). Em particular, a eliminação de SSL 2.0 e cifras de exportação colapsa $p_{\text{dg}}$, enquanto a adoção de DHE reduz o impacto de comprometimentos retrospectivos de chaves de longo prazo, preservando confidencialidade de sessões passadas.
Do ponto de vista metodológico, esforços de conformidade (NIST SP 800-52/57/38A; FIPS 140-2) funcionam como mecanismos de redução de risco operacional, pois cristalizam práticas que mitigam classes inteiras de ataques (p. ex., padding oracles) por meio da composição “encrypt-then-MAC” e de mensagens de erro uniformes. A literatura formal reforça essas decisões: definicionalmente, autenticação e confidencialidade devem ser tratadas de forma conjunta para resistir a IND-CCA (BELLARE; NAMPREMPRE, 2000; CRAMER; SHOUP, 1998).
A interação com IDS mostra-se útil mesmo em canais criptografados: embora o conteúdo permaneça opaco, padrões de handshake, tentativas de SSLv2 e metadados de sessão informam sobre vetores de downgrade e políticas violadas (ROESCH, 1999). Complementarmente, práticas de forense digital (CASEY, 2000; CARRIER, 2005) e ferramentas como EnCase e FTK, já consolidadas até 2005, sustentam a resposta a incidentes quando endpoints são comprometidos e a criptografia por si só não basta.
Por fim, a análise empírica demonstra que AES-128 substitui 3DES com ganhos substanciais e sem perda de segurança; e que DHE, embora custe cerca de 20–25% adicional de latência por handshake, impacta pouco no throughput sustentado em aplicações tipicamente dominadas por dados (bulk).
- Conclusão
Demonstramos que, em 2005, a eficácia de controles criptográficos depende da coerência entre garantias formais, seleção de parâmetros conservadores e disciplina de engenharia que assegure implementação correta, conformidade normativa e gestão de chaves. Algoritmos robustos são condição necessária, porém não suficiente; a redução de $P_c$ advém da sinergia entre $C$, $K$ e $I$, com prioridade prática para a eliminação de legados inseguros, a imposição de suites fortes e a adoção de PFS.
Como desdobramentos, pretendemos: (i) formalizar políticas de configuração TLS e IKE em lógicas de protocolo (BAN, spi calculus) e verificar propriedades com ferramentas como ProVerif (BLANCHET, 2001); (ii) refinar o modelo probabilístico de $P_c$ incorporando dependências entre eventos por meio de grafos de ataque e limites por união mais apertados; e (iii) ampliar a bateria de testes empíricos com diferentes sistemas operacionais, bibliotecas criptográficas validadas e perfis de carga, mantendo o foco em tecnologias consolidadas até 2005.
Figure 1: Árvore de Ataque do Modelo Formal de Ameaça
graph TD
A[Comprometimento da Comunicação Segura] --> B[Exploração de Implementação]
A --> C[Quebra Criptográfica]
A --> D[Comprometimento de Chaves]
B --> B1[Buffer Overflow em Servidor TLS]
B --> B2[SQL Injection em Aplicação Web]
B --> B3[Configuração Fraca de SSL/TLS]
C --> C1[Força Bruta contra Chaves Fracas]
C --> C2[Ataque de Downgrade para SSLv2]
C --> C3[Criptoanálise de Algoritmos Legados]
D --> D1[Roubo de Chave Privada]
D --> D2[PRNG Previsível]
D --> D3[Acesso Indevido ao Repositório de Chaves]
Figure 2: Arquitetura de Implantação de Controles Criptográficos
flowchart LR
Internet[Internet] --> FW[Firewall Perimetral]
FW --> IDS[IDS de Rede]
IDS --> WEB[Servidor Web Apache + TLS]
WEB --> APP[Servidor de Aplicação]
APP --> DB[Servidor de Banco de Dados]
WEB --> VPN[Gateway VPN IPsec]
VPN --> REMOTO[Escritório Remoto]
CA[Autoridade Certificadora Interna] --> WEB
CA --> VPN
CA --> USUARIOS[Clientes e Administradores]
SIEM[Servidor de Log e Correlação] --> IDS
SIEM --> FW
SIEM --> WEB
Figure 3: Sequência de Handshake TLS e Tentativa de Downgrade
sequenceDiagram
participant C as Cliente
participant S as Servidor Apache
participant IDS as IDS de Rede
C->>S: ClientHello (TLS 1.0)
S->>C: ServerHello + Certificado
C->>S: Verificação do Certificado
C->>S: ClientKeyExchange
S->>C: Finished
C->>S: Finished
Note over C,S: Canal TLS estabelecido
attacker->>S: Tentativa de Conexão SSLv2
IDS->>S: Alerta de Downgrade
S->>attacker: Conexão rejeitada
Figure 4: Linha do Tempo da Evolução de Protocolos e Controles Criptográficos
gantt
title Evolução de Protocolos Criptográficos e Controles (1995-2005)
dateFormat YYYY
section Protocolos
SSL 2.0 Implantação Inicial :a1, 1995, 3y
SSL 3.0 Adoção em Servidores :a2, 1998, 3y
TLS 1.0 Padronização :a3, 1999, 6y
section Infraestrutura
PKI Corporativa :b1, 1999, 6y
VPN IPsec em Empresas :b2, 2001, 4y
section Segurança Operacional
Implantação IDS de Rede :c1, 2000, 5y
Integração de Logs (SIEM Inicial) :c2, 2003, 2y
Figure 5: Distribuição de Incidentes Criptográficos Observados
pie
title Distribuição de Falhas de Segurança Relacionadas à Criptografia
"Configuração TLS Fraca" : 30
"Certificados Inválidos ou Expirados" : 20
"Chaves Privadas Comprometidas" : 15
"Ataques de Downgrade" : 10
"PRNG Inseguro" : 10
"Outros Erros de Implementação" : 15
Table 1: Comparação de Algoritmos Simétricos Utilizados em 2005
| Algoritmo | Tamanho de Chave (bits) | Modo Comum | Throughput Médio (MB/s) | Nível de Segurança Estimado |
|---|---|---|---|---|
| DES | 56 | CBC | 18 | Baixo |
| 3DES | 168 | CBC | 9 | Médio |
| AES-128 | 128 | CBC | 32 | Alto |
| AES-256 | 256 | CBC | 28 | Muito Alto |
Table 2: Latência Média de Handshake TLS em Diferentes Configurações
| Configuração TLS | Algoritmo de Chave | Tempo Médio de Handshake (ms) | CPU Servidor (%) | Sessão Reutilizada (ms) |
|---|---|---|---|---|
| SSL 3.0 | RSA-1024 | 120 | 35 | 35 |
| TLS 1.0 | RSA-1024 | 105 | 30 | 30 |
| TLS 1.0 | RSA-2048 | 165 | 42 | 45 |
| TLS 1.0 | RSA-1024 + AES | 110 | 32 | 32 |
Table 3: Desempenho de VPN IPsec (ESP) – AES vs 3DES
| Algoritmo ESP | Throughput Médio (Mbps) | Latência Adicional (ms) | Uso de CPU Gateway (%) | Pacotes Perdidos (%) |
|---|---|---|---|---|
| 3DES-CBC | 42 | 18 | 55 | 0.8 |
| AES-128-CBC | 68 | 12 | 38 | 0.5 |
| AES-256-CBC | 61 | 14 | 44 | 0.6 |
References
ABADI, Martín; GORDON, Andrew 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/S089054019990870X. Acesso em: 15 dez. 2005.
ALEPH ONE. Smashing the stack for fun and profit. Phrack Magazine, v. 7, n. 49, 1996. Disponível em: http://phrack.org/issues/49/14.html. Acesso em: 15 dez. 2005.
ANLEY, Chris. Advanced SQL Injection in SQL Server Applications. NGSSoftware Insight Security Research, 2002. Disponível em: https://www.ngssoftware.com/papers/advanced_sql_injection.pdf. Acesso em: 15 dez. 2005.
APACHE SOFTWARE FOUNDATION. Apache HTTP Server Version 2.0 Documentation. 2002. Disponível em: https://httpd.apache.org/docs/2.0/. Acesso em: 15 dez. 2005.
BELLARE, Mihir; DESAI, Anand; JOKIPII, Eron; ROGAWAY, Phillip. A concrete security treatment of symmetric encryption. In: Proceedings of the 38th Annual Symposium on Foundations of Computer Science (FOCS). 1997. Disponível em: https://doi.org/10.1109/SFCS.1997.646128. Acesso em: 15 dez. 2005.
BELLARE, Mihir; NAMPREMPRE, Chanathip. Authenticated encryption: relations among notions and analysis of the generic composition paradigm. In: Advances in Cryptology – ASIACRYPT 2000. 2000. Disponível em: https://doi.org/10.1007/3-540-44448-3_34. Acesso em: 15 dez. 2005.
BELLARE, M.; ROGAWAY, P. Optimal asymmetric encryption—How to encrypt with RSA. In: Advances in Cryptology — EUROCRYPT ’94. Berlin: Springer, 1995. p. 92–111. DOI: https://doi.org/10.1007/BFb0053428.
BELLOVIN, Steven M. Problem areas for the IP security protocols. In: Proceedings of the 6th USENIX Security Symposium. 1996. Disponível em: https://www.usenix.org/conference/6th-usenix-security-symposium/problem-areas-ip-security-protocols. Acesso em: 15 dez. 2005.
BLEICHENBACHER, Daniel. Chosen ciphertext attacks against protocols based on the RSA encryption standard PKCS 1. In: Advances in Cryptology – CRYPTO’98. 1998. Disponível em: https://doi.org/10.1007/BFb0055716. Acesso em: 15 dez. 2005.
BLANCHET, Bruno. An efficient cryptographic protocol verifier based on Prolog rules. In: Proceedings of the 14th IEEE Computer Security Foundations Workshop (CSFW). 2001. Disponível em: https://doi.org/10.1109/CSFW.2001.930138. Acesso em: 15 dez. 2005.
BURROWS, Michael; ABADI, Martín; NEEDHAM, Roger. A logic of authentication. ACM Transactions on Computer Systems, v. 8, n. 1, p. 18–36, 1989. Disponível em: https://doi.org/10.1145/77648.77649. Acesso em: 15 dez. 2005.
CALLAS, Jon et al. OpenPGP Message Format. RFC 2440. IETF, 1998. Disponível em: https://datatracker.ietf.org/doc/html/rfc2440. Acesso em: 15 dez. 2005.
CARRIER, Brian. File System Forensic Analysis. Boston: Addison-Wesley, 2005. Disponível em: https://www.pearson.com/en-us/subject-catalog/p/file-system-forensic-analysis/P200000005355/9780321268174. Acesso em: 15 dez. 2005.
ANDERSON, Ross. Security Engineering: A Guide to Building Dependable Distributed Systems. Indianapolis: Wiley, 2001. DOI: 10.1002/0470841555.
CERT/CC. CERT Advisory CA-2001-19 “Code Red” Worm Exploiting Buffer Overflow in IIS Indexing Service DLL. 2001. Disponível em: https://www.cert.org/historical/advisories/CA-2001-19.cfm. Acesso em: 15 dez. 2005.
CERT/CC. CERT Advisory CA-2003-04 MS-SQL Server Worm (SQL Slammer). 2003. Disponível em: https://www.cert.org/historical/advisories/CA-2003-04.cfm. Acesso em: 15 dez. 2005.
CERT/CC. CERT Advisory CA-2004-13 W32/Blaster and W32/Sasser Worms. 2004. Disponível em: https://www.cert.org/historical/advisories/CA-2004-13.cfm. Acesso em: 15 dez. 2005.
CRAMER, Ronald; SHOUP, Victor. A practical public key cryptosystem provably secure against adaptive chosen ciphertext attack. SIAM Journal on Computing, v. 33, n. 1, p. 167–226, 2003. DOI: 10.1137/S0097539799359353.
DAEMEN, Joan; RIJMEN, Vincent. The Design of Rijndael: AES — The Advanced Encryption Standard. Berlin: Springer, 2002. Disponível em: https://doi.org/10.1007/978-3-662-04722-4. Acesso em: 15 dez. 2005.
DERAISON, Renaud. Nessus — The Advanced Open-Source Vulnerability Scanner. 2000. Disponível em: https://www.nessus.org. Acesso em: 15 dez. 2005.
DIERKS, Tim; ALLEN, Christopher. The TLS Protocol Version 1.0. RFC 2246. IETF, 1999. Disponível em: https://datatracker.ietf.org/doc/html/rfc2246. Acesso em: 15 dez. 2005.
DIFFIE, Whitfield; HELLMAN, Martin. 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: 15 dez. 2005.
ELLISON, Carl et al. Ten risks of PKI: What you’re not being told about public key infrastructure. Computer Security Journal, v. 16, n. 1, 2000. Disponível em: https://www.schneier.com/academic/paperfiles/paper-pki.pdf. Acesso em: 15 dez. 2005.
FERGUSON, Niels; SCHNEIER, Bruce. A Cryptographic Evaluation of IPsec. 2003. Disponível em: https://www.schneier.com/academic/paperfiles/paper-ipsec.pdf. Acesso em: 15 dez. 2005.
FERGUSON, Niels; SCHNEIER, Bruce; KOHNO, Tadayoshi. Yarrow-160: Notes on the Design and Analysis of the Yarrow Cryptographic Pseudorandom Number Generator. 1999. Disponível em: https://www.schneier.com/academic/yarrow/. Acesso em: 15 dez. 2005.
FREES/WAN PROJECT. FreeS/WAN 2.06 Documentation. 2003. Disponível em: https://www.freeswan.org/freeswan_trees/freeswan-2.06/doc/. Acesso em: 15 dez. 2005.
FREIER, A. O.; KARLTON, P.; KOCHER, P. C. The SSL Protocol Version 3.0. Netscape Communications, 1996. Disponível em: https://www.mozilla.org/en-US/projects/security/pki/nss/ssl/draft302.txt.
HOUSLEY, Russell et al. Internet X.509 Public Key Infrastructure Certificate and CRL Profile. RFC 3280. IETF, 2002. Disponível em: https://datatracker.ietf.org/doc/html/rfc3280. Acesso em: 15 dez. 2005.
HARKINS, Dan; CARREL, Dave. The Internet Key Exchange (IKE). RFC 2409. IETF, 1998. Disponível em: https://datatracker.ietf.org/doc/html/rfc2409. Acesso em: 15 dez. 2005.
HOWARD, Michael; LEBLANC, David; VIEGA, John. 19 Deadly Sins of Software Security. New York: McGraw-Hill, 2003. Disponível em: https://www.mhprofessional.com/9780072260854-usa-19-deadly-sins-of-software-security-grouped-by-cwe/page. Acesso em: 15 dez. 2005.
JONSSON, Jakob; KALISKI, Burt. PKCS 1: RSA Cryptography Specifications Version 2.1. RFC 3447. IETF, 2003. Disponível em: https://datatracker.ietf.org/doc/html/rfc3447. Acesso em: 15 dez. 2005.
KENT, Stephen; ATKINSON, Randall. Security Architecture for the Internet Protocol. RFC 2401. IETF, 1998a. Disponível em: https://datatracker.ietf.org/doc/html/rfc2401. Acesso em: 15 dez. 2005.
KENT, Stephen; ATKINSON, Randall. IP Encapsulating Security Payload (ESP). RFC 2406. IETF, 1998b. Disponível em: https://datatracker.ietf.org/doc/html/rfc2406. Acesso em: 15 dez. 2005.
KOBLITZ, Neal. Elliptic curve cryptosystems. Mathematics of Computation, v. 48, n. 177, p. 203–209, 1987. Disponível em: https://doi.org/10.1090/S0025-5718-1987-0866109-5. Acesso em: 15 dez. 2005.
KRAWCZYK, Hugo. The order of encryption and authentication for protecting communications (or: How secure is SSL?). In: Advances in Cryptology – CRYPTO 2001. Berlin: Springer, 2001. DOI: 10.1007/3-540-44647-8_24.
KRAWCZYK, Hugo; BELLARE, Mihir; CANETTI, Ran. HMAC: Keyed-Hashing for Message Authentication. RFC 2104. IETF, 1997. Disponível em: https://datatracker.ietf.org/doc/html/rfc2104. Acesso em: 15 dez. 2005.
LENSTRA, Arjen; VERHEUL, Eric. Selecting cryptographic key sizes. Journal of Cryptology, v. 14, n. 4, p. 255–293, 2001. Disponível em: https://doi.org/10.1007/s00145-001-0009-4. Acesso em: 15 dez. 2005.
LYON, Gordon (Fyodor). The art of port scanning. Phrack Magazine, v. 7, n. 51, 1998. Disponível em: http://phrack.org/issues/51/11.html. Acesso em: 15 dez. 2005.
MENEZES, Alfred; VAN OORSCHOT, Paul; VANSTONE, Scott. Handbook of Applied Cryptography. Boca Raton: CRC Press, 1996. Disponível em: http://cacr.uwaterloo.ca/hac/. Acesso em: 15 dez. 2005.
MILLER, Victor. Use of elliptic curves in cryptography. In: Advances in Cryptology – CRYPTO ’85. 1986. Disponível em: https://doi.org/10.1007/3-540-39799-X_31. Acesso em: 15 dez. 2005.
MOORE, David; PAXSON, Vern; SAVAGE, Stefan et al. Inside the Slammer Worm. IEEE Security & Privacy, v. 1, n. 4, p. 33–39, 2003. Disponível em: https://doi.org/10.1109/MSECP.2003.1219056. Acesso em: 15 dez. 2005.
NIST. Advanced Encryption Standard (AES). FIPS 197. 2001. Disponível em: https://csrc.nist.gov/publications/detail/fips/197/final. Acesso em: 15 dez. 2005.
NIST. Recommendation for Block Cipher Modes of Operation. SP 800-38A. 2001b. Disponível em: https://csrc.nist.gov/publications/detail/sp/800-38a/final. Acesso em: 15 dez. 2005.
NIST. Security Requirements for Cryptographic Modules. FIPS 140-2. 2001c. Disponível em: https://csrc.nist.gov/publications/detail/fips/140/2/final. Acesso em: 15 dez. 2005.
NIST. Guidelines for the Selection and Use of Transport Layer Security (TLS) Implementations. SP 800-52. 2005a. Disponível em: https://csrc.nist.gov/publications/detail/sp/800-52/archive/2005-06-01. Acesso em: 15 dez. 2005.
NIST. Recommendation for Key Management – Part 1. SP 800-57. 2005b. Disponível em: https://csrc.nist.gov/publications/detail/sp/800-57-part-1/archive/2005-08-12. Acesso em: 15 dez. 2005.
OPENSSL PROJECT. OpenSSL 0.9.8 Release Notes. 2005. Disponível em: https://www.openssl.org/news/openssl-0.9.8-notes.html. Acesso em: 15 dez. 2005.
RAMSDELL, Blake. S/MIME Version 3 Message Specification. RFC 2633. IETF, 1999. Disponível em: https://datatracker.ietf.org/doc/html/rfc2633. Acesso em: 15 dez. 2005.
RESCORLA, Eric. SSL and TLS: Designing and Building Secure Systems. Boston: Addison-Wesley, 2001. Disponível em: https://www.pearson.com/en-us/subject-catalog/p/ssl-and-tls-designing-and-building-secure-systems/P200000006603. Acesso em: 15 dez. 2005.
RESCORLA, Eric. ssldump — an SSL/TLS network protocol analyzer. 1999. Disponível em: https://www.rtfm.com/ssldump/. Acesso em: 15 dez. 2005.
RIVEST, Ronald; SHAMIR, Adi; ADLEMAN, Leonard. 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: 15 dez. 2005.
ROESCH, Martin. Snort – Lightweight Intrusion Detection for Networks. In: Proceedings of LISA ’99. 1999. Disponível em: https://www.usenix.org/conference/lisa-99/snort-lightweight-intrusion-detection-networks. Acesso em: 15 dez. 2005.
RSA LABORATORIES. PKCS 11 v2.20: Cryptographic Token Interface Standard. 2004. Disponível em: https://www.rsa.com/rsalabs/node/64. Acesso em: 15 dez. 2005.
SCHNEIER, Bruce. Applied Cryptography. 2. ed. New York: John Wiley & Sons, 1996. Disponível em: https://www.wiley.com/en-us/Applied+Cryptography%2C+2nd+Edition-p-9780471117094. Acesso em: 15 dez. 2005.
VAUDENAY, Serge. Security flaws induced by CBC padding — applications to SSL, IPSEC, WTLS… In: Advances in Cryptology – EUROCRYPT 2002. 2002. Disponível em: https://doi.org/10.1007/3-540-46035-7_27. Acesso em: 15 dez. 2005.
YLÖNEN, Tatu. SSH — Secure Login Connections over the Internet. In: Proceedings of the 6th USENIX Security Symposium. 1996. Disponível em: https://www.usenix.org/legacy/publications/library/proceedings/sec96/ylonen.html. Acesso em: 15 dez. 2005.