La vulnerabilità del plug-in del bundle widget SiteOrigin di WordPress colpisce oltre 600.000 siti
Il plug-in WordPress SiteOrigin Widgets Bundle con oltre 600.000 installazioni ha corretto una vulnerabilità XSS (cross-site scripting) archiviata autenticata che potrebbe consentire agli aggressori di caricare file arbitrari ed esporre i visitatori del sito a script dannosi.
Plugin del pacchetto widget SiteOrigin
Il plug-in SiteOrigins Widgets, con oltre 600.000 installazioni attive, offre un modo per aggiungere facilmente una moltitudine di funzioni widget come slider, caroselli, mappe, modificare il modo in cui vengono visualizzati i post del blog e altri utili elementi della pagina web.
Vulnerabilità di scripting cross-site archiviata
Una vulnerabilità Cross-Site Scripting (XSS) è un difetto che consente a un hacker di iniettare (caricare) script dannosi. Nei plugin di WordPress, questo tipo di vulnerabilità deriva da difetti nel modo in cui i dati di input non vengono adeguatamente disinfettati (filtrati per dati non attendibili) e anche dalla protezione impropria dei dati di output (chiamati dati di fuga).
Questa particolare vulnerabilità XSS è chiamata Stored XSS perché l'aggressore è in grado di iniettare il codice dannoso nel server. Secondo l'organizzazione no-profit Open Worldwide Application Security Project (OWASP), la possibilità di lanciare un attacco direttamente dal sito web è particolarmente preoccupante.
OWASP descrive il XSS memorizzato minaccia:
“Questo tipo di exploit, noto come Stored XSS, è particolarmente insidioso perché l’indirizzamento causato dall’archivio dati rende più difficile identificare la minaccia e aumenta la possibilità che l’attacco colpisca più utenti. “
In un attacco XSS, in cui uno script è stato iniettato con successo, l'aggressore invia uno script dannoso a un ignaro visitatore del sito. Il browser dell'utente, poiché si fida del sito Web, esegue il file. Ciò può consentire all'aggressore di accedere a cookie, token di sessione e altri dati sensibili del sito Web.
Descrizione della vulnerabilità
La vulnerabilità è nata a causa di difetti nella sanificazione degli input e nella fuga dei dati.
La pagina degli sviluppatori di WordPress per la sicurezza spiega la sanificazione:
“La sanificazione dell'input è il processo di protezione/pulizia/filtraggio dei dati di input. La convalida è preferibile alla sanificazione perché la convalida è più specifica. Ma quando “più specifico” non è possibile, la sanificazione è la soluzione migliore.”
L'escape dei dati in un plugin WordPress è una funzione di sicurezza che filtra l'output indesiderato.
Entrambe queste funzioni necessitavano di miglioramenti nel plugin SiteOrigins Widgets Bundle.
Wordfence ha descritto la vulnerabilità:
“Il plug-in SiteOrigin Widgets Bundle per WordPress è vulnerabile allo Stored Cross-Site Scripting tramite il parametro onclick in tutte le versioni fino alla 1.58.3 inclusa a causa di un'insufficiente sanificazione dell'input e dell'escape dell'output.”
Questa vulnerabilità richiede l'autenticazione prima di poter essere eseguita, il che significa che l'aggressore necessita almeno di un accesso a livello di collaboratore per poter lanciare un attacco.
Azione raccomandata:
Alla vulnerabilità è stato assegnato un livello di gravità CVSS medio, con un punteggio di 6,4/10. Gli utenti del plugin dovrebbero prendere in considerazione l'aggiornamento alla versione più recente, ovvero la versione 1.58.5, sebbene la vulnerabilità sia stata corretta nella versione 1.58.4.
Leggi l'avviso sulla vulnerabilità di Wordfence:
Pacchetto widget SiteOrigin <= 1.58.3 – Scripting cross-site archiviato autenticato (collaboratore+)