OpenCyber Academy
Técnico · Capítulo 3 · Português
Código do curso: OCA-067Capítulo 03: OCA-067-C003

Capítulo 3 — Sistemas operacionais e identidades

Ensino gratuito e aberto para quem deseja proteger pessoas e tecnologias. Não é preciso criar uma conta para estudar ou consultar as respostas.

Mapa da aula

Aula 03 publicada. Mapa, exemplo, EX007.

flowchart TD
  N0["3.1 Bibliotecas e versões"]
  N1["3.2 Certificados e repositórios de confiança"]
  N2["3.3 Manuseando chaves"]
  N3["3.4 Caso resolvido"]
  N4["3.5 Atividade prática"]
  N5["3.7 Contas de serviço e permissões"]
  N6["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6
  N6 --> EX["Exemplo resolvido"]
  EX --> Q["Exercício EX007"]

Desenho lógico

flowchart LR
  N0["3.1 Bibliotecas e versões"]
  N1["3.2 Certificados e repositórios de confiança"]
  N2["3.3 Manuseando chaves"]
  N3["3.4 Caso resolvido"]
  N4["3.5 Atividade prática"]
  N5["3.7 Contas de serviço e permissões"]
  N6["Síntese"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> Q["EX007"]
[3.1 Bibliotecas e versões]
    |
    v
[3.2 Certificados e repositórios de confiança]
    |
    v
[3.3 Manuseando chaves]
    |
    v
[3.4 Caso resolvido]
    |
    v
[3.5 Atividade prática]
    |
    v
[3.7 Contas de serviço e permissões]
    |
    v
[Síntese]
    |
    v
[Exemplo resolvido] --> [Exercício EX007]

Objetivos de aprendizagem

Você vai (1) descobrir quais bibliotecas criptográficas um sistema usa; (2) verificar as versões que importam para o suporte pós-quântico; (3) explicar como funcionam os certificados e os repositórios de confiança num servidor; e (4) manusear chaves com segurança.

3.1 Bibliotecas e versões

A maioria dos serviços Linux usa o OpenSSL; o OpenSSL 3.5 acrescentou ML-KEM, ML-DSA e SLH-DSA e oferece X25519MLKEM768 por padrão no TLS (OpenSSL 3.5 NEWS). Verifique com openssl version. Os contêineres carregam as suas próprias bibliotecas, então verifique dentro deles também. Aplicações escritas em Go ou Java usam as suas próprias pilhas TLS; registre a versão do runtime. A versão do OpenSSH é mostrada por ssh -V.

Registre cada versão encontrada com a data e o comando usado. Anote os contêineres separadamente.

3.2 Certificados e repositórios de confiança

Um certificado de servidor é assinado por uma autoridade certificadora (AC). Os clientes confiam em certificados que se encadeiam até uma raiz no seu repositório de confiança. O sistema operacional tem um repositório de confiança; o Java e algumas aplicações têm o seu próprio. Os certificados pós-quânticos vão exigir que novas raízes sejam acrescentadas a todos os repositórios de confiança relevantes antes que os servidores os usem.

No HHG, o runtime Java do servidor do PMS tem o seu próprio repositório de confiança, então uma nova raiz precisaria ser acrescentada ali, além do sistema operacional. Liste todos os repositórios de confiança de um servidor antes de qualquer mudança de certificado e registre quem pode atualizar cada um.

3.3 Manuseando chaves

As chaves privadas devem ficar em arquivos protegidos, legíveis apenas pela conta de serviço, ou, melhor ainda, em módulos de hardware ou serviços de gerenciamento de chaves. Nunca cole chaves em tickets, chats ou logs. Se você encontrar uma chave privada exposta, pare e comunique pelo processo da sua organização; não a copie nem a teste.

Ao diagnosticar problemas, verifique permissões e caminhos em vez de ler o conteúdo das chaves. Se uma tarefa parecer exigir a própria chave, pare e pergunte ao seu supervisor, já que isso costuma ser sinal de que a tarefa foi mal formulada. Registre na sua evidência que as chaves não foram copiadas.

3.4 Caso resolvido

O operador verifica o servidor de troca de arquivos do HHG: openssl version mostra 3.0.x (sem ML-KEM); ssh -V mostra uma versão do OpenSSH anterior à que introduziu mlkem768x25519-sha256. Conclusão: são necessárias atualizações tanto do TLS quanto do SSH antes que a troca de chaves híbrida seja possível. O servidor do PMS roda uma aplicação Java com a sua própria pilha TLS; a versão do runtime entra no inventário para que o fornecedor confirme o suporte.

Anote a evidência por trás de cada conclusão: a saída dos comandos no servidor de troca de arquivos e a versão do runtime no servidor do PMS. O item do Java não pode ser resolvido apenas pelas operações do HHG, então vira uma pergunta ao fornecedor, com data.

3.5 Atividade prática

Numa VM de laboratório, registre as versões do OpenSSL e do OpenSSH, liste os repositórios de confiança presentes e verifique as permissões de um arquivo de chave privada de teste.

Escreva cada resultado com o comando e a sua saída, e anote quais versões suportam algoritmos pós-quânticos. Verifique as permissões com ls -l e confirme que apenas a conta de serviço consegue ler o arquivo da chave. Se houver um contêiner em execução, verifique dentro dele também. Não abra nem copie o arquivo da chave. Compare as suas constatações com o servidor de troca de arquivos do caso resolvido e diga quais atualizações a sua VM precisaria.

3.6 Erros comuns e limites

Cada erro deixa uma lacuna. Os contêineres carregam as suas próprias bibliotecas, então uma atualização do host pode deixar o próprio serviço inalterado. Acrescentar uma nova raiz apenas ao repositório do sistema operacional quebra aplicações como o PMS do HHG, baseado em Java, que usam o seu próprio repositório. Copiar chaves durante o diagnóstico cria cópias que precisam ser encontradas e destruídas, e pode contar como incidente de segurança. Confira as suas anotações em relação a cada um antes de encerrar uma tarefa.

3.7 Contas de serviço e permissões

Os serviços devem rodar sob as suas próprias contas, com acesso apenas às suas próprias chaves e configuração. Quando você atualizar uma biblioteca para obter suporte pós-quântico, verifique se a atualização não redefiniu o dono ou as permissões dos arquivos de chave — os scripts dos pacotes às vezes fazem isso. Um ls -l rápido no diretório das chaves antes e depois da mudança, salvo com a sua evidência, mostra que nada foi afrouxado.

Guarde as listagens de antes e depois com o ticket de mudança. Se as permissões mudaram, restaure-as antes de fechar o ticket.

Exercícios

Síntese

As versões das bibliotecas e dos runtimes determinam se os serviços podem usar algoritmos pós-quânticos; os certificados dependem de repositórios de confiança que precisam ser atualizados primeiro; as chaves são manuseadas com cuidado rigoroso.

Respostas comentadas

EX007. openssl version (no host e dentro dos contêineres), ssh -V e a versão do runtime da aplicação (Java/Go) ou o SBOM da imagem do contêiner.

EX008. Repositório de confiança do sistema operacional; truststore do Java; pacotes de AC da aplicação ou do contêiner (também as listas de confiança dos appliances).

EX009. Parar; não abrir, copiar nem testar a chave; comunicar imediatamente pelo processo de segurança; registrar onde e quando a viu.