Dati e programmi persistenti sovrascrivendo continuamente?

-2

Questa è una sorta di esperimento mentale correlato alla sicurezza. In una (un po 'strana) conversazione che ho avuto di recente, abbiamo avuto modo di discutere su come un file possa essere mantenuto lo stesso, anche quando gli utenti malintenzionati tentano di modificarlo. Ai fini di questa discussione, possiamo presumere che l'accesso di "attacker" al file non possa essere limitato e che il file non possa essere letto in sola lettura. Un'idea suggerita era quella di avere un programma che sovrascriveva continuamente i valori. Ciò ha sollevato la questione di cosa impedisce all'aggressore di alterare quei programmi, il che ha portato a suggerire che mi piacerebbe analizzare un po '.

L'idea è di avere alcune copie di un programma in esecuzione. Ogni programma contiene il file desiderato nel suo codice sorgente, insieme a un checksum di se stesso (incluso il file) in modo che, in teoria, possa rilevare modifiche a se stesso o ad un'altra copia di se stesso. Il programma esiste in diverse posizioni sul disco. Il programma si controlla contro il checksum e termina se c'è un disallineamento. Cerca quindi una delle altre versioni, ne controlla i valori e il checksum e, se uno di essi è sbagliato, termina quel programma e lo sovrascrive con una copia di se stesso. Quindi conta il numero di istanze del programma in esecuzione e, se è troppo piccolo, scrive un'altra copia su disco e la esegue. Nel frattempo, un'altra istanza del programma sta facendo lo stesso con questa istanza, mentre un'altra fa lo stesso con quell'istanza, e così via. L'idea è che se il file è piccolo, il programma può essere piccolo e tutto ciò avviene in tempi relativamente brevi, quindi la possibilità che un utente malintenzionato sia in grado di modificare tutte le copie, in memoria e su disco, simultaneamente, prima della mesh dei programmi rileva e sovrascrive le modifiche, è molto piccolo. (Ai fini di questa discussione, per vari motivi l'autore dell'attacco non può terminare i programmi.)

C'è un modo per cambiare quel file se hai solo accesso al disco? Supponiamo che sia un'unità condivisa, quindi puoi accedere ai file sul disco (incluso il file che stiamo cercando di proteggere e i file binari dei programmi che eseguono la protezione) ma non puoi accedere alla RAM della macchina e non puoi eseguire o interrompere i programmi in esecuzione su quella macchina (anche se è possibile eseguire qualsiasi cosa sul proprio computer). C'è un modo per modificare quel file in modo che un programma che lo legge possa ottenere in modo affidabile i valori che hai inserito e non quelli originali?

    
posta anaximander 28.08.2013 - 11:47
fonte

1 risposta

2

Quello che stai descrivendo è malware . I programmi che cercano di rimanere lì e riscrivere se stessi per "correggere" le alterazioni del legittimo proprietario sono normalmente considerati un fastidio. Il software di pulizia antivirus fa di tutto per eliminare tali focolai.

    
risposta data 28.08.2013 - 17:38
fonte

Leggi altre domande sui tag