BranchScope – uma nova falha a nível de processador

Correções para o Spectre e Meltdown não são eficientes para o BranchScope

BranchScope – uma nova falha a nível de processador. Pesquisadores de segurança cibernética de quatro grandes universidades divulgaram uma nova vulnerabilidade baseada em processador chamada BranchScope, que é semelhante ao Spectre / Meltdown, mas que são imunes às correções postas em prática para corrigirem essas vulnerabilidades.

O BranchScope foi revelado em um artigo por pesquisadores da Universidade de William e Mary, Universidade Carnegie Mellon, UC Riverside e Binghamton University. Ele aproveita os recursos de execução especulativa encontrados na maioria dos processadores modernos e pode ser usado para contornar as proteções de memória implementadas no nível do hardware e do sistema operacional. A diferença entre o BranchScope do Specter / Meltdown é que, embora ambos sejam ataques do canal lateral que exigem manipulação da execução especulativa, a nova vulnerabilidade é a primeira a se concentrar no preditor do alvo de ramificação compartilhada, disseram os pesquisadores.

Quando vários processos são executados no mesmo núcleo físico, eles compartilham uma única branch prediction unit  (BPU). Fazer isso é útil em relação à utilização e complexidade, mas o compartilhamento potencialmente abre a porta para um invasor manipular o estado BPU compartilhado, criar um canal lateral e derivar uma direção ou um destino de uma instrução de ramificação executada por um processo no computador vítima. Tal vazamento pode comprometer dados confidenciais, segundo o relatório.

Demonstramos que o BranchScope funciona de maneira confiável e eficiente a partir do espaço do usuário em três gerações de processadores Intel na presença de ruído no sistema, com uma taxa de erro inferior a 1%”, afirma o relatório.

O grupo apresentou algumas técnicas de mitigação.

Como o BranchScope requer a capacidade de criar colisões previsíveis na tabela de histórico de padrões (PHT), uma medida defensiva é evitar que esses colisões randomizem a função de indexação do PHT para receber como entrada alguns dados exclusivos dessa entidade de software.

Outro método envolve a remoção da previsão para ramos sensíveis. Isso pode ser feito por um desenvolvedor de software que pode indicar as ramificações capazes de vazar informações secretas e solicitar que elas sejam protegidas. “Então, a CPU deve evitar prever essas ramificações, confiar sempre na previsão estática e evitar a atualização de quaisquer estruturas da BPU depois que essas ramificações forem executadas”, sugeriu o documento.

A recomendação final é particionar o BPU de tal forma que os atacantes e as vítimas não compartilhem as mesmas estruturas.

Detalhes da vulnerabilidade e os contornos possíveis podem ser encontrados no artigo “BranchScope: A New Side-Channel Attack on Directional Branch Predictor”

 

fonte: SC Magazine

 

Veja também:

Sobre mindsecblog 2401 Artigos
Blog patrocinado por MindSec Segurança e Tecnologia da Informação Ltda.

Seja o primeiro a comentar

Deixe sua opinião!