terça-feira, 12 de maio de 2020
O SESES Speculative Execution Pass chega no LLVM com "implicações de desempenho extremo"
Confira !
O passe SESES, apoiado pelo Google, para o LLVM para ajudar a combater vulnerabilidades de execução especulativas foi mesclado para o LLVM 11, mas ao optar por ativar esse patch, você perde muito do desempenho do seu sistema.
O SESES foi mostrado em março pelo engenheiro do Google, Zola Bridges, após a divulgação pública do ataque de injeção de valor de carga que afeta os processadores Intel . SESES é um passe opcional para o LLVM em plataformas baseadas em x86 para "Supressão de efeito colateral de execução especulativa" e destina-se como último recurso para mitigar os gostos de LVI e outras possíveis vulnerabilidades de canal lateral de execução especulativa.
O SESES, no entanto, é absolutamente sangrento e brutal ao desempenho. Essa passagem LLVM adiciona uma instrução LFENCE (load fence) antes de cada instrução de leitura de memória, instrução de gravação de memória e a primeira instrução de ramificação em um grupo de terminadores no final de um bloco básico. Isso é ótimo para combater as vulnerabilidades, mas diminui absolutamente o desempenho.
No teste de Zola Bridges usando a implementação do BoringSSL do Google, o desempenho do SESES foi de apenas 7% da velocidade original . Sim, mais de 90% de acerto no desempenho.
Dadas as tremendas ramificações de desempenho desse passe, apesar de ser opcional, não estava claro se seria mesclado. Desde a discussão de março sobre o assunto, finalmente hoje o patch foi mesclado . O SESES estará agora disponível para aqueles que o desejam no LLVM 11.
No lado do GNU, você pode ver nossos testes de impacto de mitigação do GNU LVI enquanto em breve levarei o LLVM SESES para um giro.
Fonte
Até a próxima !!
Marcadores: Linux, Android, Segurança
Linux,
linux devops,
LLVM,
Notícia
Assinar:
Postar comentários (Atom)
Nenhum comentário:
Postar um comentário