No mundo moderno dos processadores, não é mais surpreendente encontrar outra vulnerabilidade e, às vezes, tecnologias originalmente projetadas para aumentar o nível de segurança tornam-se um caminho para um invasor. Vários pesquisadores acreditam, com razão, que não será possível se livrar dos “patches” e que é necessário mudar os princípios profundos subjacentes às arquiteturas de processadores.
Um desses projetos, desenvolvido desde 2010 pela SRI International e pela Universidade de Cambridge, é o CHERI. A Arm ingressou em 2019, revelando recentemente o primeiro protótipo de placa Morello baseado em dois dos princípios fundamentais da CHERI de compartimentação escalável e proteção de conteúdo de memória refinada. Ambos os princípios são implementados em hardware e não são novos em si.
Na verdade, estamos falando de uma extensão do conjunto padrão de instruções, com a ajuda do qual até escrito usando linguagensque tornam relativamente fácil cometer erros ao trabalhar com memória (e isso geralmente é C / C + +), o software pode funcionar sem criar sérias falhas de segurança. Compartimentalização cuidadosa (ou seja, separação) do código do sistema operacional e aplicativos, embora não exclua a presença de vulnerabilidades, mas limita seriamente a área de possível dano.
Em particular, qualquer instrução de carregamento/armazenamento e qualquer operação de busca devem ser autorizadas em hardware pelo processador. Claro, esta não é uma proteção de alto nível, mas sim um conjunto de blocos de construção básicos para construir uma. O princípio da compartimentalização é ainda mais simples: se em uma arquitetura clássica um invasor pode obter controle sobre todo o sistema, então em sistemas operacionais e aplicativos isolados um do outro, ele penetrará apenas em uma das muitas pequenas “células” e suas ações serão servir como um sinal para os mecanismos de defesa.
Arm Morello é o primeiro chip baseado em CHERI. A implementação de hardware atual usa núcleos modificados Neoverse N1 (ARMv8.2) com clock de 2,5 GHz. As primeiras placas com o novo processador são destinadas a gigantes de TI como Google e Microsoft, bem como instituições de ensino interessadas. No momento, os desenvolvedores oferecem um kernel do FreeBSD modificado, parte dos programas padrão do UNIX, bem como alguns outros aplicativos. Com o advento de placas e processadores prontos, o processo de adaptação de software deve ser significativamente acelerado.