Red Hot Cyber

La cybersecurity è condivisione.
Riconosci il rischio, combattilo, condividi le tue esperienze ed 
incentiva gli altri a fare meglio di te.

Cerca

Keylogger: Nascondere malware nelle Immagini con la Steganografia

Simone D'Agostino : 17 Giugno 2024 06:51

La sicurezza informatica è una preoccupazione fondamentale per aziende e individui.

Uno degli strumenti più controversi in questo campo è il keylogger. In questo articolo, esplorerò un caso di studio in cui ho utilizzato un keylogger per dimostrare l’importanza della sicurezza informatica. Inoltre, vedremo come la steganografia puòessere utilizzata per nascondere file all’interno delle immagini e come strumenti moderni possono anche non rivelare questi segreti nascosti.

Cos’è la Steganografia?

La steganografia è l’arte di nascondere informazioni all’interno di altri dati. A differenza della crittografia, che rende i dati illeggibili, la steganografia nasconde l’esistenza stessa dei dati. Un metodo comune consiste nell’incorporare dati all’interno di file immagine, alterando leggermente i pixel in modo che il cambiamento sia impercettibile all’occhio umano.

Caso di studio: Creazione e test di un Keylogger

Contesto

Il progetto mirava a creare un keylogger come esercizio pratico per comprendere le vulnerabilità dei sistemi informatici e l’importanza di proteggere i dati sensibili. Il keylogger è stato sviluppato e testato in un ambiente controllato per garantire un uso etico e legale.

Preparazione

Strumenti utilizzati

  • Python: Scelto per la sua semplicità e versatilità.
  • Libreria pynput: Utilizzata per monitorare gli eventi della tastiera.
  • File di log: Per memorizzare le pressioni dei tasti.

Installazione della libreria

Per prima cosa, ho installato la libreria pynput, necessaria per monitorare gli eventi della tastiera:

Creazione dello script

Ho scritto uno script Python che registra le pressioni dei tasti e le salva in un file di log.

Ecco alcune delle componenti principali utilizzate:

Inizializzazione del Listener:

from pynput………import Key, Listener

def on_press(key):

……………

Buffer per memorizzare i tasti: Utilizzato per ridurre il numero di accessi al file system.

buffer = ………

Thread per la scrittura periodica: Un thread separato per scrivere periodicamente il buffer su disco.

import threading

……..(target=buffer_writer,……………. daemon=True).start()……..

Timestamp per per ogni tasto: Aggiunta di timestamp per ogni pressione di tasto per tracciare il momento esatto in cui è stato premuto.

from ……… import datetime

timestamp = datetime.now()……..

Nascondere il Keylogger in un’immagine utilizzando la Steganografia

Per dimostrare come la steganografia può essere utilizzata per nascondere file dannosi, ho nascosto il file del keylogger all’interno di un’immagine. Ecco il processo:

Preparazione dell’immagine e del file nascosto:

Figura 1 `Zenigata.jpg

Utilizzo della Steganografia:

Utilizzando steghide, ho incorporato il file keylogger.py nell’immagine Zenigata.jpg.

Figura 2 immagine dello script del file incorporato

Questo strumento modifica leggermente i pixel dell’immagine per nascondere il file in modo che il cambiamento sia impercettibile.

steghide embed -cf Zenigata.jpg -ef key1.py

Verifica del Contenuto Nascosto

Per verificare che il file sia stato correttamente nascosto ho utilizziato steghide info

Figura 3 Il virus è regolarmente nascosto nell’immagine

Estrazione del file nascosto:

Per estrarre il file nascosto, ho utilizziato:

steghide ………. -sf Zenigata.jpg

Test

Il keylogger è stato testato su un computer personale in un ambiente controllato. Ecco come ho eseguito il test:

Esecuzione dello Script: Ho eseguito lo script Python sul mio computer.

  • Simulazione di utilizzo normale: Durante il test, ho utilizzato il computer normalmente, digitando vari testi e password per verificare la registrazione delle pressioni dei tasti.
  • Verifica del File di Log: Al termine del test, ho esaminato il file di log generato dal keylogger. Il file conteneva tutte le pressioni dei tasti registrate, complete di timestamp.

Il file inizialmente rilevato come virus, una volta steganografato diventa impercettibile agli antivirus (controllo su VirusTotal)

Figura 4 il File non steganografato è rilevato dall’antivirus
Figura 5 il file steganografato non viene più rilevato (VirusTotal)

Risultati

Il test ha dimostrato che il keylogger era in grado di registrare accuratamente le pressioni dei tasti, inclusi dati sensibili come password e messaggi privati. Questo ha evidenziato quanto sia importante implementare misure di sicurezza adeguate per proteggere i sistemi informatici.

Figura 6 digitazione di credenziali fittizie
Figura 7 password rilevata

Rilevamento di contenuti nascosti

Rilevare la presenza di dati nascosti non è semplice e richiede strumenti specifici. Alcuni dei più utilizzati sono:

  • VirusTotal: Un servizio che analizza file sospetti e URL per rilevare malware e altri tipi di contenuti (in questo caso non ha rilevato il virus)
  • StegExpose: Un tool di analisi steganografica che rileva contenuti nascosti in immagini.
  • Binwalk: Un analizzatore di file binari che può estrarre dati nascosti.

Conclusioni

Questo esercizio ha fornito una lezione pratica sull’importanza della sicurezza informatica. È cruciale che gli strumenti come i keylogger siano utilizzati solo in modo etico e legale, con il consenso esplicito di tutte le parti coinvolte. Educare gli studenti e i professionisti sui rischi associati ai keylogger e sulle strategie per mitigare tali rischi è essenziale per sviluppare una cultura della sicurezza informatica solida e consapevole.

NOTA

Questo articolo è progettato per essere informativo, con un focus sulle applicazioni e sulle implicazioni della steganografia. Assicuriamoci di utilizzare sempre queste tecniche in modo responsabile e legale. Parte del codice è stato modificato per ragioni di sicurezza.

Simone D'agostino
Nato a Roma, con oltre 30 anni in Polizia di Stato, oggi è Sostituto Commissario alla SOSC Polizia Postale Udine. Esperto in indagini web e dark web, è appassionato di OSInt, che ha insegnato alla Scuola Allievi Agenti di Trieste. Ha conseguito un Master in Intelligence & ICT all'Università di Udine (110 e lode), sviluppando quattro modelli IA per contrastare le frodi su fondi UE. È impegnato nella formazione per elevare la sicurezza cibernetica.