
Organização sem fins lucrativos com a participação do Google e outros patrocinadores em 5 de novembro de 2019 projeto , que é chamado de "o primeiro projeto de código aberto para criar uma arquitetura de chip de qualidade, com raiz de confiança (RoT) em nível de hardware".
OpenTitan na arquitetura RISC-V é um chip de propósito específico para instalação em servidores em data centers e em qualquer outro equipamento onde é necessário garantir a autenticidade da inicialização, proteger o firmware contra alterações e eliminar a possibilidade de rootkits: isso inclui placas-mãe, placas de rede, roteadores, dispositivos IoT, gadgets móveis e outros.
Claro, módulos como esse existem em processadores modernos. Por exemplo, o módulo de hardware Intel Boot Guard é a raiz de confiança em processadores Intel. Ele verifica a autenticidade do UEFI BIOS antes do carregamento do sistema operacional por meio de uma cadeia de confiança. Mas a questão é até que ponto podemos confiar em raízes de confiança proprietárias, considerando que não temos garantias contra falhas de design e que não é possível testá-las? Veja o artigo que descreve "como um erro de fabricação clonado por anos em vários fornecedores permite que um potencial invasor utilize essa tecnologia para criar um rootkit oculto no sistema que é indetectável (mesmo por programadores)."
A ameaça de comprometer o hardware na cadeia de suprimentos é surpreendentemente real: aparentemente, qualquer técnico eletrônico amador , usando equipamentos que custam menos de 200 dólares. Alguns especialistas suspeitam que “organizações com orçamentos de centenas de milhões de dólares podem estar nisso há muitos anos”. Embora não haja evidências, teoricamente isso é possível.
“Se você não pode confiar no carregador de hardware, o jogo acabou,” disse Gavin Ferris, membro do conselho da lowRISC. “Não importa o que o sistema operacional faça — se, no momento da inicialização do sistema operacional, você já foi comprometido, o resto é apenas uma questão técnica. Sua história já acabou.”
Esse é o problema que a primeira plataforma de hardware aberta do seu tipo, OpenTitan (, , ), deve resolver. Abandonar soluções proprietárias permitirá mudar "a indústria de RoT, que é lenta e imperfeita", segundo o Google.
A própria empresa Google começou o desenvolvimento do Titan, ao descobrir o sistema operacional Minix embutido nos chips Intel Management Engine (ME). Este complexo sistema operacional ampliava a superfície de ataque de forma imprevisível e incontrolável. Google , mas sem sucesso.
O que é o raiz de confiança?
Cada etapa do processo de inicialização do sistema verifica a autenticidade da próxima etapa, formando assim uma cadeia de confiança.
O raiz de confiança (Root of Trust, RoT) é uma verificação de autenticidade em hardware que garante que a fonte da primeira instrução executável na cadeia de confiança não pode ser alterada. O RoT é a proteção básica contra rootkits. Esta é uma etapa crítica do processo de inicialização que participa do carregamento subsequente do sistema — desde o BIOS até o sistema operacional e aplicativos. Ele deve verificar a autenticidade de cada etapa subsequente de inicialização. Para isso, em cada etapa é utilizado um conjunto de chaves com assinatura digital. Um dos padrões mais populares de proteção de hardware de chaves é o TPM (Trusted Platform Module, módulo de plataforma confiável).

Estabelecimento do raiz de confiança. Acima está uma inicialização de cinco etapas que forma uma cadeia de confiança, começando com o carregador que está na memória imutável. Em cada etapa é utilizada uma chave pública, com a qual é autenticado o próximo componente a ser carregado. Ilustração do livro de Perry Lee
O RoT pode ser iniciado de várias maneiras:
- carregamento da imagem e da chave raiz da firmware ou da memória imutável;
- armazenamento da chave raiz em memória programável única utilizando bits de fusão;
- carregamento de código da área de memória protegida para um armazenamento seguro.
Em diferentes processadores, o raiz de confiança é implementado de maneiras distintas. Intel e ARM
suportam as seguintes tecnologias:
- ARM TrustZoneA ARM vende blocos de silício proprietários para fabricantes de chips, que fornecem uma raiz de confiança e outros mecanismos de segurança. Assim, o microprocessador é separado do núcleo inseguro; ele executa um Trusted OS — um sistema operacional seguro com uma interface de interação bem definida com componentes inseguros. Os recursos protegidos estão no núcleo confiável e devem ser o mais leves possível. A transição entre componentes de diferentes tipos é feita através de uma troca de contexto de hardware, o que elimina a necessidade de software seguro para monitoramento.
- Intel Boot Guard é um mecanismo de hardware para autenticação do bloco de inicialização usando criptografia ou por meio de um processo de medição. Para verificar o bloco de inicialização, o fabricante deve gerar uma chave de 2048 bits, que consiste em duas partes: uma pública e uma privada. A chave pública é impressa na placa por meio da 'detonação' de bits de fusível durante a produção. Esses bits são de uso único e não podem ser alterados. A parte privada da chave gera uma assinatura digital para autenticar o estágio de inicialização.
A plataforma OpenTitan revela partes chave de tal sistema de hardware e software, conforme mostrado no diagrama abaixo.

Plataforma OpenTitan
O desenvolvimento da plataforma OpenTitan é liderado pela organização sem fins lucrativos lowRISC. A equipe de engenheiros está baseada em Cambridge (Reino Unido), e o principal patrocinador é o Google. Os parceiros fundadores incluem a ETH Zurich, G+D Mobile Security, Nuvoton Technology e Western Digital.
Google do projeto no blog corporativo do Google Open Source. A empresa afirmou que a OpenTitan visa 'fornecer recomendações de alta qualidade para o design e a integração de RoT para uso em servidores de data centers, armazenamento, dispositivos periféricos e muito mais'.
A raiz de confiança é o primeiro elo na cadeia de confiança no nível mais baixo em um módulo de computação confiável, que é sempre totalmente confiável pelo sistema.
O RoT é criticamente importante para aplicativos, incluindo infraestruturas de chave pública (PKI). É a base do sistema de segurança sobre o qual se apoia um sistema complexo, como um aplicativo IoT ou um centro de dados. Portanto, é compreensível por que o Google apoia este projeto. Atualmente, possui 19 centros de dados em cinco continentes. Os data centers, os armazenamentos e os aplicativos críticos representam uma ampla superfície de ataque, e para proteger essa infraestrutura, o Google inicialmente desenvolveu sua própria raiz de confiança no chip Titan.
para os data centers do Google foi apresentado pela primeira vez na conferência Google Cloud Next. "Nossos computadores realizam uma verificação criptográfica de cada pacote de software e, em seguida, decidem se concedem acesso aos recursos da rede. O Titan se integra a esse processo e oferece camadas adicionais de proteção," disseram representantes do Google durante essa apresentação.

O chip Titan no servidor do Google
A arquitetura Titan era propriedade do Google, mas agora está se tornando um bem público como parte de um projeto de código aberto.
A primeira fase do projeto é criar o design lógico do RoT no nível do chip, incluindo um microprocessador de código aberto , processadores criptográficos, gerador de números aleatórios hardware, hierarquias de chaves e memória para armazenamento não volátil e volátil, mecanismos de proteção, dispositivos periféricos de entrada e saída e processos de inicialização seguros.
O Google afirma que o OpenTitan é baseado em três princípios fundamentais:
- todo mundo tem a capacidade de verificar a plataforma e contribuir;
- maior flexibilidade devido à abertura do design logicamente seguro, que não é bloqueado por restrições proprietárias do fornecedor;
- qualidade garantida não apenas pelo próprio design, mas também pela firmware de referência e pela documentação.
«Os chips atuais com raízes de confiança são extremamente proprietários. Eles alegam segurança, mas na realidade você precisa acreditar nisso, pois não pode verificá-los por si mesmo», diz Dominic Rizzo, especialista em segurança do projeto Google Titan. «Agora, pela primeira vez, temos a oportunidade de garantir segurança sem ter fé cega em desenvolvedores de designs proprietários de raízes de confiança. Portanto, a base não é apenas sólida, mas também pode ser verificada».
Rizzo acrescentou que o OpenTitan pode ser considerado «um design radicalmente transparente, em comparação com a situação atual».
De acordo com os desenvolvedores, o OpenTitan de forma alguma deve ser considerado um produto final, pois o desenvolvimento ainda não foi concluído. Eles abriram especificamente as especificações e o design no meio do desenvolvimento para que todos pudessem verificá-lo, contribuir e aprimorar o sistema antes do início da produção.
Para iniciar a produção dos chips OpenTitan, é preciso fazer uma solicitação e passar por certificação. Aparentemente, não são necessárias taxas de licenciamento.
Fonte: habr.com
