Un imponente attacco di tipo “supply chain” ha compromesso 93 temi e plugin per WordPress inserendo una backdoor che può dare il controllo completo dei siti ad un attaccante. In totale sono stati compromessi 40 temi e 53 plugin di AccessPress, un fornitore di prodotti per WordPress utilizzati in oltre 360.000 installazioni attive.
L’attacco è stato scoperto dai ricercatori di Jetpack, azienda che sviluppa un tool di ottimizzazione per la piattaforma WordPress, i quali si sono accorti che una backdoor php è stata aggiunta ai temi e ai plugin in questione I ricercatori ritengono che i criminali abbiano attaccato AccessPress per poi infettare altri siti.
Una backdoor per prendere il controllo completo
L’obiettivo dell’attacco è l’installazione di una webshell che l’attaccante potrà utilizzare per prendere il controllo completo del sito. Installando uno dei prodotti compromessi, l’attaccante aggiunge un nuovo file “initial.php” nella diretcory principale del tema in uso e lo include nel file “functions.php”. Questo nuovo file contiene un payload in codifica base64 che scrive la webshell nel file “./wp-includes/vars.php”. Il malware completa l’opera decodificando i dati e inserendoli nel file “vars.php”, fornendo così all’attaccante il controllo remoto sul sito “infetto”.
Secondo Jetpack l’unico modo per identificare questa minaccia è l’utilizzo di una soluzione di “File Integrity Monitoring”, ovvero un processo o una tecnologia in grado di verificare se alcuni file “core” del sistema (in questo caso l’installazione WordPress) sono stati manomessi dopo l’installazione, poiché il malware cancella il file “initial.php” con cui parte l’attacco.
I ricercatori di Sucuri (società che fornisce sistemi di sicurezza per siti) hanno analizzato il malware e ritengono che l’obiettivo dell’attacco sia reindirizzare i visitatori verso siti truffa o siti distribuiscono malware. Sotto questo profilo l’attacco non sembra molto sofisticato, tuttavia è anche possibile che gli attaccanti vendano le backdoor di accesso ai siti compromessi nel dark web, cosa che potrebbe portare a vantaggi economici più concreti e immediati.
Cosa fare?
Nel caso in cui sia stato installato un tema / plugin compromesso, la semplice rimozione del tema o del plugin non riesce a eliminare il problema e l’amministratore del sito dovrebbe fare valutazioni tecniche più approfondite per trovare segni dell’attacco come, ad esempio:
- controllare il file “vars.php” nella directory “wp-includes” attorno alle righe 146-148. Se si visualizza una funzione “wp_is_mobile_fix” con del codice nascosto (obfuscated code), il sito è compromesso
- cercare nel file system del sito “wp_is_mobile_fix” oppure “wp-theme-connect” per identificare un eventuale file infetto
- sostituire i file principali del sito WordPress con delle nuove copie
- aggiornare il plugin infetto e cambiare tema
- cambiare le password della dashboard WP e del database
Jetpack ha pubblicato una regola YARA per controllare se il sito è stato attaccato e per identificare sia il codice malevolo iniziale che la nuova webshell.
Attacco rilevato in settembre
Jetpack ha identificato l’attacco nel settembre 2021 e, poco dopo, ha verificato come i plugin gratuiti di AccessPress fossero stati tutti compromessi. Non sono stati analizzati i plugin a pagamento. La maggior parte dei prodotti sembra essere stata attaccata nei primi giorni di settembre. Ad ottobre il produttore ha rimosso le estensioni dal portale ufficiale e, il 17 gennaio 2022, ha pubblicato le nuove versioni “pulite” dei plugin.
Per quanto riguarda i temi, al momento non sono disponibili le versioni “pulite”, quindi l’unica soluzione è utilizzare un tema diverso.
Nel post di Jetpack del 18 gennaio si trova l’elenco dei temi a rischio di attacco.
(fonte: https://www.bleepingcomputer.com/news/security/over-90-wordpress-themes-plugins-backdoored-in-supply-chain-attack/)