validating-tpm-measured-boot-attestation
Ajuda seu agente a confirmar se um computador iniciou de forma segura e confiável. É útil para garantir que nada foi alterado no sistema.
O que ela faz
Esta ferramenta verifica se o seu computador iniciou de forma segura, usando um chip especial chamado TPM. Ela garante que o sistema operacional e outros programas essenciais não foram alterados por hackers antes mesmo de você ligar o computador.
Quando usar
- ✓Ao conectar um novo computador em uma rede segura.
- ✓Para verificar se um computador foi adulterado durante a inicialização.
- ✓Para proteger segredos importantes, como senhas, garantindo que só sejam acessados se o sistema iniciar corretamente.
Exemplo do que pedir para a IA
“Verifique se meu computador iniciou de forma segura e se o sistema operacional não foi modificado.”
Quer saber mais? Abra as seções abaixo.
Como usar
O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.
Link da skill
Mensagem pronta para colar
Como funciona
O TPM registra cada etapa da inicialização do seu computador. Esta ferramenta compara essas gravações com o que deveria ter acontecido para detectar qualquer mudança suspeita.
Instalação
Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.
No terminal (Claude Code, Codex, Cursor), na pasta do projeto:
npx skills add mukul975/Anthropic-Cybersecurity-Skills --skill validating-tpm-measured-boot-attestationOu baixe só o arquivo:
curl -L https://raw.githubusercontent.com/mukul975/Anthropic-Cybersecurity-Skills/main/skills/validating-tpm-measured-boot-attestation/SKILL.md -o SKILL.mdConteúdo técnico (SKILL.md)
Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.
Validação do Measured Boot e Attestation do TPM
Aviso Legal: Execute operações do TPM apenas em sistemas que você possui ou está autorizado a avaliar. Algumas operações (limpar o TPM, assumir propriedade, definir índices NV) são destrutivas ou podem bloquear o dispositivo. Esta habilidade é para verificação de integridade defensiva e avaliação autorizada.
Visão Geral
Um Trusted Platform Module (TPM 2.0) é uma raiz de confiança de hardware que suporta o measured boot: cada estágio da cadeia de boot "mede" (calcula o hash) o próximo estágio e estende essa medição para um Platform Configuration Register (PCR) antes de passar o controle. Os PCRs não podem ser definidos arbitrariamente — eles só podem ser estendidos (new = hash(old || measurement)), então o valor final do PCR é um resumo à prova de adulteração de tudo o que foi executado. O perfil de firmware TCG atribui significados específicos: o código/configuração do firmware UEFI mede nos PCRs 0–7 (o PCR 7 captura especificamente a política do Secure Boot), os bootloaders medem o kernel nos PCRs 8–9, e o Linux IMA mede executáveis nos PCRs 10.
Duas verificações complementares são importantes. A validação local lê os PCRs atuais (tpm2_pcrread) e reproduz o log de eventos do TPM (tpm2_eventlog em /sys/kernel/security/tpm0/binary_bios_measurements) para confirmar que as medições registradas reproduzem os valores dos PCRs ao vivo — provando que o log é autêntico e revelando exatamente o que mudou se um valor se desviar da linha de base. A attestation remota faz com que o TPM produza uma cota (quote) assinada (tpm2_quote) sobre PCRs selecionados usando uma Attestation Key (AK), com um nonce fresco para evitar replay; um verificador então verifica independentemente a assinatura e o digest do PCR (tpm2_checkquote) e compara com um valor de referência/esperado. Isso permite que um servidor estabeleça criptograficamente que uma máquina remota inicializou firmware e kernel aprovados antes de conceder acesso, selar segredos ou admiti-la em uma rede Zero Trust.
Esta habilidade fornece o fluxo de trabalho completo tpm2-tools para registrar uma AK, capturar e verificar cotas, reproduzir logs de eventos, selar/deselhar dados para uma política de PCR e construir uma linha de base de valor de referência para attestation de frota.
Quando Usar
- Estabelecer que endpoints/servidores inicializaram firmware e kernel conhecidos e bons antes de conceder acesso (postura de dispositivo Zero Trust).
- Detectar adulteração na cadeia de boot (bootkits, alterações não autorizadas de firmware/kernel) via desvio de PCR da linha de base.
- Verificar a integridade do measured-boot após um incidente de Secure Boot ou firmware.
- Selar segredos (chaves de disco, credenciais) para um estado de measured-boot para que eles só sejam liberados em um boot confiável.
- Construir ou auditar um serviço de attestation remota (por exemplo, Keylime, verificador personalizado).
Pré-requisitos
- Um sistema com um dispositivo TPM 2.0 e o gerenciador de recursos:
sudo apt install tpm2-tools tpm2-abrmd # Debian/Ubuntu sudo dnf install tpm2-tools tpm2-abrmd # Fedora/RHEL - Acesso ao TPM (
/dev/tpm0//dev/tpmrm0) e ao log de medição do kernel em/sys/kernel/security/tpm0/binary_bios_measurements. - Acesso root para ler algumas entradas sysfs e para operações NV/AK.
- Para attestation remota: um host verificador e um transporte para a troca de cota/nonce.
Objetivos
- Ler e interpretar bancos de PCR e seus significados atribuídos pelo TCG.
- Verificar se o log de eventos do TPM reproduz os valores atuais dos PCRs (replay do log de eventos).
- Criar uma Attestation Key e produzir uma cota assinada vinculada a um nonce.
- Verificar independentemente a assinatura da cota e o digest do PCR em um verificador.
- Estabelecer linhas de base de PCR de referência e detectar desvios em uma frota.
- Opcionalmente, selar/deselhar um segredo para uma política de PCR de measured-boot.
Mapeamento MITRE ATT&CK
| ID da Técnica | Nome da Técnica | Relevância |
|---|---|---|
| T1542 | Pre-OS Boot | O measured boot detecta a adulteração pré-SO em que esta técnica se baseia. |
| T1542.001 | Pre-OS Boot: System Firmware | O desvio dos PCRs 0–7 revela modificação não autorizada do firmware. |
| T1542.003 | Pre-OS Boot: Bootkit | As medições do bootloader/kernel (PCRs 8–10) expõem alterações de bootkit. |
| T1014 | Rootkit | As medições do IMA (PCR 10) e a verificação da cota expõem adulterações ocultas. |
| T1601.001 | Modify System Image: Patch System Image | A attestation contra valores de referência sinaliza patches de imagem não autorizados. |
Fluxo de Trabalho
1. Confirmar a presença do TPM e ler suas propriedades
tpm2_getcap properties-fixed | grep -i manufacturer
tpm2_getcap pcrs # list supported PCR banks (sha1, sha256, ...)
2. Ler os valores atuais dos PCRs
…
Perguntas frequentes
O que é um TPM?
TPM significa Trusted Platform Module. É um chip de segurança no seu computador que protege informações sensíveis e garante a integridade do sistema.
O que é 'measured boot'?
Measured boot é um processo onde o TPM registra informações sobre cada etapa da inicialização do computador. Isso cria um registro que pode ser verificado para garantir que nada foi alterado.
O que são PCRs?
PCRs (Platform Configuration Registers) são como pequenas caixas de memória dentro do TPM que armazenam os registros das etapas de inicialização. Eles só podem ser atualizados de uma forma específica para garantir que os registros sejam confiáveis.
Detalhes
Descrição original do autor
Verifies TPM 2.0 measured-boot integrity and remote attestation with tpm2-tools -- reading PCRs (tpm2_pcrread), replaying the boot event log, generating and checking signed quotes (tpm2_quote/tpm2_checkquote), and sealing secrets to a PCR policy. Use to confirm a system booted trusted firmware/kernel for Zero Trust device posture, detect boot-chain tampering via PCR drift, or build a golden-value
Popularidade
- Estrelas no GitHub
- 35 mil
- Posição no ranking
- #6244
- Licença
- Apache-2.0
- Atualizada em
- 31/08/2026
Comentários
- …
Mais skills deste repositório
abusing-dpapi-for-credential-access
Dá ao seu agente de IA instruções prontas para uma tarefa específica, para ele fazer melhor e mais rápido.
mukul975/Anthropic-Cybersecurity-Skills
abusing-shadow-credentials-for-privesc
Ensina seu agente de IA a escrever textos claros e bem estruturados.
mukul975/Anthropic-Cybersecurity-Skills
achieving-cmmc-level-2-compliance
Ajuda seu agente a preparar um ambiente para conformidade com CMMC Nível 2. Ele implementa requisitos de segurança e gerencia a documentação necessária.
mukul975/Anthropic-Cybersecurity-Skills
acquiring-disk-image-with-dd-and-dcfldd
Ajuda seu agente a criar cópias exatas de discos rígidos. Isso é útil para garantir que nenhuma informação seja perdida ou alterada durante investigações.
mukul975/Anthropic-Cybersecurity-Skills
Skills parecidas
cpp-testing
Faz seu agente escrever e melhorar testes para código C++. Ajuda a configurar ferramentas de teste e a corrigir erros.
affaan-m/ECC
csharp-testing
Ajuda seu agente a criar testes para código C# e .NET. Ele usa as melhores práticas para garantir que os testes sejam eficientes e confiáveis.
affaan-m/ECC
django-tdd
Faz seu agente aplicar estratégias de teste para Django com pytest-django e TDD. É útil para escrever testes robustos e garantir a qualidade do código, especialmente para APIs DRF.
affaan-m/ECC