Innanzitutto, sono d'accordo con Jeff. Collegare i sistemi in tempo reale a Internet non è una buona idea, soprattutto se sono critici.
In secondo luogo, in Deep Freeze - secondo l' articolo di Wikipedia :
Deep Freeze is a kernel-level driver that protects hard drive integrity by redirecting information being written to the hard drive or partition, leaving the original data intact.
In termini di impatto sul tuo sistema ciò significa che le scritture hanno un aspetto simile a questo:
---------------------- ---------------------
| Userland program |<-----Read--------| Kernel | |-------------------|
| e.g. explorer.exe | | |-|-------------|<---Read----| File system |
| or something else |<-----Write--| | | Deep Freeze | | | i.e. directly to |
---------------------- or read of |------| Driver | | | block device |
modified contents | |-------------- | |-------------------|
| /|\ |
-----------|---------
| Write/read changed content
\|/
----------------
| Some form of |
| temporary |
| storage |
----------------
Quindi qualsiasi modifica apportata utilizzando le routine IO standard verrà reindirizzata a una memoria temporanea. Le letture, a quanto ho capito, seguiranno anche questo se il contenuto viene modificato, altrimenti viene caricato direttamente dal file system stesso. Quando il sistema viene ricaricato, quella sezione viene dimenticata.
Quanto è efficace questo dipende dal livello di penetrazione. All'interno del kernel, se si usano le routine uncinate per scrivere file, anche le tue scritture verranno reindirizzate. Tuttavia, i kernel possono scrivere direttamente sul disco e conterranno il codice per farlo, quindi, a meno che non applichi una patch a tutto questo per rimuoverlo, è possibile scrivere su disco. L'intercettazione è probabilmente più alta di quella, soprattutto perché prenderà il 99% di tutte le chiamate e perché è affidabile.
Where can I obtain reasonably relevant boot sector viruses for testing?
Ora, il nodo del problema. La protezione da scrittura di Deep Freeze funziona solo una volta caricata. Quindi sei corretto nel presupposto che se carichi il codice prima del deep freeze le routine standard funzioneranno per te. Potresti anche caricare un filtro con una priorità maggiore, intercettare determinate scritture e persisterle prima che il deep-free le veda.
Per trovare il codice che ti consentisse di iniziare, vbootkit 2.0 era una dimostrazione di concetto (oltre a inserire se stesso non faceva molto) "bootkit" progettato per compromettere il pre boot di windows vista x64. È scomparso da internet a cercarlo questa sera, ma se riesci a trovarne una copia, questo ti darà un punto di partenza. È, tuttavia, complicato. Sto scrivendo un driver di filtro adesso (incolpare AviD) e farlo bene è difficile. Tuttavia, non conosco alcun codice che miri intenzionalmente a bloccare il deep-free.