OpenCyber Academy
Graduação · Capítulo 11 · Português
Código do curso: OCA-109Capítulo 11: OCA-109-C011

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.

Mapa da aula

Aula 11 publicada. Mapa, exemplo, EX031.

flowchart TD
  N0["11.1 Artefatos de execução"]
  N1["11.2 Locais de persistência"]
  N2["11.3 Logons"]
  N3["11.4 Carimbos de tempo do sistema de arquivos"]
  N4["11.5 Dependência de versão"]
  N5["11.6 Linux e macOS"]
  N6["11.7 Leitura cuidadosa"]
  N7["Artefatos de memória"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7
  N7 --> EX["Exemplo resolvido"]
  EX --> Q["Exercício EX031"]

Desenho lógico

flowchart LR
  N0["11.1 Artefatos de execução"]
  N1["11.2 Locais de persistência"]
  N2["11.3 Logons"]
  N3["11.4 Carimbos de tempo do sistema de arquivos"]
  N4["11.5 Dependência de versão"]
  N5["11.6 Linux e macOS"]
  N6["11.7 Leitura cuidadosa"]
  N7["Artefatos de memória"]
  N0 --> N1 --> N2 --> N3 --> N4 --> N5 --> N6 --> N7 --> Q["EX031"]
[11.1 Artefatos de execução]
    |
    v
[11.2 Locais de persistência]
    |
    v
[11.3 Logons]
    |
    v
[11.4 Carimbos de tempo do sistema de arquivos]
    |
    v
[11.5 Dependência de versão]
    |
    v
[11.6 Linux e macOS]
    |
    v
[11.7 Leitura cuidadosa]
    |
    v
[Artefatos de memória]
    |
    v
[Exemplo resolvido] --> [Exercício EX031]

Objetivos de aprendizagem

Você vai (1) identificar artefatos do Windows ligados à execução de programas e à persistência; (2) explicar como os registros guardam os logons; (3) ler os carimbos de tempo do sistema de arquivos; (4) entender como os artefatos dependem das versões.

11.1 Artefatos de execução

O Windows registra evidências de programas em execução em vários lugares: arquivos de prefetch (nos sistemas em que estão habilitados), registros de eventos quando a auditoria de processos está ligada, e outros registros de compatibilidade de aplicativos e de uso. Cada um tem regras sobre quando as entradas são criadas e o que significam. Como cada artefato tem regras próprias, a ausência de um não prova que um programa não rodou: o prefetch pode estar desabilitado, e a auditoria de processos pode estar desligada. Leah lista quais artefatos estavam disponíveis na ws-114 e como cada um estava configurado, e então procura o rundll32 com update.dll em cada um. A concordância entre fontes é mais forte do que qualquer uma isolada.

11.2 Locais de persistência

Chaves de execução automática (run keys) no registro, tarefas agendadas e serviços iniciam programas automaticamente. Na ws-114, uma run key apontando para o rundll32 com update.dll sugere persistência. O exemplo resolvido data a run key às 09:31:07, cerca de dezessete minutos depois do POST para a página falsa. Uma run key significa que a DLL seria carregada a cada logon daquele usuário, então remover o arquivo sem remover a chave, ou o contrário, deixa o sistema num estado inconsistente, que os respondentes devem registrar antes da limpeza.

11.3 Logons

Os registros de eventos de segurança guardam os eventos de logon, com o nome da conta, o tipo de logon e a origem. Eles mostram qual conta estava ativa e quando. O tipo de logon diz como a sessão foi criada: interativa, ao teclado; remota; ou acesso de rede a arquivos compartilhados. Na ws-114, o logon interativo de s.kaur às 08:55 mostra quem estava conectado à máquina antes de o e-mail de phishing chegar, às 09:12. Um logon remoto com a mesma conta a partir de outro lugar sugeriria o uso de credenciais roubadas depois do POST das 09:14:30.

11.4 Carimbos de tempo do sistema de arquivos

O NTFS guarda os horários de criação, de modificação, de alteração dos metadados e de acesso. Carrier (2005) explica essas estruturas em detalhe. Copiar um arquivo muitas vezes lhe dá um novo horário de criação, mas mantém o horário de modificação original. É por isso que o horário de criação de um arquivo pode ser posterior ao de modificação: o arquivo foi modificado em outro lugar e depois copiado para cá. No caso de update.dll, esse padrão seria coerente com um download que manteve o horário de modificação original do servidor do atacante. Os carimbos de tempo também podem ser alterados de propósito, por isso Leah os compara com outros registros antes de se apoiar neles.

11.5 Dependência de versão

O comportamento dos artefatos muda entre versões e configurações do Windows. Leah registra o build do sistema operacional e consulta a documentação dessa versão. Por exemplo, se o prefetch está habilitado e quantas entradas ele mantém varia entre versões e entre sistemas de desktop e de servidor. Uma afirmação baseada na documentação da versão errada pode estar errada para a ws-114. Leah escreve o número do build nas anotações e cita a versão da documentação usada, para que um revisor possa conferir as duas. Se a ws-114 for atualizada depois, as anotações ainda descrevem o sistema tal como estava quando foi examinado.

11.6 Linux e macOS

Outros sistemas têm equivalentes: históricos do shell, registros do sistema, launch agents, cron. Os princípios se mantêm; os detalhes mudam. Uma entrada do cron no Linux cumpre o mesmo papel de uma tarefa agendada do Windows, e um launch agent no macOS se parece com uma run key. Os históricos do shell podem mostrar os comandos digitados, embora possam ser desabilitados ou editados. Quando o curso passa a outros sistemas, Leah reaproveita sua lista de perguntas, como o que rodou e o que persiste, e verifica onde cada sistema registra a resposta.

11.7 Leitura cuidadosa

Um artefato mostra o que o sistema registrou segundo suas regras; interpretá-lo exige conhecer essas regras. Por exemplo, uma entrada de prefetch mostra que um programa foi carregado, mas não quem o executou nem se ele cumpriu seu propósito. Uma run key mostra uma configuração, não que a DLL tenha de fato sido carregada. O laudo de Leah separa o que o artefato registra do que ela infere a partir dele e nomeia a regra que liga os dois. Se a regra for incerta, a inferência é rotulada como tal, em vez de ser apresentada como fato.

Artefatos de memória

As capturas de memória mostram os processos em execução, as bibliotecas carregadas e as conexões de rede no momento da captura. Na ws-114, a captura lista o rundll32 com update.dll carregado, o que coincide com a run key no disco. Dois artefatos independentes apontando na mesma direção são mais fortes do que qualquer um isolado.

Exemplo resolvido

O registro de segurança sintético da ws-114 mostra que a conta "s.kaur" fez logon interativo às 08:55. Uma run key criada às 09:31:07 aponta para update.dll. Leah escreve: "No momento em que a run key foi criada, a sessão interativa pertencia à conta s.kaur; isso mostra o contexto da conta, e não que sua titular tenha criado a chave conscientemente."

Caso sintético. A conta e os registros são inventados.

Erros e limites

Alguns artefatos vêm desabilitados por padrão ou são apagados por rotinas de manutenção; a ausência é uma evidência fraca.

Exercícios

Síntese

Os artefatos do sistema operacional registram execução, persistência e logons segundo regras específicas de cada versão, que precisam ser conhecidas antes da interpretação.

Continue estudando — capítulo 11 de 40

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

Respostas comentadas

EX031. Uma chave de execução automática (run key) no registro que inicia o rundll32 com update.dll na inicialização.

EX032. A cópia geralmente recebe um novo horário de criação, mas mantém o horário de modificação original.

EX033. Mostra de qual conta era a sessão ativa quando a chave apareceu, e não que a titular da conta a tenha criado conscientemente.