PrestaShop: scoperta una vulnerabilità di PHPUNIT

PrestaShop: scoperta una vulnerabilità di PHPUNIT

PrestaShop: scoperta una vulnerabilità di PHPUNIT

È di un paio di giorni fa la notizia secondo cui PrestaShop sarebbe vulnerabile ad un malware chiamato XsamXadoo Bot.

Questo malware potrebbe essere utilizzato per accedere ai siti web PrestaShop, sfruttando una vulnerabilità in una dipendenza utilizzata dai moduli: PHPUnit, componente di PHP che consente l’esecuzione di prove e test per sviluppatori.

La notizia arriva praticamente ad inizio 2020 con tutta la community PrestaShop che si è mobilitata per informare gli utenti di questo problema.

Chi si è registrato al sito PrestaShop avrà sicuramente ricevuto una e-mail con alcune informazioni a riguardo, compresa la procedura da eseguire per mettere in sicurezza il sito web potenzialmente vulnerabile.

Ma cerchiamo di capire bene cosa sta succedendo.

Il bot XsamXadoo ha utilizzato un nota vulnerabilità di PHPUnit, segnalata come CVE-2017-984, per l’esecuzione di codice nei server dove ci sono una o più installazioni di PrestaShop.

Il problema è stato risolto in PHPUnit 7.5.19 e 8.5.1 e a quanto dichiarato da PrestaShop, tutte le versioni precedenti sono vulnerabili.

Quali versioni PrestaShop sono afflitte da questa vulnerabilità?

I moduli distribuiti con Prestashop 1.7 ma anche alcune versioni di PrestaShop 1.6 possono essere afflitte se, sui server in cui sono presenti queste installazioni, sono presenti versioni vulnerabili.

L’e-mail di PrestaShop agli utenti (con traduzione migliorata)

Ecco quindi alcuni estratti dell’e-mail di PrestaShop, in corsivo, con alcune migliorie di traduzione:

Come sapere se un sito PrestaShop è vulnerabile da CVE-2017-984

Per sapere se il tuo negozio online è vulnerabile a un attacco, questo è quello che devi fare. Se non sei a tuo agio nella manipolazione dei file sul tuo server, contatta una persona qualificata.

  1. Sul tuo server cerca nella cartella “Vendor” nella directory principale del tuo sito PrestaShop;
  2. Se la cartella Vendor contiene una cartella “phpunit”, potresti essere vulnerabile a un attacco esterno;
  3. Puoi semplicemente eliminare la cartella “phpunit” e il suo contenuto.

Dopo aver controllato la cartella principale, ripeti gli stessi passaggi all’interno di tutte le cartelle dei moduli:

    1. In ogni cartella di un modulo, verifica se esiste una cartella “Vendor”;
    2. All’interno della directory “Vendor” di ciascun modulo, verifica se esiste una cartella “phpunit”;
    3. Se la directory (o cartella) di un modulo contiene la directory/cartella “phpunit”, questo modulo può renderti vulnerabile a un attacco esterno;
    4. Puoi semplicemente eliminare la cartella “phpunit” e il suo contenuto.

Controlla di nuovo che nessuna directory “Vendor” contenga una directory “phpunit”.

PrestaShop inoltre fa sapere che la cancellazione della directory “phpunit” di un modulo non avrà alcuna conseguenza sul funzionamento del modulo stesso.

Questo semplice passaggio proteggerà il sito PrestaShop da questa vulnerabilità, ma è bene ricordare che il sito potrebbe già esser stato compromesso.

Se nel sito non si trovano moduli che hanno al loro interno directory chiamate phpunit, il sito web non è vulnerabile e afflitto da questa problematica.

Cosa fare in caso di sito compromesso

PrestaShop ha dichiarato che se ci troviamo davanti ad un sito compromesso, quello che bisogna fare è controllare alcuni file come ad esempio AdminLoginController.php visto che, di solito, sono queste tipologie di file ad essere presi di mira dai malintenzionati; inoltre, la community ha rilasciato una piccola lista di file dannosi che potrebbero indicare un sito web compromesso:

Nome del file md5
XsamXadoo_Bot.php 0890e346482060a1c7d2ee33c2ee0415 o
b2abcadb37fdf9fb666f10c18a9d30ee
XsamXadoo_deface.php 05fb708c3820d41c95e34f0a243b395e
0x666.php edec4c4185ac2bdb239cdf6e970652e3
f.php 45245b40556d339d498aa0570a919845

PrestaShop: elenco dei file modificati

Un’altra cosa da controllare, grazie al backoffice di PrestaShop, è la sezione “Elenco dei file modificati” nella parte inferiore della pagina su “Parametri avanzati e Informazioni”.

Qui c’è la lista degli ultimi file modificati ma chiaramente, se il sito è già stato compromesso, si sarà comunque costretti a controllare manualmente questi file.

A seguire l’iter da seguire secondo quanto scritto da PrestaShop:

  • Controllare attentamente che il malintenzionato non abbia lasciato alcun file sul server, ad esempio nascosti tra i file del negozio;
  • Considera la possibilità di chiedere a tutti gli utenti del negozio/sito e-commerce di modificare la password, inclusi gli utenti del back office ma anche gli account clienti ed assicurati che nessun file compromesso sia ancora presente nel sito web e-commerce.

Una stringa Shell può venire in nostro aiuto

Ora cerchiamo di dare una mano anche a chi è un po’ più esperto con stringhe di comando e codici vari, fermo restando che se chiunque di voi non abbia un minimo di esperienza con accessi FTP o Shell, è bene sempre rivolgersi a dei sistemisti o esperti in questo campo.

Se state lavorando su un server Linux, potrete utilizzare la stringa seguente per rimuovere le directory “phpunit” nella nostra installazione PrestaShop, ma occhio ai permessi dell’utente che state utilizzando:

find . -type d -name "phpunit" -exec rm -rf {} \;

Ovviamente, come descritto anche dalla e-mail di PrestaShop è possibile, come alternativa, eliminare manualmente le cartelle “phpunit” tramite il servizio FTP.

Moduli afflitti da XsamXadoo Bot

PrestaShop fa sapere poi che ci sono già alcuni moduli che sicuramente sono stati compromessi dal bug PHPUnit, anche chiamato XsamXadoo Bot,  quindi attenzione se state utilizzando i moduli di questa lista:

  • OneClick Upgrade (Aggiornamento in 1 click) – Versioni 4.x
  • Cart Abandonment Pro (Carrelli Abbandonati) – Versione 2.0.1 e Versione 2.0.2
  • PS Checkout (Prestashop Checkout) – Versione 1.0.8 e Versione 1.0.9
  • Faceted Search (Ricerca per Aspetti) – Versione 3.0.0

Conclusioni

Al momento sono poche le notizie che riguardano questa problematica, anche se reputiamo che PrestaShop sia stata molto veloce ad informare gli utenti con tanto di e-mail diretta a chi si è iscritto anche solo per poter scaricare la suite dal sito principale.

È giusto poi menzionare anche la prima persona che si è accorta di questa problematica e che l’ha segnalata velocemente: Francis Ladeuil.

Noi di FlameNetworks continueremo a tenere d’occhio questa problematica e a farvi sapere, con nuovi articoli, se ci fossero degli aggiornamenti a riguardo.

Fonte (parziale)

Rispondi all'articolo

L'indirizzo email non verrà pubblicato. I campi obbligatori sono contrassegnati *

Time limit is exhausted. Please reload the CAPTCHA.