Prevenire / Rilevare falsificazioni di registri generati in un ambiente potenzialmente ostile

3

Ho un'applicazione che gira su qualche macchina host e genera log. Più tardi nel corso della giornata quei registri vengono trasmessi in modo sicuro alla mia macchina.

Il problema è che mentre i log vengono generati non ho alcun accesso al computer host mentre alcuni utenti hanno pieno accesso ad esso e potrebbero voler forgiare i log a loro vantaggio. C'è un modo per rilevare (o meglio ancora prevenire) tali falsi.

L'applicazione che genera il log può essere modificata per crittografare o inserire MAC nei log, ma le chiavi di crittografia / firma devono essere sulla stessa macchina. Dato che gli utenti malintenzionati potrebbero anche avere accesso al codice sorgente dell'applicazione, come faccio a proteggere quelle chiavi? O ci sono altre tecniche migliori per affrontare questo scenario.

TIA

    
posta mzzzzb 03.09.2014 - 21:18
fonte

2 risposte

1

Se esegui un servizio su una macchina di cui non ti fidi, genererà solo risultati di cui non puoi fidarti.

Anche se autenticate i log in qualche modo, possono comunque modificare il log, poiché hanno accesso al codice sorgente. Presumo che tu usi un linguaggio interpretato (PHP, Python, Ruby) sull'applicazione.

Un modo per avere registri protetti è quello di inviare le voci fuori sede non appena vengono generate. Scrivi i log su un file locale, ma allo stesso tempo li invii al tuo server trusted. Un servizio web sarà bello.

Non impedirà agli utenti malintenzionati di falsificare le voci di registro e di inviarle, ma renderà loro impossibile modificare i registri sul server trusted. Se si inviano i log utilizzando SSL, non possono modificare i log in tempo reale.

Successivamente puoi confrontare i registri ricevuti consolidati e i registri inviati dal servizio web per vedere se corrispondono.

    
risposta data 03.09.2014 - 21:34
fonte
1

Se si archiviano solo i registri sulla macchina, non è possibile impedire che i registri vengano modificati o eliminati. E non puoi rilevarlo in modo affidabile senza almeno un elemento fidato.

Se hai paura solo dai colleghi, puoi utilizzare servizi di hosting web dinamici gratuiti (solo google per "php mysql gratuito") come elemento attendibile e fare in modo che la workstation invii l'intero log (crittografato se vuoi / hai a) in tempo reale, o hash dei messaggi di log, a un'applicazione che hai codificato. Rendilo in un modo in cui l'applicazione memorizza da sola il tempo di ogni incidente e assegna l'applicazione solo all'accesso solo in postazione di lavoro.

    
risposta data 04.09.2014 - 00:26
fonte

Leggi altre domande sui tag