Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Projeto] Auditando logs - Integridade dos logs

[DUVIDA][Desenvolvimento Seguro: lidando com erros e logs em uma aplicação] Não ficou bem claro para mim como funcionarioa na pratica (em produção) o script do_hash.js, primeiro é gerado o hash do arquivo original e salvo em outro arquivo dai caso uma pessoa mal intensionada altere o arquivo de log o hash vai ser diferente, até aqui blz, mas e se tiver um outro registro no arquivo de log? o hash tambem vai ser diferente mas não por ter sido alterado manualmente, então como seria essa funcionalidade de forma profissional?

2 respostas
solução!

Olá, Leonidas. Tudo bem?

A ideia principal aqui é garantir que qualquer alteração nos logs seja detectada. Quando você gera um hash do arquivo de log original, qualquer modificação, seja ela maliciosa ou não, resultará em um hash diferente.

Para lidar com o caso que você mencionou, onde novos registros legítimos são adicionados ao log, uma abordagem comum é gerar um novo hash sempre que o log é atualizado de forma legítima. Isso significa que, sempre que um novo registro é adicionado, você recalcula o hash do arquivo inteiro e o armazena novamente. Assim, você mantém a integridade do log ao mesmo tempo em que permite atualizações legítimas.

Uma prática comum é automatizar esse processo. Por exemplo, você pode configurar um script ou serviço que monitore o arquivo de log e gere um novo hash sempre que uma atualização legítima ocorrer. Isso pode ser feito usando ferramentas como inotify no Linux para detectar mudanças em arquivos ou configurando um sistema de logging que suporte essa funcionalidade nativamente.

Além disso, para garantir que o hash não seja recalculado de forma maliciosa, é importante proteger o "segredo" que você usa para gerar o hash. Como mencionado no contexto, esse segredo deve ser tratado de forma segura, similar a como você trataria variáveis de ambiente sensíveis.

Espero ter ajudado. 

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.Bons Estudos!

Excelente, muito obrigado.