Share via


Atestado

A computação é uma parte essencial de nossas vidas diárias, alimentando tudo, desde nossos smartphones até infraestrutura crítica. No entanto, o aumento dos ambientes regulatórios, a prevalência de ataques cibernéticos e a crescente sofisticação dos invasores tornaram difícil confiar na autenticidade e integridade das tecnologias de computação das quais dependemos. O atestado, uma técnica para verificar os componentes de software e hardware de um sistema, é um processo crítico para estabelecer e garantir que as tecnologias de computação nas quais confiamos sejam confiáveis.

Neste documento, analisamos o que é atestado, os tipos de atestado que a Microsoft oferece atualmente e como os clientes podem utilizar esses tipos de cenários de atestado em soluções da Microsoft.

O que é Atestado?

No atestado remoto, "um par (o "Attester") produz informações críveis sobre si mesmo ("Evidência") para permitir que um par remoto (a "Parte Confiável") decida se considera esse Attester um par confiável. Os procedimentos de atestado remoto são facilitados por uma parte vital adicional (o "Verificador"). Em termos mais simples, o atestado é uma maneira de provar que um sistema de computador é confiável. Para entender melhor o que é atestado e como ele funciona na prática, comparamos o processo de atestado em computação com exemplos da vida real com passaportes e verificações de antecedentes. A definição e os modelos que usamos neste documento estão descritos no documento de arquitetura Remote Attestation procedureS (RATs) da Internet Engineering Task Force (IETF). Para saber mais, consulte Internet Engineering Task Force: Remote ATtestation procedureS (RATs) Architecture.

Modelo de passaporte

Modelo de Passaporte - Balcão de Imigração

  1. Um cidadão quer um passaporte para viajar para um país/região estrangeira. O Cidadão submete os requisitos de prova ao seu País/Região de Acolhimento.
  2. O país/região anfitrião recebe a evidência de conformidade com a política do indivíduo e verifica se as evidências fornecidas provam que o indivíduo está em conformidade com as políticas para a emissão de um passaporte.
    • A certidão de nascimento é válida e não foi alterada.
    • Emissor da certidão de nascimento é confiável
    • O indivíduo não faz parte de uma lista restrita
  3. Se o País/Região Anfitrião decidir que as provas cumprem as suas políticas, o País/Região Anfitrião emitirá um passaporte para um Cidadão.
  4. O Cidadão viaja para uma nação estrangeira, mas primeiro deve apresentar seu passaporte ao Agente de Patrulha de Fronteira do País/Região Estrangeira para avaliação.
  5. O Agente de Patrulha de Fronteira de País/Região Estrangeira verifica uma série de regras no passaporte antes de confiar nele
    • O passaporte é autêntico e não foi alterado.
    • O passaporte foi produzido por um país/região confiável.
    • O passaporte não está expirado ou revogado.
    • O passaporte está em conformidade com a política de um requisito de visto ou idade.
  6. O Agente de Patrulha de Fronteira do País/Região Estrangeira aprova o Passaporte e o Cidadão pode entrar no País/Região Estrangeira.

Diagram of remote attestation with the passport model for an immigration desk.

Modelo de Passaporte - Informática

  1. Um TEE (Trusted Execution Environment), também conhecido como Attester, deseja recuperar segredos de um Gerenciador de Segredos, também conhecido como Terceira Parte Confiável. Para recuperar segredos do Gerente de Segredos, o TEE deve provar que é confiável e genuíno para o Gerente de Segredos. O TEE submete suas evidências a um Verificador para provar que é confiável e genuíno, o que inclui o hash de seu código executado, hash de seu ambiente de compilação e seu certificado gerado por seu fabricante.
  2. O Verificador, um serviço de atestado, avalia se as provas dadas pelo TEE atendem aos seguintes requisitos para serem confiáveis.
    • O certificado é válido e não foi alterado.
    • O emissor do certificado é confiável
    • A evidência de TEE não faz parte de uma lista restrita
  3. Se o Verificador decidir que a evidência atende às políticas definidas, o Verificador criará um Resultado de Atestado e o entregará ao TEE.
  4. O TEE quer trocar segredos com o Gerente de Segredos, mas primeiro deve apresentar seu Resultado de Atestado ao Gerente de Segredos para avaliação.
  5. O Gerenciador de Segredos verifica uma série de regras no Resultado do Atestado antes de confiar nele
    • O resultado do atestado é autêntico e não foi alterado.
    • O resultado do atestado foi produzido por uma autoridade confiável.
    • O resultado do atestado não expirou ou foi revogado.
    • O resultado do atestado está em conformidade com a política de administrador configurada.
  6. O Gerente de Segredos aprova o Resultado do Atestado e troca segredos com o TEE.

Diagram of remote attestation with the passport model for computing.

Modelo de verificação de plano de fundo

Verificação de Antecedentes – Verificação Escolar

  1. Uma pessoa está fazendo uma verificação de antecedentes com um empregador em potencial para obter um emprego. A Pessoa submete seu histórico escolar da Escola que frequentou ao potencial Empregador.
  2. O Empregador recupera o histórico escolar da pessoa e o encaminha para a respectiva Escola para ser verificado.
  3. A Escola avalia se a formação dada pela Pessoa atende aos registros escolares.
  4. A Escola emite um Resultado de Atestado que verifica se o histórico escolar da Pessoa corresponde aos seus registros e o envia ao Empregador
  5. O Empregador, também conhecido como Parte Confiável, pode verificar uma série de regras sobre o Resultado do Atestado antes de confiar nele.
    • O resultado do atestado é autêntico, não foi alterado e realmente vem da Escola.
    • O resultado do atestado foi produzido por uma escola de confiança.
  6. O Empregador aprova o Resultado do Atestado e contrata a Pessoa.

Diagram of remote attestation with the background check model for education background.

Verificação de antecedentes – Computação

  1. Um TEE (Trusted Execution Environment), também conhecido como Attester, deseja recuperar segredos de um Gerenciador de Segredos, também conhecido como Terceira Parte Confiável. Para recuperar segredos do Gerente de Segredos, o TEE deve provar que é confiável e genuíno. O TEE envia suas evidências ao Gerenciador de Segredos para provar que é confiável e genuíno, o que inclui o hash de seu código executado, hash de seu ambiente de compilação e seu certificado gerado por seu fabricante.
  2. O Gerente de Segredos recupera as evidências do TEE e as encaminha ao Verificador para serem verificadas.
  3. O serviço de Verificador avalia se as evidências fornecidas pelo TEE atendem aos requisitos de política definidos para serem confiáveis.
    • O certificado é válido e não foi alterado.
    • O emissor do certificado é confiável.
    • As provas de TEE não fazem parte de uma lista restrita.
  4. O Verificador cria um Resultado de Atestado para o TEE e o envia para o Gerenciador de Segredos.
  5. O Gerenciador de Segredos verifica uma série de regras no Resultado do Atestado antes de confiar nele.
    • O resultado do atestado é autêntico e não foi alterado.
    • O resultado do atestado foi produzido por uma autoridade confiável.
    • O resultado do atestado não expirou ou foi revogado.
    • O resultado do atestado está em conformidade com a política de administrador configurada.
  6. O Gerente de Segredos aprova o Resultado do Atestado e troca segredos com o TEE.

Diagram of remote attestation with the background check model for computing.

Tipos de Atestado

Os serviços de atestado podem ser utilizados de duas maneiras distintas que cada uma fornece seus próprios benefícios.

Provedor de nuvem

Na Microsoft, fornecemos o Microsoft Azure Attestation (MAA) como serviço voltado para o cliente e uma estrutura para atestar TEEs (Trusted Execution Environments), como enclaves SGX (Intel Software Guard Extensions), enclaves de segurança baseada em virtualização (VBS), TPMs (Trusted Platform Modules), Trusted Launch e Confidential Virtual Machines. Os benefícios do uso do serviço de atestado de um provedor de nuvem, como o Atestado do Azure, incluem:

  • Disponível gratuitamente
  • O código-fonte está disponível para clientes governamentais por meio da ferramenta Microsoft Code Center Premium
  • Protege os dados durante o uso operando em um enclave Intel SGX.
  • Atesta vários ETEs em uma única solução.
  • Oferece um forte Acordo de Nível de Serviço (SLA)

Construa o seu próprio

Os clientes podem criar seus próprios mecanismos de atestado para confiar em sua infraestrutura de computação a partir de ferramentas fornecidas por provedores de nuvem e hardware. Criar seus próprios processos de atestado para soluções da Microsoft pode exigir o uso do THIM (Gerenciamento de Identidade de Hardware Confiável), uma solução que lida com o gerenciamento de cache de certificados para todos os ambientes de execução confiáveis (TEE) residentes no Azure e fornece informações de base de computação confiável (TCB) para impor uma linha de base mínima para soluções de atestado. Os benefícios de criar e usar seu próprio serviço de atestado incluem,

  • 100% de controle sobre os processos de atestado para atender aos requisitos regulatórios e de conformidade
  • Customização de integrações com outras tecnologias computacionais

Cenários de atestado na Microsoft

Há muitos cenários de atestado na Microsoft que permitem que os clientes escolham entre os cenários de serviço de atestado do Provedor de Nuvem e Criar seu próprio certificado. Para cada seção, examinamos as ofertas do Azure e os cenários de atestado disponíveis.

VMs com Enclaves de Aplicação

As VMs com Application Enclaves são habilitadas pelo Intel SGX, que permite que as organizações criem enclaves que protegem os dados e mantêm os dados criptografados enquanto a CPU processa os dados. Os clientes podem atestar enclaves Intel SGX no Azure com MAA e por conta própria.

Máquinas virtuais confidenciais

As Máquinas Virtuais Confidenciais são habilitadas pelo AMD SEV-SNP, que permite que as organizações tenham isolamento baseado em hardware entre máquinas virtuais e código de gerenciamento de host subjacente (incluindo hipervisor). Os clientes podem atestar suas máquinas virtuais confidenciais gerenciadas no Azure com MAA e por conta própria.

Contêineres confidenciais em instâncias de contêiner do Azure

Os Contêineres Confidenciais em Instâncias de Contêiner do Azure fornecem um conjunto de recursos e capacidades para proteger ainda mais suas cargas de trabalho de contêiner padrão para alcançar metas mais altas de segurança de dados, privacidade de dados e integridade de código de tempo de execução. Os contêineres confidenciais são executados em um TEE (Trusted Execution Environment, ambiente de execução confiável) com suporte de hardware que fornece recursos intrínsecos, como integridade de dados, confidencialidade de dados e integridade de código.