thumb|Tentativa de decodificar bits de chave RSA usando análise de energia. O pico à esquerda representa as variações de energia da CPU durante a etapa do algoritmo sem multiplicação, o pico à direita (mais amplo) – etapa com multiplicação, permitindo que um atacante leia os bits 0, 1. Em segurança da computação, um ataque de canal lateral é qualquer ataque baseado em informações adicionais que podem ser reunidas devido à forma fundamental como um protocolo de computador ou algoritmo é implementado, ao invés de falhas no design do protocolo ou algoritmo em si (por exemplo, falhas encontradas em uma criptoanálise de um algoritmo criptográfico) ou erros menores, mas potencialmente devastadores, na implementação. (A criptanálise também inclui a busca por ataques de canal lateral.) Informações de temporização, consumo de energia, vazamentos eletromagnéticos e som são exemplos de informações adicionais que podem ser exploradas para facilitar ataques de canal lateral.

Alguns ataques de canal lateral exigem conhecimento técnico da operação interna do sistema, embora outros, como a análise diferencial de potência, sejam eficazes como ataques de caixa preta. O surgimento de aplicativos Web 2.0 e software como serviço também aumentou significativamente a possibilidade de ataques de canal lateral na web, mesmo quando as transmissões entre um navegador da web e o servidor são criptografadas (por exemplo, por meio de HTTPS ou criptografia Wi-Fi), segundo pesquisadores da Microsoft Research e da Indiana University.

Tentativas de quebrar um criptossistema enganando ou coagindo pessoas com acesso legítimo geralmente não são consideradas ataques de canal lateral: veja engenharia social e criptoanálise de mangueira de borracha.

As classes gerais de ataques de canal lateral incluem:

Ataque de cache — ataques baseados na capacidade do atacante de monitorar os acessos ao cache feitos pela vítima em um sistema físico compartilhado, como em um ambiente virtualizado ou um tipo de serviço em nuvem. Ataque de temporização — ataques baseados na medição do tempo que várias computações (como, por exemplo, comparar a senha fornecida por um atacante com a senha desconhecida da vítima) levam para serem realizadas. Ataque de monitoramento de energia — ataques que fazem uso da variação do consumo de energia pelo hardware durante a computação. Ataque eletromagnético — ataques baseados em vazamentos de radiação eletromagnética, que podem fornecer diretamente textos simples e outras informações. Tais medições podem ser usadas para inferir chaves criptográficas usando técnicas equivalentes às da análise de potência ou podem ser usadas em ataques não criptográficos, por exemplo, ataques TEMPEST (também conhecidos como van Eck phreaking ou monitoramento de radiação). Criptoanálise acústica — ataques que exploram o som produzido durante uma computação (semelhante à análise de potência). Análise diferencial de falha — na qual segredos são descobertos introduzindo falhas em uma computação. Persistência de dados — na qual dados sensíveis são lidos após supostamente terem sido excluídos (por exemplo, ataque de inicialização a frio [Cold boot attack]). Ataques iniciados por software — Atualmente, uma classe rara de canais laterais, Row hammer é um exemplo no qual a memória fora dos limites pode ser alterada acessando a memória adjacente com muita frequência (causando perda de retenção de estado). Lista de permissões — ataques baseados no fato de que os dispositivos de lista branca se comportarão de maneira diferente ao se comunicar com dispositivos permitidos (enviando de volta as respostas) e dispositivos não permitidos (não respondendo aos dispositivos). Um canal lateral baseado em lista branca pode ser usado para rastrear endereços MAC do Bluetooth. Óptico - no qual segredos e dados sensíveis podem ser lidos por gravação visual usando uma câmera de alta resolução ou outros dispositivos que possuam tais capacidades (veja exemplos abaixo).

Em todos os casos, o princípio subjacente é que os efeitos físicos causados pela operação de um sistema criptográfico (ao lado) podem fornecer informações adicionais úteis sobre segredos no sistema, como a chave criptográfica, informações parciais de estado, textos simples completos ou parciais e assim por diante. O termo criptofthora (degradação secreta) é às vezes usado para expressar a degradação de material de chave secreta resultante do vazamento de canal lateral.

Exemplos Um ataque de cache de canal lateral funciona monitorando operações críticas de segurança, como a entrada da tabela AES ou exponenciação modular ou multiplicação ou acessos à memória. O atacante então é capaz de recuperar a chave secreta dependendo dos acessos feitos (ou não feitos) pela vítima, deduzindo a chave de criptografia. Além disso, ao contrário de alguns outros ataques de canal lateral, esse método não cria uma falha na operação criptográfica em andamento e é invisível para a vítima.

Em 2017, foram descobertas duas vulnerabilidades da CPU (denominadas Meltdown e Spectre), que podem usar um canal lateral baseado em cache para permitir que um atacante vaze o conteúdo da memória de outros processos e do próprio sistema operacional.Um ataque de temporização observa o movimento de dados para dentro e para fora da CPU ou memória no hardware que executa o criptossistema ou algoritmo. Apenas observando variações no tempo que leva para realizar operações criptográficas, pode ser possível determinar toda a chave secreta. Tais ataques envolvem análise estatística de medidas de temporização e foram demonstrados em redes.

Um ataque de análise de potência pode fornecer informações ainda mais detalhadas observando o consumo de energia de um dispositivo de hardware, como CPU ou circuito criptográfico. Esses ataques são categorizados de forma aproximada em análise de potência simples (SPA) e análise de potência diferencial (DPA). Um exemplo é o Collide+Power, que afeta quase todas as CPUs. Outros exemplos usam abordagens de aprendizado de máquina.

Flutuações na corrente também geram ondas de rádio, permitindo ataques que analisam medidas de emissões eletromagnéticas (EM). Esses ataques geralmente envolvem técnicas estatísticas semelhantes às dos ataques de análise de potência.

Um ataque de canal lateral baseado em aprendizado profundo,"X-DeepSCA: Ataque de Canal Lateral com Aprendizado Profundo entre Dispositivos" por D. Das, A. Golder, J. Danial, S. Ghosh, A. Raychowdhury e S. Sen, na 56ª Conferência de Projeto Automatizado ACM/IEEE (DAC) 2019."Abordagens Práticas para Ataque de Canal Lateral de Energia com Aprendizado Profundo entre Dispositivos" por A. Golder, D. Das, J. Danial, S. Ghosh, A. Raychowdhury e S. Sen, no IEEE Transactions on Very Large Scale Integration (VLSI) Systems, Vol. 27, Edição 12, 2019. utilizando informações de potência e EM em vários dispositivos foi demonstrado com o potencial de quebrar a chave secreta de um dispositivo diferente, mas idêntico, em tão pouco quanto um único traço.

Análogos históricos aos ataques modernos de canal lateral são conhecidos. Um documento recentemente desclassificado da NSA revela que, já em 1943, um engenheiro da Bell Telephone observou picos decifráveis em um osciloscópio associados à saída descriptografada de um determinado teletipo criptografante. Segundo o ex-oficial do MI5, Peter Wright, o Serviço de Segurança Britânico analisou as emissões do equipamento cifrado francês na década de 1960. Na década de 1980, suspeitava-se que espiões soviéticos (KGB) haviam plantado dispositivos de escuta dentro de máquinas de escrever IBM Selectric para monitorar o ruído elétrico gerado quando a esfera da máquina girava e se inclinava para atingir o papel; as características desses sinais poderiam determinar qual tecla foi pressionada.

O consumo de energia dos dispositivos causa aquecimento, que é compensado por efeitos de resfriamento. Mudanças de temperatura criam estresse mecânico termicamente induzido. Esse estresse pode gerar emissões acústicas de baixo nível de CPUs em operação (cerca de 10 kHz em alguns casos). Pesquisas recentes de Shamir et al. sugerem que informações sobre a operação de criptossistemas e algoritmos podem ser obtidas dessa maneira também. Isso é um ataque de criptoanálise acústica.

Se a superfície do chip da CPU, ou em alguns casos a embalagem da CPU, puder ser observada, imagens infravermelho também podem fornecer informações sobre o código sendo executado na CPU, conhecido como ataque de imagem térmica.

Exemplos de ataques de canal lateral óptico incluem obter informações do indicador de atividade do disco rígido até a leitura de um pequeno número de fótons emitidos por transistores à medida que mudam de estado.

Também existem canais laterais baseados em alocação e se referem às informações que vazam da alocação (em oposição ao uso) de um recurso, como largura de banda de rede, para clientes que estão solicitando simultaneamente o recurso disputado.

Contramedidas Como os ataques de canal lateral dependem da relação entre as informações emitidas (vazadas) por meio de um canal lateral e os dados secretos, as contramedidas se enquadram em duas categorias principais: (1) eliminar ou reduzir a liberação de tais informações e (2) eliminar a relação entre as informações vazadas e os dados secretos, ou seja, tornar as informações vazadas não relacionadas, ou melhor, "não correlacionadas", aos dados secretos, geralmente por meio de alguma forma de randomização do texto cifrado que transforma os dados de maneira reversível após a operação criptográfica (por exemplo, descriptografia) ser concluída.

Na primeira categoria, displays com blindagem especial para reduzir as emissões eletromagnéticas, diminuindo a suscetibilidade a ataques TEMPEST, estão agora disponíveis comercialmente. A condicionamento e filtragem da linha de energia podem ajudar a dissuadir ataques de monitoramento de energia, embora tais medidas devam ser usadas com cautela, uma vez que até mesmo correlações muito pequenas podem permanecer e comprometer a segurança. Invólucros físicos podem reduzir o risco de instalação sorrateira de microfones (para combater ataques acústicos) e outros dispositivos de micro-monitoramento (contra ataques de consumo de energia da CPU ou imagem térmica).

Outra contramedida (ainda na primeira categoria) é saturar o canal emitido com ruído. Por exemplo, um atraso aleatório pode ser adicionado para desencorajar ataques temporizados, embora os adversários possam compensar esses atrasos fazendo a média de várias medições (ou, mais geralmente, usando mais medições na análise). Quando a quantidade de ruído no canal lateral aumenta, o adversário precisa coletar mais medições.

Outra contramedida na primeira categoria é usar software de análise de segurança para identificar certas classes de ataques de canal lateral que podem ser encontrados durante as etapas de design do próprio hardware subjacente. Ataques temporizados e ataques de cache podem ser identificados por meio de certas plataformas de software de análise de segurança disponíveis comercialmente, que permitem testar a vulnerabilidade ao ataque em si, bem como a eficácia da mudança arquitetônica para contornar a vulnerabilidade. O método mais abrangente para empregar essa contramedida é criar um Ciclo de Vida de Desenvolvimento Seguro para hardware, que inclui a utilização de todas as plataformas de análise de segurança disponíveis em suas respectivas fases do ciclo de vida de desenvolvimento do hardware.

No caso de ataques temporizados contra alvos cujos tempos de computação são quantizados em contagens de ciclos de relógio discretos, uma contramedida eficaz é projetar o software para ser isócrono, ou seja, executar em uma quantidade exatamente constante de tempo, independentemente de valores secretos. Isso torna os ataques temporizados impossíveis."Uma Arquitetura Assíncrona Baseada em Rede para Dispositivos Criptográficos" por Ljiljana Spadavecchia 2005