If an attacker can arbitrarily change the system time, which kinds of attacks allows this?
Oltre i certificati ...
RNG mal ridimensionati
Potrebbero essere in grado di sfruttare un generatore di numeri casuali scarsamente seminato. Usare time
come seme utilizzato per accadere molto prima che le migliori interfacce di numeri casuali rendessero conto che il tuo programmatore medio non può essere considerato affidabile per fornire un buon seme. Un utente malintenzionato può sfruttarlo impostando l'ora del sistema in un momento in cui il generatore di numeri casuali genererà l'output desiderato.
Ovviamente, l'attaccante può salvarsi un sacco di problemi semplicemente aspettando un momento desiderabile.
UUID
UUIDv1 e v2 dipendono entrambi dall'indirizzo MAC e dall'ora. L'indirizzo MAC può essere scoperto. Essere in grado di impostare il tempo significa che ora possono controllare quale UUID viene assegnato successivamente. Ad esempio, potrebbero essere in grado di duplicare l'UUID di un account amministrativo autonomamente. Ovviamente, UUIDv1 e v2 non sono pensati per essere secure , sono solo pensati per essere unique . Se vuoi essere sicuro e unico usi UUIDv4, ma c'è un sacco di software che usa UUIDv1 e v2 in modo inappropriato.
Lavori periodici
Molti sistemi hanno processi critici che vengono eseguiti periodicamente in determinati giorni e orari. L'utente malintenzionato può pasticciare il tempo necessario per manipolarlo.
Molti sistemi hanno finestre di manutenzione che si verificano in determinati momenti. L'autore dell'attacco può reimpostare continuamente il tempo di rimanere in questa finestra e mantenere il sistema inattivo per manutenzione.
Se è in corso un processo ad uso intensivo di risorse che si verifica periodicamente, possono compromettere il tempo in modo che più di quei processi vengano eseguiti contemporaneamente. Se il sistema non limita il numero di processi simultanei, questo può sovraccaricare il sistema.
Oppure puoi andare nella direzione opposta e reimpostare continuamente il tempo per impedire l'esecuzione di un processo di manutenzione critico.
Watchdogs
Il sistema potrebbe avere processi di watchdog che cercano troppe o troppo poche azioni in una finestra di tempo. Il watchdog può scegliere di intraprendere azioni di manutenzione automatica come riavviare macchine o interrompere i servizi . Un utente malintenzionato può manipolare il tempo per far sembrare che il tasso sia troppo alto o troppo basso per far scattare il watchdog e farlo arrestare un sistema funzionante.