Um grupo de pesquisadores do Instituto Politécnico de Worcester, da Universidade de Lübeck e da Universidade da Califórnia em San Diego desenvolveu um método de ataque por canal lateral que permite recuperar o valor de chaves privadas armazenadas no TPM (Trusted Platform Module). O ataque recebeu o nome de código e envolve fTPM ( baseada em firmware, que opera em um microprocessador separado dentro do CPU) da Intel (CVE-2019-11090) e TPMs de hardware em chips da STMicroelectronics (CVE-2019-16863).
Os pesquisadores prototiparam ferramentas para realizar o ataque e demonstraram a capacidade de recuperar uma chave privada de 256 bits, utilizada para a geração de assinaturas digitais usando algoritmos baseados em curvas elípticas ECDSA e EC-Schnorr. Dependendo dos privilégios de acesso, o tempo total do ataque em sistemas Intel fTPM varia de 4 a 20 minutos e requer a análise de 1 a 15 mil operações. Para atacar sistemas com o chip ST33, leva cerca de 80 minutos e exige a análise de aproximadamente 40 mil operações de geração de assinaturas digitais.
Os pesquisadores também demonstraram a viabilidade de um ataque remoto em redes de alta velocidade, que em um ambiente de laboratório com largura de banda de 1GB, conseguiu recuperar a chave privada em cinco horas, após medir o tempo de resposta para 45 mil sessões de autenticação com um servidor VPN baseado no software strongSwan, que armazena suas chaves em um TPM vulnerável.
O método de ataque é baseado na análise das diferenças nos tempos de execução das operações durante a geração de assinaturas digitais. A estimativa do atraso nas computações permite determinar informações sobre bits individuais durante o processo de multiplicação escalar em operações com curvas elípticas. Para ECDSA, identificar até mesmo alguns bits com informações sobre o vetor de inicialização (nonce) é suficiente para realizar um ataque de recuperação sequencial de toda a chave privada. Para um ataque bem-sucedido, é necessário analisar o tempo de geração de várias milhares de assinaturas digitais criadas com dados conhecidos pelo atacante.
Vulnerabilidade a STMicroelectronics com uma nova edição de chips, onde a implementação do algoritmo ECDSA foi desvinculada de correlações com o tempo de execução das operações. Curiosamente, os chips da STMicroelectronics afetados pelo problema são utilizados em equipamentos que atendem ao nível de segurança CommonCriteria (CC) EAL 4+. Os pesquisadores também examinaram chips TPM das empresas Infineon e Nuvoton, mas neles não há vazamento baseado em mudanças nos tempos de cálculo.
Nos processadores Intel, o problema se manifesta a partir da linha Haswell, lançada em 2013. É observado que uma ampla gama de notebooks, PCs e servidores fabricados por vários fabricantes, incluindo Dell, Lenovo e HP, está vulnerável.
A Intel incluiu uma correção em no pacote de atualizações de firmware, que, além do problema em questão, também contém 24 vulnerabilidades, das quais nove foram classificadas como de alto risco e uma como crítica. Para os problemas mencionados, apenas informações gerais são fornecidas, como, por exemplo, a menção de que a vulnerabilidade crítica (CVE-2019-0169) é causada pela possibilidade de causar um estouro de buffer nos ambientes Intel CSME (Converged Security and Management Engine) e Intel TXE (Trusted Execution Engine), permitindo que um invasor eleve suas permissões e acesse dados confidenciais.
Também pode ser destacado resultados de auditoria de várias SDKs para desenvolvimento de aplicativos que interagem com o código executado em enclaves isolados. Com o intuito de identificar funções problemáticas que possam ser utilizadas para realizar ataques, foram estudadas oito SDKs: , , , ,
e para Intel SGX, para RISC-V e para Sancus TEE. Durante a auditoria foram encontradas 35 vulnerabilidades, a partir das quais foram desenvolvidos vários cenários de ataque, permitindo a extração de chaves AES do enclave ou a execução de código próprio através da criação de condições que danificam o conteúdo da memória.
Fonte: opennet.ru
