◇ OpenCyber Academy
Graduação · Capítulo 11 · Português

Capítulo 11 — Sistemas operacionais

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

Capítulo 11 — Sistemas operacionais

Mapa da aula

Aula 11 publicada. Mapa, exemplo, EX031.

flowchart TD
  N0["11.1 Chaves no sistema operacional"]
  N1["11.2 Aleatoriedade segura"]
  N2["11.3 Cifração de disco completo"]
  N3["Síntese"]
  N0 --> N1 --> N2 --> N3
  N3 --> EX["Exemplo resolvido"]
  EX --> Q["Exercício EX031"]

Desenho lógico

flowchart LR
  N0["11.1 Chaves no sistema operacional"]
  N1["11.2 Aleatoriedade segura"]
  N2["11.3 Cifração de disco completo"]
  N3["Síntese"]
  N0 --> N1 --> N2 --> N3 --> Q["EX031"]
[11.1 Chaves no sistema operacional]
    |
    v
[11.2 Aleatoriedade segura]
    |
    v
[11.3 Cifração de disco completo]
    |
    v
[Síntese]
    |
    v
[Exemplo resolvido] --> [Exercício EX031]

Objetivos de aprendizagem

Você vai (1) explicar como os sistemas operacionais armazenam e protegem chaves; (2) usar o gerador aleatório seguro do sistema; (3) configurar com bom senso a cifração de disco completo.

11.1 Chaves no sistema operacional

Os sistemas operacionais oferecem repositórios de chaves: áreas protegidas onde as aplicações guardam chaves privadas e certificados, muitas vezes apoiadas em hardware, como um TPM (trusted platform module). Priya examina como os notebooks da equipe da Tidewell guardam os certificados usados para se conectar à wiki da equipe. A chave privada é marcada como não exportável, de modo que as aplicações podem usá-la para assinar, mas não podem copiá-la para fora. Ela aprende que esse projeto limita o dano causado por malware: um atacante pode usar a chave indevidamente enquanto está na máquina, mas não consegue levá-la para outro lugar, e remover o malware encerra o uso indevido.

11.2 Aleatoriedade segura

O sistema operacional coleta eventos imprevisíveis e oferece um gerador aleatório criptograficamente seguro. O módulo secrets do Python o usa, enquanto o módulo random não o usa e nunca deve ser usado para chaves, tokens ou salts. Priya revisa o script de um voluntário da biblioteca que gerava senhas temporárias do portal com random.choice e o substitui por secrets.choice. Ela explica que as saídas do random podem ser previstas depois de observadas em quantidade suficiente, o que permitiria a alguém adivinhar as senhas temporárias de outros leitores. O NIST SP 800-90A descreve os projetos de gerador em que os sistemas operacionais se baseiam.

11.3 Cifração de disco completo

Os notebooks da Tidewell usam cifração de disco completo, que protege os dados se um notebook for perdido enquanto está desligado. Priya confere a configuração: as chaves de recuperação ficam guardadas no sistema de gerenciamento do consórcio, e não em post-its; os notebooks exigem um PIN na inicialização, além do módulo de hardware; e o modo de suspensão é substituído pela hibernação, já que o conteúdo da memória, incluindo as chaves do disco, persiste durante a suspensão. Ela documenta que a cifração de disco completo não protege um notebook roubado enquanto está desbloqueado, de modo que o bloqueio de tela continua essencial.

Exemplo resolvido

Priya confirma as chaves não exportáveis dos notebooks, substitui random.choice por secrets.choice nas senhas temporárias e reforça a cifração de disco completo com chaves de recuperação centralizadas e PINs na inicialização.

Caso sintético. Os notebooks da Tidewell são inventados; o SP 800-90A é real.

Erros e limites

Chaves não exportáveis ainda podem ser usadas indevidamente enquanto o malware estiver rodando. A cifração de disco completo não oferece nada depois que o sistema é desbloqueado.

Exercícios

Síntese

Os sistemas operacionais protegem as chaves com repositórios não exportáveis, aleatoriedade segura e cifração de disco completo, quando configurados com cuidado.

Continue estudando — aula 11 (capítulo 11 de 40)

← Capítulo 10 · Índice das aulas · Capítulo 12 →

Continue para a próxima aula já escrita.