MASWE-0009: Geração Imprópria de Chaves Criptográficas
Content in BETA
This content is in beta and still under active development, so it is subject to change any time (e.g. structure, IDs, content, URLs, etc.).
Visão Geral¶
Em criptografia, a força da segurança é fortemente influenciada pelos métodos utilizados para gerar chaves criptográficas. Um aspecto crítico é o tamanho da chave, também conhecido como comprimento da chave, que é medido em bits e deve estar em conformidade com as melhores práticas de segurança mais recentes. Algoritmos de criptografia que utilizam tamanhos de chave insuficientes são vulneráveis a ataques, enquanto chaves mais longas geralmente resultam em criptografia mais complexa.
No entanto, mesmo com um tamanho de chave suficientemente grande, a segurança da criptografia pode ser comprometida se o processo de geração de chaves for falho. A falha em usar geradores de números pseudoaleatórios criptograficamente seguros (CSPRNGs) com entropia suficiente pode gerar chaves previsíveis, que são mais fáceis para os atacantes adivinharem ou reproduzirem e que são suscetíveis a padrões repetitivos.
Impacto¶
- Risco de Ataques de Força Bruta: A geração inadequada de chaves, seja devido a um comprimento de chave menor ou a entradas previsíveis de geradores de números aleatórios (PRNGs), aumenta o risco de ataques de força bruta. Os atacantes podem adivinhar ou tentar sistematicamente chaves possíveis com mais facilidade até encontrarem a correta.
- Perda de Confidencialidade: A criptografia depende de chaves fortes para manter a confidencialidade de dados sensíveis. Valores de semente com entropia insuficiente podem permitir que atacantes descriptografem e acessem informações confidenciais, levando a divulgações não autorizadas e possíveis violações de dados.
- Perda de Integridade: A geração inadequada de chaves pode comprometer a integridade dos dados, permitindo que atacantes explorem vulnerabilidades e potencialmente alterem ou adulterem as informações sem detecção.
Modos de Introdução¶
- Entropia Insuficiente: O uso de uma fonte de aleatoriedade com entropia insuficiente pode levar a chaves criptográficas previsíveis.
- Comprimento de Chave Insuficiente: Chaves criptográficas muito curtas fornecem segurança inadequada. Por exemplo, chaves menores que os comprimentos recomendados para algoritmos modernos podem ser vulneráveis a ataques de força bruta, tornando-as mais fáceis de serem quebradas por atacantes.
- Uso de Algoritmos Arriscados ou Comprometidos: Depender de algoritmos criptográficos obsoletos, arriscados ou intrinsecamente comprometidos pode resultar na geração de chaves mais fracas. Como esses algoritmos geralmente têm vulnerabilidades ou suportam comprimentos de chave menores, são mais suscetíveis a ataques modernos, comprometendo a segurança geral do aplicativo.
Mitigações¶
- Sempre utilize bibliotecas e APIs criptográficas modernas e bem estabelecidas que sigam as melhores práticas para geração de entropia e gerenciamento de chaves.
- Garanta que os comprimentos das chaves atendam ou excedam os padrões atuais de segurança criptográfica, como 256 bits para criptografia AES e 2048 bits para RSA (considerando ataques de computação quântica). Consulte "NIST Special Publication 800-57: Recommendation for Key Management: Part 1 – General" e "NIST Special Publication 800-131A: Transitioning the Use of Cryptographic Algorithms and Key Lengths" e "BlueKrypt's Cryptographic Key Length Recommendation" para obter mais informações sobre tamanhos de chaves criptográficas.
Tests¶
MASTG-TEST-0208: Tamanhos de Key Insuficientes MASTG-TEST-0209: Tamanhos de Chave Insuficientes