◇ OpenCyber Academy
Engenharia · Capítulo 12 · Português

Capítulo 12 — 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 12 — Sistemas operacionais

Mapa da aula

Aula 12 publicada. Mapa, exemplo, EX034.

flowchart TD
  N0["12.1 Processos e usuários"]
  N1["12.2 Sistemas de arquivos"]
  N2["12.3 Artefatos de atividade do usuário"]
  N3["12.4 Logging"]
  N4["12.5 Sistemas ligados mudam"]
  N5["12.6 Virtualização"]
  N6["12.7 Privilégio"]
  N7["Tarefas agendadas e serviços"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7
  N7 --> EX["Exemplo resolvido"]
  EX --> Q["Exercício EX034"]

Desenho lógico

flowchart LR
  N0["12.1 Processos e usuários"]
  N1["12.2 Sistemas de arquivos"]
  N2["12.3 Artefatos de atividade do usuário"]
  N3["12.4 Logging"]
  N4["12.5 Sistemas ligados mudam"]
  N5["12.6 Virtualização"]
  N6["12.7 Privilégio"]
  N7["Tarefas agendadas e serviços"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7 --> Q["EX034"]
[12.1 Processos e usuários]
    |
    v
[12.2 Sistemas de arquivos]
    |
    v
[12.3 Artefatos de atividade do usuário]
    |
    v
[12.4 Logging]
    |
    v
[12.5 Sistemas ligados mudam]
    |
    v
[12.6 Virtualização]
    |
    v
[12.7 Privilégio]
    |
    v
[Tarefas agendadas e serviços]
    |
    v
[Exemplo resolvido] --> [Exercício EX034]

Objetivos de aprendizagem

Você vai (1) explicar processos, usuários e sistemas de arquivos; (2) identificar artefatos do sistema operacional ligados à atividade do usuário; (3) entender o logging; (4) explicar por que sistemas ligados mudam.

12.1 Processos e usuários

Um sistema operacional executa processos em nome de contas de usuário. As listas de processos, as relações entre pai e filho e as contas proprietárias mostram o que foi executado e sob a autoridade de quem. Uma árvore de processos em que um processador de texto inicia um shell de comandos, que por sua vez inicia uma ferramenta de rede, conta uma história muito diferente da do mesmo shell iniciado pelo console de um administrador. A conta proprietária diz de quem eram as credenciais em uso, não quem estava ao teclado. Priya registra, para cada item, o ID do processo, o ID do pai, a hora de início, a linha de comando e a conta, porque os IDs de processo são reutilizados e precisam dos outros campos para identificar um processo.

12.2 Sistemas de arquivos

Sistemas de arquivos como NTFS, ext4 e APFS armazenam os metadados — nomes, tamanhos, carimbos de tempo, permissões — separadamente do conteúdo. Carrier (2005) organiza a análise em categorias: sistema de arquivos, conteúdo, metadados, nome de arquivo e aplicação. As categorias ajudam a manter a análise organizada. Os dados do sistema de arquivos descrevem a disposição do volume, os metadados descrevem os atributos de cada arquivo, os dados de nome de arquivo ligam nomes a metadados, o conteúdo é o próprio dado, e os dados de aplicação são o significado que um programa dá aos seus arquivos. Um arquivo apagado pode perder sua entrada de nome enquanto seus metadados e seu conteúdo sobrevivem, e é por isso que as ferramentas de recuperação trabalham em mais de uma categoria.

12.3 Artefatos de atividade do usuário

O Windows mantém registros como o registry, os arquivos de prefetch e as jump lists; o macOS e o Linux mantêm seus próprios logs e históricos. Cada artefato tem regras de criação específicas que os peritos precisam conhecer antes de interpretá-lo. Os arquivos de prefetch, por exemplo, sugerem que um programa foi executado e registram contagens e horários recentes de execução, mas só se o prefetch estava ativado e apenas para um histórico limitado. As jump lists registram itens usados recentemente por aplicação. As regras de cada artefato mudam entre versões do sistema operacional, por isso Priya mantém uma folha de referência que lista a versão em que cada regra foi testada e trata as versões não testadas como desconhecidas.

12.4 Logging

Os logs do sistema e de segurança registram logons, inícios de serviços e erros. Os logs fazem rotação, de modo que as entradas mais antigas desaparecem. A rotação pode apagar as entradas mais antigas quando um arquivo atinge um limite de tamanho, ou manter apenas um número definido de dias. Um servidor movimentado pode, portanto, cobrir horas, enquanto um laptop pouco usado cobre meses. A ausência de um evento significa pouco até que Priya saiba até onde o log alcança no passado. Ela registra as entradas mais antiga e mais recente de cada log que usa, para que fique claro sobre qual período ele pode falar.

12.5 Sistemas ligados mudam

Toda ação num sistema em execução — até listar arquivos — muda alguma coisa: horários de acesso, memória, logs. O NIST SP 800-86 recomenda pesar o valor da coleta ao vivo contra essas mudanças e documentá-las. Executar uma ferramenta de coleta carrega-a na memória, pode criar entradas de prefetch e pode atualizar os horários de acesso dos arquivos que ela lê. Essas mudanças costumam ser pequenas e previsíveis, e é por isso que são aceitáveis quando a alternativa é perder o conteúdo da memória. As notas do perito listam os comandos executados, sua ordem e seus horários, para que um analista posterior possa distinguir os artefatos da coleta da atividade do usuário.

12.6 Virtualização

As máquinas virtuais podem receber snapshots, o que dá uma cópia consistente do disco e, às vezes, da memória, sem tocar no sistema convidado. Um snapshot captura o disco virtual e, se solicitado, a memória num único instante, sem executar nada dentro do convidado. Os arquivos de snapshot costumam depender de um disco base, por isso ambos devem ser preservados juntos, com hashes de cada um. Os provedores de nuvem oferecem recursos semelhantes por meio de suas próprias interfaces. Priya documenta qual camada produziu cada artefato, porque os carimbos de tempo do hypervisor e os do convidado vêm de relógios diferentes.

12.7 Privilégio

As contas de administrador podem alterar logs e carimbos de tempo, por isso as evidências de atividade de alto privilégio são examinadas com cuidado quanto à consistência. Um administrador pode limpar os logs de eventos, mudar carimbos de tempo com ferramentas comuns ou desativar a auditoria. Cada ação tende a deixar inconsistências: um evento de log limpo, carimbos de tempo anteriores à criação do volume ou números de sequência que saltam. Priya procura concordância entre fontes independentes. Se um artefato discorda de vários outros, a própria discordância é um achado a relatar. Ela também verifica se a auditoria foi desligada pouco antes do período em questão, já que essa lacuna pode ser tão reveladora quanto qualquer entrada.

Tarefas agendadas e serviços

A persistência costuma aparecer como tarefas agendadas ou serviços que iniciam automaticamente. Os peritos os listam com os horários de criação e as contas proprietárias e depois conferem cada um com software conhecido antes de tratar qualquer um como suspeito; a maioria são atualizadores e drivers legítimos.

Exemplo resolvido

Uma imagem sintética do Windows mostra um programa no prefetch com um horário de última execução e um evento de logon da conta "mrios" dois minutos antes. Priya anota ambos, cita os artefatos de origem e declara que o comportamento do prefetch depende da versão e das configurações do sistema operacional, que ela registra.

Caso sintético. A imagem é inventada.

Erros e limites

O significado de um artefato depende da versão do sistema operacional; um comportamento documentado para uma versão pode não valer para outra.

Exercícios

Síntese

Saiba o que o sistema operacional registra, sob quais regras, e como suas próprias ações o alteram.

Continue estudando — capítulo 12 de 50

← Capítulo 11 (rascunho) · Índice de capítulos do curso · Capítulo 13 (rascunho) →