Aldeia Numaboa - Criptoanálise acústica
Você está aqui: Home Criptografia Criptoanálise Criptoanálise acústica
Criptoanálise acústica
(4 votos, média 2.50 de 5)
Atualização: Segunda, 26 Janeiro 2009 14:33
A criptoanálise acústica é um ataque de canal lateral que se aproveita de sons, audíveis ou não, produzidos durante processamentos ou operações de entrada e saída
Em 2004, Dmitri Asonov e Rakesh Agrawal do IBM Almaden Research Center revelaram que teclados de computador e teclados numéricos usados em telefones e máquinas automáticas (ATMs) são vulneráveis a ataques baseados na identificação do som produzido pelas diferentes teclas. Usaram uma rede neural para reconhecer as teclas pressionadas e, analisando os sons gravados, conseguiram recuperar o texto digitado. Atacantes que usam dispositivos de escuta clandestina podem utilizar esta técnica para obter senhas, frases-senha, PINs (personal identification number) e outras informações relacionadas à segurança de dados.
Antes de prosseguir com este assunto, dois esclarecimentos. Um ataque de canal lateral é um tipo de ataque que depende de informações obtidas das implementações físicas de um criptossistema, ou seja, vai bisbilhotar apenas o hardware, não levando em conta possíveis fraquezas dos algoritmos utilizados. Exemplos deste tipo de ataque são consumo de tempo (timing), vazamentos eletromagnéticos, vazamentos de som e consumo de energia. Redes neurais, em termos práticos, são ferramentas de modelagem estatística de dados não-lineares. Podem ser usadas para modelar relações complexas entre entradas e saídas para encontrar padrões nos dados analisados. Como sabemos, achou um padrão... achou uma porta de entrada!
Voltando à criptoanálise acústica, também em 2004, Adi Shamir e Eran Tromer demonstraram que é possível dirigir ataques de consumo de tempo contra uma CPU que esteja processando operações criptográficas analisando a variação do seu "zumbido". Aliás, o artigo publicado pelos dois, Acoustic cryptanalysis - On nosy people and noisy machines (Criptoanálise acústica - Sobre pessoas curiosas e máquinas barulhentas), é a base deste artigo.
Em 2005, cientistas da Universidade de Berkeley, baseados no trabalho de Asonov e Agrawal, alimentaram um computador com várias gravações de 10 minutos com sons de teclado e, com a ajuda de um algoritmo apropriado, conseguiram recuperar até 96% dos caracteres digitados. A grande novidade foi o algoritmo empregado - ele pode ser "treinado", ou seja, quanto mais for usado, mais "aprende".
Este papo de zumbido, ruído, barulhinho, téc-téc de teclado, etc não é coisa nova. No seu livro Spycatcher, Peter Wright, espião aposentado do MI5, discute o uso de um ataque acústico contra máquinas de cifragem Hagelin em 1956. Para os mais curiosos, o ataque recebeu o nome em código "ENGULF".
Estas perguntas mais frequentes (FAQ) respondidas por Adi Shamir e Eran Tromer são muito elucidativas. Não custa traduzir...
Um dos métodos para se obter informações de sistemas supostamente seguros são os ataques de canal lateral, que são técnicas criptoanalíticas que dependem de vazamentos não previstos de informações provenientes de dispositivos computacionais. A maioria das pesquisas sobre ataques de canal lateral tratam de emanações eletromagnéticas (TEMPEST), consumo de energia e, mais recentemente, luz visível difusa de monitores CRT. O canal de "bisbilhotagem" mais antigo, o das emanações acústicas, foi quase que esquecido. Nossa análise preliminar das emanações acústicas provenientes de computadores pessoais mostram que são uma fonte surpreendentemente rica de informação sobre a atividade da CPU.
Pergunta 1 - Qual é a informação que vaza?
Depende do hardware do computador. Testamos diferentes computadores desktop e laptop e, em todos os casos, foi possível distinguir uma CPU ociosa (isto é, estado "HLT" no 80x86) de uma CPU em atividade. Em alguns computadores também foi possível distinguir vários padrões de operação e acesso à memória. Isto pode ser observado em casos artificiais (por exemplo, loops de várias instruções da CPU) e em casos reais (por exemplo, decifração RSA). A resolução do tempo geralmente é da ordem de milissegundos. Em alguns contextos, esta informação pode ser usada para revelar chaves secretas.
Pergunta 2 - Como uma fonte acústica de baixa frequência (KHz) contém informação de uma CPU muito mais rápida (GHz)?
De duas formas. Primeiro, quando a CPU está executando uma operação longa, ela pode criar uma assinatura espectral acústica característica. Por exemplo, logo abaixo mostramos como a assinatura/decifração do RSA soa diferente para diferentes chaves secretas. Em segundo lugar, obtemos informação temporal sobre a duração de cada operação e isto pode ser usado para montar ataques de tempo (veja a pergunta 10), especialmente quando o atacante puder afetar a operação de input (isto é, num cenário de ataque por texto cifrado escolhido).
Pergunta 3 - O ataque não pode ser prejudicado pelo ruído de uma ventoinha, multitarefa ou pela presença de vários computadores na mesma sala?
Provavelmente não. Os sinais acústicos interessantes, na sua maioria, estão acima de 10KHz. Por outro lado, ruídos típicos da ventoinha do computador e ruídos do ambiente se concentram em frequências mais baixas que podem ser filtradas por equipamentos adequados. Em sistemas multitarefa, as diferentes tarefas podem ser diferenciadas através das suas assinaturas espectrais acústicas. Quando há vários computadores, eles podem ser diferenciados através das suas assinaturas acústicas porque estas dependem do hardware, da temperatura dos componentes e de outras condições do ambiente.
Pergunta 4 - Quais são as medidas de proteção existentes?
Uma medida óbvia é o uso de equipamentos de redução de ruído, como caixas "à prova de som", projetados para atenuar todas as frequências relevantes. Por outro lado, uma fonte suficientemente forte com uma larga faixa de ruídos pode mascarar sinais importantes. Esta alternativa, no entanto, é pouco atrativa devido a problemas ergonômicos (ninguém quer ficar surdo!).
Componentes eletrônicos de alta qualidade e projetos cuidadosos provavelmente podem reduzir as emanações. Por outro lado, pode-se empregar conhecidas técnicas algorítmicas para reduzir o vazamento de informações úteis para atacantes. Estas técnicas garantem que o comportamento do algoritmo, a grosso modo, seja independente do input que receba. Elas geralmente penalizam um pouco o desempenho, mas já são aplicadas com frequência para bloquear outros ataques de canal lateral.
Pergunta 5 - Existem outros ataques acústicos?
A espionagem de teclados já foi muito discutida - as teclas podem ser identificadas pelo tempo ou, como proposto recentemente por Asonov e Agrawal, pelos diferentes sons que produzem ao serem pressionadas. Este ataque pode ser aplicado para obter dados entrados manualmente (como senhas), mas não é apropriado para dados secretos maiores como, por exemplo, chaves RSA.
Outra fonte acústica é a procura feita pelos cabeçotes de discos rígidos. Esta fonte, no entanto, não é muito útil na presença de caching, gravações com retardo e multitarefa.
Antes dos computadores modernos a espionagem acústica já era praticada. Vale lembrar a técnica "ENGULF" do MI5, recontada por Peter Wright no livro Spycatcher, onde foi obtida a chave secreta de uma máquina de cifragem Hagelin no embaixada do Egito através de uma escuta telefônica.