Esistono diverse tipologie di malware, con diversi scopi. Quello che proveremo a creare nel seguito avrà lo scopo di localizzare i file della vittima e renderli inaccessibili tramite la crittografia. Solitamente i cracker utilizzano i CryptoLocker per prendere in ostaggio i file della vittima e renderli inaccessibili. La chiave con cui i file vengono criptati, in possesso dei cybercriminali, viene rilasciata poi solamente in cambio di un pagamento in criptovaluta. Useremo Python per creare questo semplice malware.
Lo script cerca i file nella directory corrente e popola la lista files
. Si noti che vengono esclusi i file evilquest.py
(che contiene il codice che stiamo esaminando), filechiave.key
(un file che contiene la chiave con cui verrà criptato il contenuto dei singoli file) e goodquest.py
(che conterrà il codice per decriptare i file usando la chiave contenuta in filechiave.key
).
Lo script, quando viene eseguito, dopo aver generato una chiave, cripterà tutti i file contenuti nella direcrtory corrente. Lo script seguente, invece, userà la chiave generata (e memorizzata in filechiave.key
) per decriptare i file precedentemente criptati.