O documento discute ataques de memória fria ("cold boot attacks") para recuperar chaves criptográficas AES armazenadas na memória RAM. Ele explica como usar uma ferramenta chamada fmem para fazer um dump da memória RAM em busca de chaves, mesmo após desligar o computador, quando as informações ainda persistem na RAM por alguns minutos. O documento também fornece referências sobre o tópico.
3000 questoes de informatica resolvidos banco do brasil (bb), cef, ibge, tre...
Cold Boot Attacks em chaves de criptografia
1. Cold Boot Attacks
em chaves de
criptografia
Aluno: Victor Augusto Merli Oliveira Lima
Curso: Pós Graduação em Cyber Forensics
2. Introdução
- O objetivo deste seminário é “investigar” como realizar a
recuperação da chave de criptografia AES utilizando
despejo da memória RAM - (dump memory) no SO GNU /
Linux ;
- Obter informações da memória RAM mesmo após o
desligamento do computador – “cold attack”.
- Público alvo para esta apresentação é qualquer pessoa
interessada em criptografia e computação forense
utilizando plataforma GNU / Linux.
3. Introdução
- O sistema Linux fornece diferente soluções para criptografia
em discos e arquivos, o procedimentos utilizado neste
seminário será para a recuperação da chave de criptografia
AES utilizando dump da memória RAM em busca da chave
através de um arquivo binário;
- A “facilidade” e a popularidade dessas ferramentas fornecem
aos analistas forenses um formidável desafio. A computação
forense é uma ciência em constante evolução e requer
esforços para acompanhar o ritmo da corrida tecnológica;
- Quando a criptografia de arquivos e/ou disco é feita
corretamente é virtualmente impossível de quebrar, mas como
em qualquer função de segurança, nunca é mais forte do que
seu elo mais fraco.
4. - O sistema operacional Linux fornece uma forma para os
usuários acessarem a memória física - RAM. A maioria das
plataformas Unix Like fornece o dispositivo → /dev/mem
(caminho até o link para memória RAM);
- Porém o acesso à memórira RAM é limitado, neste caso é
necessária a criação de um pseudo dispositivo RAM para
realização do dump da memória RAM para um arquivo
binário;
- Foi utilizado o programa “fmem” para criar e habilitar o
módulo de acesso à memória RAM através da pseudo RAM, o
módulo habilitado será considerado como → dev/fmem
Pseudo
dispositivo na
memória
física
5. Compilação
do fmem
- Link para o Download do fmem
https://github.com/NateBrune/fmem
Compilação fmem: make (é necessária instalação
das bibliotecas de compilação gcc, glib, make
Execução fmem: ./run.sh
6. Execução do
dump da
memória
RAM
- dd if=/dev/fmem of=/<diretório de saída>/nome do
arquivo
- Demonstração dump1.dd <plain txt - BLUEAD>
7. Algoritmo
Criptografia
AES –
(Advanced
Encryption
Standard)
- AES – Advanced Encryption Standard – adotado pelo
governo dos Estados Unidos e é utilizada em todo mundo;
- É um algoritmo de chave simétrica – a mesma chave é
utilizada para criptografar e descriptografar o arquivo;
- O AES tem tamanho fixo de bloco em 128 bits e chaves com
tamanho de: 128, 192 ou 256 bits (neste seminário a chave
utilizada foi de 256 bits (32 Bytes)
10. Cold attack
Memory
- Sabe-se que mesmo após o desligamento do computador a
memória RAM preserva algumas informações conforme artigo
publicado em: USENIX Security Symposium - Lest We
Remember: Cold Boot Attacks on Encryption Keys – 21
Fevereiro 2008 – Princeton University
11. - Foi carregada uma imagem do tipo bitmap na memória RAM e em seguida foi
reinicializado o computador. Depois de 5 segundos (imagem a esquerda) a imagem é
visualizada como original. Gradualmente se torna mais degradada mostrando a
seguir 30s, 60s e 5min.
Imagem
residual
da
memória
12. Cold
attacks
Memory –
Imaging
Attacks
• - Neste exemplo, um “invasor – não usuário do computador”
tem acesso ao computador a qual a pessoa utilizou para criar
um determinado arquivo criptografado utilizando o algoritmo
AES;
13. Cold
attacks
Memory –
Key
Attacks
• Fonte: Halderman. J. A, Schoen. S.D, Heninger. N, Clarkson. W, Paul. W, Calandrino.
J. A, Feldman. A.J, Appelbaum. J, Felten. E. W - Lest We Remember: Cold Boot
Attacks on Encryption Keys – Princeton University and Electronic Frontier Foundation,
21/02/2008.
• - Antes de desligar o computador, foi borrifado nitrogênio líquido diretamente sobre a
memória RAM resfriando-a -50Cº, nesta temperatura as informações irão persistir por
vários minutos após o desligamento do computador.
14. • Neste caso, a memória poderia ser instalada adicionalmente a
um computador para fazer o dump memory para obtenção da
chave do algoritmo AES;
Cold
attacks
Memory –
Key
Attacks
16. • Halderman. J. A, Schoen. S.D, Heninger. N, Clarkson. W, Paul. W, Calandrino. J. A, Feldman. A.J, Appelbaum. J, Felten. E. W
- Lest We Remember: Cold Boot Attacks on Encryption Keys – Princeton University and Electronic Frontier Foundation,
21/02/2008.
• PETTERSSON, T. Cryptographic key recovery from Linux memory dumps. Presentation, Chaos Communication Camp, Aug.
2007.
• ANVIN, H. P. SYSLINUX. http://syslinux.zytor.com/.
• BAR-LEV, A. Linux, Loop-AES and optional smartcard based disk encryption. http://wiki.tuxonice.net/EncryptedSwapAndRoot,
Nov. 2007.
• FERGUSON, N. AES-CBC + Elephant diffuser: A disk encryption algorithm for Windows Vista.
http://www.microsoft.com/downloads/details.aspx?FamilyID=131dae03-39ae-48be-a8d6-8b0034c92555, Aug. 2006.
• Maartmann-Moe. C, Thorkildsen. S. E, Arnes. André, The persistence of memory: Forensic identification and extraction of
cryptographic keys – Norway 2009
• Chabot. Yoan, Bertaux. Aurélie, Nicolle. C, Kechadi. M, A complete formalized knowledge representation model for advanced
digital forensics timeline analysis – Ireland 2014
Referências