Trilhas de auditoria: logs de segurança para investigação e compliance
Quando algo dá errado em segurança, a primeira pergunta é sempre a mesma: o que exatamente aconteceu, quem fez, quando e a partir de onde? A qualidade da resposta depende inteiramente do que foi registrado antes do incidente. Uma trilha de auditoria bem construída é a diferença entre reconstruir os fatos com precisão e ficar no escuro tentando adivinhar. Ela é, ao mesmo tempo, ferramenta de investigação, requisito de conformidade e, muitas vezes, a única prova objetiva de que uma ação ocorreu.
É importante situar a trilha de auditoria em relação a temas vizinhos. A observabilidade cuida da saúde do sistema, respondendo a "está funcionando bem?" com métricas, traces e logs operacionais. A resposta a incidentes cuida do que fazer quando o ataque acontece. A trilha de auditoria tem um propósito distinto: registrar, de forma confiável e duradoura, quem fez o quê, com integridade suficiente para servir de evidência. Este guia trata especificamente disso: o que registrar, como proteger o registro contra adulteração, por quanto tempo guardar e como preservar a cadeia de custódia.
O que registrar: os eventos que importam
Registrar tudo é tão inútil quanto registrar nada: o excesso de ruído esconde o sinal e estoura custos. Uma trilha de auditoria eficaz foca em eventos relevantes para a segurança, aqueles que respondem a perguntas de investigação e conformidade. Os principais:
- Autenticação: logins bem-sucedidos e, principalmente, os que falharam; logout; uso de MFA; bloqueios de conta.
- Autorização: acessos concedidos e, sobretudo, negados a recursos sensíveis. Uma sequência de acessos negados é um sinal clássico de sondagem.
- Ações privilegiadas: tudo o que um administrador faz; criação, alteração e remoção de usuários e permissões; mudanças de configuração de segurança.
- Acesso a dados sensíveis: quem leu, exportou ou alterou dados pessoais ou críticos.
- Eventos de sistema relevantes: desativação de logging, alterações em regras de segurança, uso de contas de serviço.
Para cada evento, o registro precisa responder às perguntas essenciais: quem (identidade), o quê (ação), quando (timestamp preciso e sincronizado), onde (origem, IP, dispositivo) e resultado (sucesso ou falha). Um detalhe que quase todos erram e que arruína investigações: nunca registre dados sensíveis no próprio log. Senhas, tokens e números completos de cartão jamais devem aparecer na trilha, sob risco de o log virar a própria fonte de vazamento.
Imutabilidade e tamper-evidence: o log tem que resistir ao atacante
Aqui está o que separa uma trilha de auditoria de um log comum. Um atacante experiente, depois de comprometer um ambiente, tenta apagar ou adulterar os registros para esconder seus rastros. Se os logs podem ser modificados por quem tem acesso ao sistema, eles não servem como evidência confiável. Por isso, duas propriedades são inegociáveis:
- Imutabilidade (write once, read many): uma vez escrito, o registro não pode ser alterado nem apagado durante o período de retenção. Armazenamento com object lock ou WORM garante isso, mesmo contra um administrador comprometido.
- Tamper-evidence: mesmo que não se possa impedir toda adulteração, é preciso ser capaz de detectá-la. Técnicas como encadeamento de hashes (cada registro assina o anterior, formando uma cadeia) tornam qualquer alteração visível, porque ela quebraria a cadeia.
A prática que sustenta tudo isso é a centralização: os logs devem sair rapidamente do sistema que os gera e ir para um repositório central, isolado e com acesso restrito. Um log que fica apenas na máquina comprometida é um log que o atacante controla. Centralizar em um destino que a aplicação só pode escrever, nunca apagar, é o que garante que a evidência sobreviva ao incidente.
Comparando os níveis de proteção do registro
| Nível | Característica | Vale como evidência? |
|---|---|---|
| Log local editável | Fica na máquina, pode ser alterado | Não, atacante controla |
| Log centralizado | Sai da origem para repositório central | Melhor, mas depende do controle de acesso |
| Log imutável (WORM) | Não pode ser alterado nem apagado | Sim, resiste a adulteração |
| Log imutável + tamper-evidence | Imutável e com adulteração detectável | Sim, o padrão para forense e compliance |
Retenção e a LGPD: quanto tempo guardar
Definir o período de retenção dos logs equilibra duas forças opostas. De um lado, investigações de incidentes e exigências de conformidade pedem histórico suficiente; muitos ataques só são descobertos meses depois, e um log curto demais deixa o período crítico sem cobertura. De outro, guardar tudo para sempre aumenta custo e, no caso de logs que contêm dados pessoais, cria passivo sob a LGPD.
Alguns princípios para acertar o equilíbrio:
- Defina retenção por tipo de log, conforme exigências legais, contratuais e de negócio. Frameworks e contratos costumam indicar mínimos.
- Lembre que logs frequentemente contêm dados pessoais (IP, identificador de usuário, geolocalização). Sob a LGPD, isso significa que a trilha entra no escopo de proteção de dados: acesso restrito, finalidade definida e retenção proporcional.
- Trate a própria trilha como um ativo sensível: ela concentra um retrato detalhado de quem fez o quê. Um vazamento de logs é, por si só, um incidente sério.
- Automatize o descarte ao fim do período, de forma segura e auditável, para não acumular passivo indefinidamente.
A trilha de auditoria, portanto, precisa ser desenhada com privacidade em mente: registrar o suficiente para investigar, sem transformar o log em um repositório desprotegido de dados pessoais.
Cadeia de custódia: quando o log vira prova
Se um incidente pode ter desdobramentos legais ou disciplinares, os registros deixam de ser apenas técnicos e passam a ser evidência. E evidência só tem valor se a sua integridade puder ser comprovada do começo ao fim. É o conceito de cadeia de custódia: a documentação de quem coletou, quando, como foi preservado e quem teve acesso, sem quebra, desde a origem até o uso.
Na prática, sustentar a cadeia de custódia exige:
- Integridade demonstrável: hashes e assinaturas que provem que a evidência não foi alterada desde a coleta.
- Timestamps confiáveis e sincronizados: relógios alinhados por NTP, para que a linha do tempo dos eventos seja coerente entre sistemas. Uma investigação depende de saber a ordem exata dos fatos.
- Registro de acesso à própria evidência: quem consultou os logs preservados também precisa ser registrado.
- Preservação isolada: a cópia usada como prova é mantida separada, imutável e com acesso controlado.
Sem cadeia de custódia, um registro tecnicamente correto pode ser contestado e perder valor probatório. Com ela, a trilha de auditoria se torna uma narrativa dos fatos que se sustenta sob escrutínio.
A trilha que você constrói hoje é a resposta que você terá amanhã
Ninguém sente falta de uma boa trilha de auditoria até o dia em que precisa reconstruir exatamente o que aconteceu, e aí a falta é irreparável, porque não se registra o passado retroativamente. Uma trilha bem projetada registra os eventos certos, resiste à adulteração por ser imutável e detectável, guarda pelo tempo adequado sem virar passivo de privacidade, e preserva a cadeia de custódia para valer como prova. É um investimento silencioso que só mostra seu valor na hora da crise, e é justamente por isso que precisa estar pronto antes dela.
Na ConstructorTI, ajudamos organizações a construir trilhas de auditoria que sustentam investigação e compliance: definição dos eventos a registrar, arquitetura de centralização com logs imutáveis e tamper-evidence, política de retenção alinhada à LGPD e desenho de processos de preservação e cadeia de custódia. Se você não tem certeza de que conseguiria provar o que aconteceu após um incidente, converse com o nosso time de CyberSecurity e construa essa capacidade antes de precisar dela.