File autoeseguibili

6

Sono sempre stato curioso di capire come i virus svolgono le loro attività. Per questo motivo, ho letto molti libri e articoli su diversi tipi di virus e sul loro modo di operare in un sistema. Una cosa che non ho mai trovato da nessuna parte e di cui sono davvero curioso è questa:

Per esempio, diciamo che ho sviluppato con successo un virus e l'ho fatto penetrare in un sistema. In questo momento, come quel virus specifico può iniziare il suo lavoro. Si lanciano automaticamente se stessi senza che l'utente sia coinvolto? Voglio dire che un evento richiede di essere innescato per sparare un'azione se il virus viene copiato nel disco rigido. Ciò che lo fa correre e portare a termine il suo dovere malvagio senza nemmeno doppio clic (avviato esplicitamente).

Ho scoperto che in Linux può essere fatto scrivendo alcuni script, ma quando si tratta di Windows, non è possibile farlo. Sarebbe apprezzato un approfondimento su quanto sopra.

    
posta First Last 07.09.2013 - 15:13
fonte

3 risposte

6

(Questa è una descrizione non tecnica dell'intero processo.) Sentitevi liberi di commentare e chiedere)

Il meccanismo in pratica è lo stesso in tutti i sistemi e ha molto a che fare con il fatto che queste cose sono chiamate virus invece di, batteri .

Un virus non è "vivo" in quanto manca di un meccanismo essenziale. Quello che fa è dirottare il meccanismo di un'entità più complessa come una cella, e fargli fare le sue offerte - il virus potrebbe essere nient'altro che un meccanismo di dirottamento con la lista di "offerte" come payload .

Un virus informatico è molto simile a questa semplice struttura.

Come funziona il dirottamento?

Un sistema informatico deve avere una sequenza di avvio - prima fai questo, poi lo fai, ulteriori istruzioni sono qui , quindi ... - e un < em> sequenza di azioni (utilizzata per avviare i programmi).

Ad esempio, quando si tenta di eseguire un file eseguibile, il sistema apre il file, rileva ciò di cui ha bisogno (e si lamenta se non è in grado di soddisfare tali esigenze - ad esempio "biblioteca mancante"), scopre come posizionare tutti i componenti contenuti nel file .exe in memoria, determina dove farlo, aggiorna i componenti con informazioni reciproche in modo che possano comunicare, decomprima i componenti e li colloca nelle posizioni preparate in memoria, e alla fine rilascia un misura del controllo sul componente marcato "prima".

Il virus dirotta questo processo di (due esempi):

  • individuare l'elenco dei luoghi in cui verrà attivato il codice eseguibile (MBR, settore di avvio, caricatore del sistema operativo, stub del sistema operativo, script di autoesecuzione, processi di avvio, ...)
  • Inietti stesso in questa lista, in modo che il sistema abbia ancora una cosa da fare quando inizia, e quella cosa sta dando vita alla crisalide virale. Questo può essere fatto modificando l'elenco di cose da fare del sistema operativo o posizionandosi in un posto conveniente come la cartella auto-run o il ramo Run registry in Windows. Tutto ciò che viene posizionato verrà eseguito all'avvio.
  • o può sostituire uno dei componenti, salvandolo da qualche altra parte. Quando il sistema attiva il componente credendo che sia legit, il virus fa la sua cosa, quindi recupera anche il componente ibernato e lo attiva come se fosse il sistema. Quindi, in effetti, la sequenza è di nuovo un passo più lungo, ma "ufficialmente", dall'esterno, il numero di passaggi è invariato.

Il virus può anche scrivere se stesso all'interno delle routine di diagnostica del sistema operativo in modo che non riportino nulla fuori dall'ordinario. Questo processo può essere eseguito molto vicino all'hardware , in modo che l'infezione sia molto difficile da rilevare.

Per infettare i file eseguibili il virus fa lo stesso in un modo leggermente diverso. Può modificare il "manifest" interno del file in modo che il sistema esegua effettivamente il virus. Il virus estrae quindi dal suo "corpo" gonfiato la carcassa del processo originale e lo attiva a sua volta. L'utente vedrà il processo desiderato in esecuzione e non noterà il leggero ritardo nell'attivazione.

La disinfezione richiede la conoscenza del virus in modo che il file originale possa essere estratto dall'oggetto infetto e utilizzato per sostituirlo del tutto.

Esistono modi di nascondersi più sofisticati: molti file eseguibili hanno aree interne che sono per lo più zeri, usate come memoria temporanea di un tipo o dell'altro. Il virus si nasconde lì e fa solo una leggera modifica al file in modo che il "primo componente" da attivare non sia quello originale, ma l'area vuota in cui risiede il virus. Essendo "dentro" il file, la dimensione del file è ora invariata. Il virus, dopo aver ricevuto il controllo, si sposterà in un altro posto, azzerando nuovamente l'area (nella memoria) in cui si nascondeva, e passerà il controllo al vecchio "primo componente", che non noterà nulla di male.

    
risposta data 07.09.2013 - 15:31
fonte
0

Ogni programma è un processo nel sistema e il virus non fa eccezione. qualsiasi processo dovrebbe iniziare con un processo genitore (in Linux c'è solo un primo processo chiamato init e nessun processo può essere eseguito prima di esso). quindi un virus dovrebbe iniziare a essere eseguito dall'utente (come avviare un programma malcious) o da un altro programma nel sistema (ad esempio se qualcuno può mettere il codice in un posto dove il sistema controlla di trovare qualsiasi eseguibile ed eseguirlo come cron in Linux).

    
risposta data 07.09.2013 - 15:20
fonte
0

Questo può accadere in molti modi, ma generalmente accade quando viene eseguito il codice infetto.

Nel caso di un file eseguibile infetto, il virus verrà attivato quando viene eseguito questo eseguibile, sia perché l'utente ha fatto clic su di esso sia perché il programma è stato aggiunto a uno dei molti posti in es. Windows che può causare l'esecuzione di programmi all'avvio. Se si tratta di un virus macro in un documento di Word, il virus si attiva quando qualcuno apre il documento. Un'altra possibilità molto comune sono i virus del settore di avvio. Questi possono infettare l'MBR (Master Boot Record) del disco o il settore di avvio della partizione del sistema operativo stesso. Entrambi i settori di avvio contengono una piccola quantità di codice che viene eseguita come parte dell'avvio del sistema. Il virus può inserirsi lì (di solito il corpo principale del codice del virus sarà da qualche altra parte sul disco, quindi è solo il caricatore che viene inserito qui), quindi viene caricato come parte dell'avvio del sistema. Dato che il prossimo passo sarà in genere il caricamento degli o / s (come Windows, Linux) è necessario impostare le cose in modo che possano essere ancora attive nel mondo di O / S, ci sono molti modi per farlo, ma è al di fuori ambito della domanda.

    
risposta data 08.09.2013 - 09:32
fonte

Leggi altre domande sui tag