Codefinger sfrutta chiavi AWS compromesse per crittografare i dati S3, rendendo inefficaci i metodi di ripristino tradizionali.
Si chiama Codefinger la nuova forma di ransomware identificata dai ricercatori di Vectra, che rappresenta una evoluzione degna di nota delle minacce cyber. Si tratta infatti di un ransomware cloud-native che sfrutta le chiavi AWS compromesse per colpire i bucket Amazon S3. A differenza dei ransomware tradizionali, che crittografano i file locali, Codefinger si integra direttamente nell'ambiente cloud della vittima, sfruttando funzionalità native di AWS per rendere i dati inaccessibili.
Questo approccio permette all'attaccante di bloccare i dati dell'organizzazione target senza sfruttare vulnerabilità di AWS e cifrando gli oggetti S3 mediante la Server-Side Encryption with Customer-Provided Keys (SSE-C) di AWS. Quest’ultima è una funzionalità nativa di AWS che consente agli utenti di mantenere il pieno controllo delle proprie chiavi di crittografia per la protezione dei dati archiviati su Amazon S3. Quando si sfrutta questa funzione, infatti, AWS cifra i dati usando la chiave di cifratura data dall’utente, poi la rimuove immediatamente dalla propria memoria di modo permanente.
Quello di Codefinger non è il primo caso di attacco ransomware che unisce il furto di dati, la minaccia di estorsione e tattiche avanzate di tipo cloud-native. Però si tratta del primo caso di attacco che sfrutta le funzionalità cloud-native di AWS per integrarsi direttamente nell'ambiente della vittima e rendere inefficaci i metodi di recupero dei dati.
Crediti immagine: Vectra
Le indagini sul funzionamento di questa tecnica di attacco sono ancora in corso. Per ora, i passaggi noti della catena di attacco sono quelli indicati nell'immagine qui sopra. Per l’accesso iniziale l'attaccante si serve di chiavi API AWS esposte pubblicamente o compromesse. Una volta ottenuto l’accesso, l'attaccante esplora l'ambiente, enumera i bucket S3 e scarica gli oggetti. A questo punto l’attaccante cifra i dati con chiavi di crittografia simmetrica in suo possesso, così da impedire al legittimo proprietario di recuperarli. Le vittime vengono messe ulteriormente sotto pressione dal fatto che gli attaccanti modificano i criteri del ciclo di vita degli oggetti per contrassegnare i file da eliminare. La motivazione di questi attacchi è finanziaria: tutti i passaggi sono finalizzati a spingere la vittima a pagare un riscatto, perché l’attacco rende inefficaci i metodi di ripristino tradizionali.
Le potenziali vittime sono tutte le organizzazioni che utilizzano AWS S3 per l'archiviazione dei dati critici, poiché un attacco riuscito può portare a interruzioni operative significative e perdite finanziarie.
Dato che parliamo di un attacco che non sfrutta vulnerabilità, non esiste una patch che possa impedire all’attacco di andare a buon fine. La difesa risiede nell’attuazione di misure preventive. Gli esperti di Vectra ne indicano cinque. Prima di tutto, consigliano di implementare credenziali a breve termine per ridurre il rischio di compromissione. Inoltre, per ottenere un accesso sicuro senza memorizzare le credenziali nel codice o nei file di configurazione, sarebbe meglio gestire l’accesso usando strumenti AWS come i criteri IAM (IAM Identity Center e Security Token Service). Alla luce di quanto scoperto, l’uso di SSE-C dovrebbe essere limitato.
Un altro consiglio importante è quello di abilitate il versioning e il blocco degli oggetti nei bucket S3. Il versioning impedisce la perdita permanente dei dati perché consente il ripristino delle versioni precedenti degli oggetti; il blocco degli oggetti protegge dalla sovrascrittura o dall'eliminazione di dati critici.
È consigliabile, inoltre, una gestione centralizzata delle chiavi di cifratura mediante AWS KMS (Key Management Service) e l’applicazione delle Service Control Policies (SCP) per circoscrivere l'uso di chiavi e l’attivazione di operazioni di cifratura a un elenco ristretto di utenti e applicazioni.
Non ultimo, sarebbe opportuno abilitare AWS CloudTrail con la registrazione completa del data-plane S3 per monitorare tutte le attività di bucker, configurare allarmi per le attività API insolite (per esempio la crittografia di massa), per l’attivazione di modifiche ai criteri del ciclo di vita o per l'uso non autorizzato delle regole di replica. Ulteriori dettagli tecnici sono indicati nella pagina ufficiale della ricerca.