Mesmo com toda a informação lançada sobre o Spectre nos últimos quase dois anos, com a divulgação do Spectre RSB (Return Stack Buffer) que afetou os processadores IBM POWER, as atenuações aplicadas não cobriram todas as CPUs que deveriam. Assim, a mitigação Spectre RSB do kernel Linux para o PowerPC está ausente em algumas CPUs.
Essa falta do kernel do Linux que não aplica a atenuação do Spectre RSB a todos os processadores PowerPC afetados resultou em CVE-2019-18660.
E por que a mitigação Spectre RSB do kernel Linux para o PowerPC está ausente em algumas CPUs?
O commit que chegou há dois dias na linha principal do Git explicou:
Falhamos ao ativar a atenuação do Spectre-RSB (Return Stack Buffer, também conhecido como ret2spec) na alternância de contexto, nas CPUs anteriores ao Power9 DD2.3.
Isso permite que um processo envenene o RSB (chamado Link Stack on Power CPUs) e possivelmente direcione incorretamente a execução especulativa de outro processo. Se o processo da vítima puder ser induzido a executar um dispositivo de vazamento, pode ser possível extrair informações da vítima por meio de um canal lateral.
A correção é ativar corretamente a atenuação da liberação da pilha de links em todas as CPUs que possuem qualquer atenuação do Spectre v2 no espaço do usuário ativada.
Há um segundo commit que adiciona uma descarga de pilha de links no caminho de saída do convidado KVM. Um vazamento por esse caminho não foi demonstrado, mas acreditamos que seja pelo menos teoricamente possível.
Desde então, a correção está no Linux 5.5 Git e já está portada para as árvores estáveis relevantes. O POWER9 DD2.3 é uma revisão atualizada do Nimbus, onde o Power9 D2.2 é a maioria dos chips POWER9 Sforza, Monza, LaGrange atualmente disponíveis.
Portanto, a equipe responsável admitie a falha e promete uma correção em breve.
Fonte: Phoronix