Obiettivi di apprendimento
Imparare ad analizzare file di collegamento (.lnk
)
Capire come tracciare e attribuire le identità digitali nelle indagini informatiche.
Svolgimento della challenge
Partiamo accedendo al sito web tramite l'indirizzo IP generato dalla challenge. Vediamo come il sito web sia un estrattore online di video youtube in grado di fornire la traccia audio mp3 o il video mp4.
Proviamo ad inserire l'url di un video su youtube, scegliamo come prova l'estrazione dell'audio tramite file mp3 e procediamo a scaricare il file. Il sito ci fornisce un file zip che, estraendo, ha al suo interno due file
Prima di aprire/eseguire qualsiasi tipo di file verifichiamo prima il loro contenuto attraverso il comando da terminale file
e vediamo l'output.
Possiamo notare come il primo file, song.mp3 sia effettivamente un file mp3 lecito. Il secondo file invece, somg.mp3, è in realtà un file "MS Windows shortcut" noto anche come file .lnk
.
Essendo il file .lnk
dei file binari, abbiamo bisogno di tool appositi per leggerne il contenuto. In questo caso utilizziamo il tool ExifTool
per leggerne il contenuto.
Dall'output del comando possiamo osservare alcune informazioni curiose:
Il file punta ad un programma specifico, powershell
L'esecuzione di powershell avviene attraverso l'esecuzione di comandi con alcuni flag e parametri impostati:
-ep Bypass -nop
: flag impostato per disabilitare le restrizioni di PowerShell, consentendo agli script di essere eseguiti senza interferenze dalle impostazioni di sicurezza o dai profili utente.
Una volta scaricato il file viene eseguito il comando iex
, usato per eseguire il file di scripting .ps1
appena scaricato.
Visitando il link da cui viene scaricato il file possiamo notare come questo sia uno script Powershell malevolo con l'obiettivo di rubare dati, presenti sul nostro dispositivo, come portafogli crypto o credenziali web.
A questo punto possiamo procedere prendendo diverse direzioni, tra cui:
Analizzare ulteriormente il sito web alla ricerca di altre informazioni utili
Studiare il codice dello script appena scaricato
Cercare l'hash o la firma nei database pubblici di malware come VirusTotal o Any.Run
Siccome il nostro obiettivo è trovare l'autore del codice e, in questo caso, il codice contiene una firma evidente riconducibile al suo creatore, cerchiamo online (GitHub) parti uniche del codice da utilizzare per la ricerca. Più sono particolari, meglio è. Per questo scenario, abbiamo la stringa che abbiamo scoperto in precedenza che recita: "Created by the one and only M.M."
Per risalire all'autore del codice possiamo agire in diversi modi:
Analizzare l'url dello script e risalire alla repository e all'account GitHub
Ricerca per parola chiave nella ricerca di GitHub inserendo il tag del programmatore precedentemente citato. Analizzare non solo le parti in cui compare il codice ma anche Issue, Pull request, etc..
Risalendo al suo account GitHub, MM-WarevilleTHM
vediamo una repository in cui sono mostrate informazioni generali dell'account
Conclusioni
Siamo così giunti alla fine di questa prima challenge.
Questo è un classico caso di fallimento dell'OPSEC.
Nel contesto della sicurezza informatica, quando i malintenzionati non seguono le corrette pratiche OPSEC, possono lasciare tracce digitali che possono essere messe insieme per rivelare la loro identità. Alcuni errori comuni di OPSEC sono:
Riutilizzare nomi utente, indirizzi e-mail o account su più piattaforme.
Utilizzo di metadati identificabili nel codice, nei documenti o nelle immagini, che possono rivelare informazioni personali come i nomi dei dispositivi, le coordinate GPS o i timestamp.
Postare pubblicamente su forum o GitHub (come in questo scenario attuale) con dettagli che riconducono alla propria identità reale o rivelano la propria posizione o le proprie abitudini.
Il mancato utilizzo di una VPN o di un proxy durante lo svolgimento di attività dannose consente alle forze dell'ordine di tracciare il loro vero indirizzo IP.
Si potrebbe pensare che degli attaccanti malevoli abbiano come priorità assoluta l'OPSEC, ma il diavolo sta nei dettagli e chiunque può commettere errori umani.