Previene la manomissione dei registri di un servizio

2

In un servizio sensibile alla sicurezza con API REST, qual è il modo migliore per produrre log di controllo resistenti alle manomissioni?

La firma di ogni voce del registro è una possibilità, ma ciò non impedisce a un operatore malevolo di nascondere alcuni registri.

    
posta MarinaLilv 29.08.2016 - 12:02
fonte

6 risposte

2
  1. Utilizza Central Log Server: può essere semplice come cronjob per copiare i file di registro in un unico posto o utilizzare Syslog-NG per archiviare i registri nel Database. ( link )
  2. Oppure puoi usare lo strumento AIDE per assicurare l'integrità dei log. Ruota i log a frequenza in base alle dimensioni e alla criticità.

Anche qui viene data una risposta eccellente Tecniche per garantire la verificabilità dei file del registro eventi e link

    
risposta data 29.08.2016 - 13:33
fonte
1

Accedi a una macchina dedicata che non fa altro che questo e ha accesso limitato. Una macchina per scopi speciali richiede molta meno amministrazione di quella che ospita un servizio complesso, quindi poche persone dovrebbero avere accesso al server di registro.

Se hai davvero bisogno di una garanzia di integrità molto elevata, accedi a un nastro di carta. Ciò richiede l'accesso fisico per eseguire eventuali manomissioni e la cancellazione dei registri cartacei tende a lasciare prove (carta tagliata, ceneri, ...).

    
risposta data 29.08.2016 - 23:52
fonte
1

Potresti prendere in considerazione l'esecuzione del servizio di registrazione in un'enclave protetta come Intel SGX. Avere un log firmato da un root-of-trust hardware riduce il rischio che un utente malintenzionato o un intruso manchi il log.

    
risposta data 28.01.2019 - 12:08
fonte
0

La mia preferenza personale andrebbe a Open TripWire , È abbastanza abile nel monitorare l'intero filesystem per le modifiche locali.

Come hai detto tu, la distruzione dei dati è sempre un rischio, quindi forse RSync la cartella dei log su un host remoto.

    
risposta data 29.08.2016 - 12:07
fonte
0

Imposta le autorizzazioni corrette. Ad esempio, solo gli utenti di un determinato gruppo possono scrivere registri, mentre la lettura è disponibile per un altro gruppo. Archiviare i log in più posizioni in modo da poterli confrontare in seguito. Se i registri diventano grandi, archivialo e crittografali con crittografia asimmetrica e firmali.

Potresti anche un servizio online per esternalizzare tutte queste operazioni.

    
risposta data 29.08.2016 - 12:09
fonte
0

Includere un hash della voce di registro precedente per ogni voce. A seconda dei requisiti di sicurezza, un hash del log, può essere inviato alla rete bitcoin o ad un servizio di cronometraggio o similiar, per creare un "timestamp" che renderà impossibile modificare il log senza essere rilevato.

Quando si ruota, basta solo cancellare l'intero file di registro e includere tale hash all'inizio del prossimo file di registro. Al momento della rotazione del registro, è anche un ottimo momento per eseguire il timestamp effettivo, ad esempio tramite la rete bitcoin o un servizio di cronometraggio.

Sì, un consulente può cancellare o distruggere il registro, ma ciò lascerà la prova rivelatrice di essere stato fatto.

    
risposta data 29.08.2016 - 15:55
fonte

Leggi altre domande sui tag