Salta al contenuto principale


Malware come Bombe ad orologeria! La minaccia per i PLC Siemens S7 parte dal 2027


I ricercatori hanno scoperto diverse librerie nel registro pubblico NuGet contenenti codice che si attiverà nel 2027 e nel 2028. I pacchetti infetti prendono di mira tre noti motori di archiviazione dati .NET (Microsoft SQL Server, PostgreSQL e SQLite) e un componente è specificamente mascherato da libreria per funzionare con i controller Siemens S7.

Gli analisti di Socket hanno trovato nove pacchetti pubblicati dall’account shanhai666. A prima vista, le librerie sembravano funzionare normalmente: quasi tutto il codice (circa il 99%) svolgeva funzioni utili, quindi gli sviluppatori potrebbero non aver notato nulla di sospetto. Tuttavia, ogni libreria conteneva un piccolo frammento di logica dannosa, un modulo di circa 20 righe, incorporato nelle chiamate standard dell’applicazione.

La tecnica di iniezione si basa su metodi di estensione C#. Queste estensioni vengono eseguite ogni volta che viene chiamata un’operazione sul database o durante l’interazione con il PLC, consentendo l’inserimento del blocco dannoso nel flusso di esecuzione senza modificare le interfacce dell’applicazione.

Internamente, viene verificata la data di sistema: se rientra in un intervallo strettamente definito (dall’8 agosto 2027 al 29 novembre 2028), viene avviato un generatore di numeri casuali compreso tra 1 e 100. Se il valore è superiore a 80 (circa il 20% dei casi), viene chiamato Process.GetCurrentProcess().Kill(), che termina immediatamente il processo corrente.

Per le applicazioni server e i servizi con transazioni frequenti, questo comportamento si traduce in improvvisi guasti del servizio e interruzioni nell’elaborazione delle richieste. Nei sistemi industriali, una logica simile può interrompere la comunicazione con le apparecchiature e disabilitare i nodi di controllo critici.

Un rischio separato è rappresentato dal pacchetto Sharp7Extend, che si spaccia per un’estensione della popolare libreria Sharp7, una soluzione .NET per la comunicazione con i PLC Siemens S7 . L’aggressore ha deliberatamente utilizzato un nome simile, sperando che gli sviluppatori lo trovassero durante la ricerca di “miglioramenti” per Sharp7. Questa libreria sostitutiva implementa due diversi metodi di attacco.

Il primo schema prevede la terminazione immediata della sessione: quando viene chiamata una funzione di transazione, nel 20% dei casi si verifica una terminazione forzata, interrompendo la comunicazione con il controller. Questa modalità è valida fino al 6 giugno 2028. Il secondo schema è più complesso: il modulo tenta di leggere un valore di configurazione inesistente, interrompendo l’inizializzazione. Viene quindi attivato un filtro di scrittura e impostato un ritardo artificiale da 30 a 90 minuti. Dopo l’intervallo specificato, i parametri in scrittura che rientrano nel filtro hanno una probabilità dell’80% di essere corrotti. Le conseguenze sono che gli attuatori non ricevono comandi, i setpoint non vengono aggiornati, i sistemi di protezione non funzionano e i parametri di processo rimangono invariati o assumono valori errati.

La combinazione di interruzione immediata del processo e danneggiamento ritardato rende l’attacco in più fasi: prima vengono interrotti il monitoraggio e la comunicazione, poi viene introdotto un errore nascosto nella logica di controllo, che si manifesta in seguito e provoca errori di sicurezza e di processo.

Al momento della pubblicazione, i ricercatori hanno notato che l’account shanhai666 ospitava inizialmente 12 pacchetti, ma solo nove includevano il payload dannoso. Dopo un massiccio download (circa 9.500), questi account e pacchetti sono stati rimossi dal catalogo. Tuttavia, il rischio permane: i progetti che hanno già accettato tali dipendenze potrebbero essere compromessi all’attivazione dei trigger.

Di seguito sono riportati alcuni consigli pratici per i team di sviluppo e gli operatori di reti industriali. Innanzitutto, esaminate immediatamente l’elenco di tutte le dipendenze e verificate la presenza dei seguenti pacchetti: SqlUnicorn.Core, SqlDbRepository, SqlLiteRepository, SqlUnicornCoreTest, SqlUnicornCore, SqlRepository, MyDbRepository, MCDbRepository e Sharp7Extend.

Se viene trovata una corrispondenza, disinstallate il componente, eseguite il rollback a una build sicura e ripristinate le applicazioni da un backup verificato. In secondo luogo, eseguite l’inventario dei download e delle build per assicurarvi che la vostra build toolchain non abbia recuperato versioni infette.

Gli autori del rapporto sottolineano che le motivazioni e le origini della campagna sono ancora sconosciute, ma l’esecuzione stessa dimostra un attacco ben congegnato alla supply chain del software. Un piccolo frammento dannoso incorporato in librerie attendibili potrebbe causare gravi interruzioni sia all’infrastruttura IT che alla produzione industriale se non vengono adottate misure urgenti per rilevare e mitigare la minaccia.

L'articolo Malware come Bombe ad orologeria! La minaccia per i PLC Siemens S7 parte dal 2027 proviene da Red Hot Cyber.

reshared this