Avviso di sicurezza Blog Floating Button
Se hai ricevuto una mia email che rimanda a questa pagina, è perché il tuo sito sembra
utilizzare una versione di Blog Floating Button (il plugin WordPress di
sunhaengsa / kuma-chan, che nei tuoi file si trova in
/wp-content/plugins/blog-floating-button/) che rientra nell’intervallo interessato da un
problema di sicurezza noto. Questa pagina spiega qual è il problema, come verificare quale
versione hai, come aggiornare e cosa fare dopo.
Il problema è CVE-2026-15383, una vulnerabilità di cross-site scripting memorizzato sfruttabile senza autenticazione nella funzione di tracciamento dei clic e di reportistica del plugin. Interessa tutti i rilasci precedenti alla 1.4.21 ed è corretta nella 1.4.21, pubblicata il 31 luglio 2026. Se utilizzi qualsiasi versione più vecchia della 1.4.21, aggiorna Blog Floating Button alla 1.4.21 o successiva.
Una cosa da chiarire, perché differisce da altri avvisi che ho inviato: non esiste una versione più vecchia che sia sicura. Non è un difetto introdotto a un certo punto nella storia del plugin e poi corretto. La protezione mancante era assente in ogni rilascio mai pubblicato dal plugin, fino alla 1.4.20 compresa, quindi «la mia installazione è troppo vecchia per essere interessata» qui non è una via d’uscita. Le uniche versioni non interessate sono la 1.4.21 e le successive.
Questo avviso inoltre non dipende da come è configurato il tuo sito. Non c’è alcuna impostazione che debba essere attivata perché il codice interessato sia presente.
Si tratta di un difetto del plugin, non del core di WordPress. Un WordPress perfettamente aggiornato non ti protegge se il plugin Blog Floating Button è su una versione interessata.
Questo messaggio è legittimo?
Sì. È un avviso di divulgazione responsabile, in buona fede, da parte di un ricercatore di sicurezza indipendente. Non ti chiedo denaro, password o accesso al sito, e non ho tentato di entrarci, di inviargli qualcosa né di sfruttare alcunché.
Mi sono limitato a guardare file pubblici che il tuo sito serve a qualsiasi visitatore (allo stesso modo in cui la tua home page è pubblica) e ad annotare il numero di versione che il plugin pubblica. In particolare non ho inviato nulla alla funzione di tracciamento del plugin, e niente di questo controllo tocca i tuoi dati, la tua area di amministrazione o qualsiasi parte privata del sito (maggiori dettagli in Cosa ho fatto e cosa non ho fatto più sotto).
Se vuoi verificare chi sono, trovi i contatti in fondo a questa pagina e nella pagina Chi sono.
Perché è importante
Blog Floating Button aggiunge un pulsante fluttuante ai tuoi articoli e alle tue pagine, e tiene un proprio registro di clic e visite, così puoi consultarli in seguito in un report di analisi degli accessi all’interno dell’area di amministrazione di WordPress. Entrambe le metà di questa funzione sono coinvolte qui.
Nelle versioni interessate, il plugin accetta dati di tracciamento da chiunque, senza richiedere alcun accesso, e salva nella propria tabella di database una parte di ciò che il browser visitatore ha dichiarato su di sé, esattamente come è stata ricevuta, senza ripulirla. In seguito, quando la schermata del report mostra quelle righe salvate, le scrive nella pagina così come sono. La conseguenza è che il testo salvato da un visitatore anonimo può essere trattato come codice quando il report viene visualizzato.
Dove quel codice viene eseguito è l’aspetto su cui vale la pena essere precisi, e non è quello che la formulazione dell’avviso pubblico lascia intendere. La schermata del report si trova nell’area di amministrazione di WordPress. Quindi il codice verrebbe eseguito nel browser di un amministratore autenticato che apre il report degli accessi del plugin, non nei browser dei tuoi normali visitatori. Se temevi che le persone che navigano il tuo sito fossero sotto attacco a causa di questo: non lo sono, e preferisco dirlo chiaramente piuttosto che lasciarti un’impressione più spaventosa di quanto i fatti sostengano.
Questo definisce anche la portata del problema. È un difetto reale, memorizzato e sfruttabile senza autenticazione, e vale la pena correggerlo in tempi brevi, ma è più circoscritto dei problemi di appropriazione degli account e di esecuzione di codice remoto di cui scrivo altrove. Da solo non consegna a nessuno un account amministratore, e da solo non dà a nessuno il controllo del tuo server. Perché accada qualcosa serve che un amministratore apra una schermata ben precisa.
Una seconda correzione viaggia nello stesso rilascio. Il changelog della 1.4.21 registra anche la correzione di una vulnerabilità di SQL injection nei parametri di ricerca e filtro della schermata del report. Per quanto mi risulta non è stato pubblicato alcun avviso separato né alcun identificativo CVE, quindi non intendo attribuirle un identificativo; la menziono perché aggiornare alla 1.4.21 risolve anche quella. Lo stesso rilascio ha inoltre corretto un problema di segnalazione degli errori che poteva rivelare i percorsi dei file sul server, e il fornitore ha condotto una revisione dell’escaping dell’output e della sanitizzazione dell’input sull’intero plugin. Tutto ciò per dire: la 1.4.21 è un rilascio di sicurezza, e vale la pena installarlo anche se il problema principale ti sembra di lieve entità.
Sto descrivendo la cosa al livello che serve al proprietario di un sito per agire, e non oltre. Non pubblico i dettagli che permetterebbero a qualcuno di riprodurla, e ti chiedo di non provarci sul tuo sito né su quello di altri. Leggere il numero di versione, come descritto qui sotto, ti dice tutto ciò che serve per decidere cosa fare.
Se la mia email citava questo problema, significa che la versione dichiarata dal tuo sito è più vecchia della 1.4.21. Non ho verificato se il tuo sito specifico sia sfruttabile; ho osservato soltanto la versione.
Sono interessato?
Tutto si riduce a una domanda: quale versione di Blog Floating Button è installata?
Dall’area di amministrazione di WordPress (fonte autorevole):
- Accedi alla bacheca di WordPress (di solito su
tuodominio.it/wp-admin). - Vai su Plugin e poi Plugin installati.
- Individua Blog Floating Button, la voce la cui cartella è
blog-floating-button, e leggi la versione indicata sotto il nome.
Dal manifesto pubblico (senza login): apri nel browser
tuodominio.it/wp-content/plugins/blog-floating-button/readme.txt. La riga
Stable tag: vicino all’inizio è la versione che la tua installazione dichiara, ed è lo
stesso file pubblico che ho letto io. Per questo plugin coincide esattamente con la versione
mostrata nell’area di amministrazione, in ogni rilascio pubblicato.
Un controllo che per questo plugin non funziona, quindi non farci affidamento. Se sei
abituato a leggere le versioni dei plugin dal numero ?ver= allegato a uno script o a un
foglio di stile nel codice sorgente della pagina, qui ti trarrà in inganno. Il plugin non
appone la propria versione su quei file, quindi WordPress inserisce al suo posto la versione
del core di WordPress. Un numero come 6.8.5 o 7.0.1 accanto a uno dei file di questo
plugin è la tua versione di WordPress, non la versione del plugin, e confrontarlo con la
1.4.21 non ha senso. Usa la schermata di amministrazione oppure readme.txt.
Applica poi questa regola, e tieni presente che le versioni si confrontano numericamente, non alfabeticamente, quindi la 1.4.21 è più recente della 1.4.9 anche se come testo sembra più piccola:
- Qualsiasi versione più vecchia della 1.4.21: interessata. Aggiorna. Non esiste una soglia al di sotto della quale un rilascio più vecchio torni a essere sicuro.
- 1.4.21 o successiva: già corretta.
Come aggiornare
Il plugin è gratuito, ancora pubblicato e attivamente mantenuto, quindi la correzione è un normale aggiornamento. La strada più sicura è aggiornare tramite WordPress stesso, facendo prima un backup:
- Fai un backup del sito (file e database) prima di apportare modifiche. La maggior parte degli hosting provider offre backup con un clic, oppure puoi usare un plugin di backup per WordPress.
- Nell’amministrazione di WordPress, vai su Bacheca e poi Aggiornamenti, oppure su Plugin e poi Plugin installati. Se è elencato un aggiornamento di Blog Floating Button, installalo da qui.
- Se preferisci la riga di comando, WP-CLI fa la stessa cosa:
wp plugin update blog-floating-button. - Se non compare alcun aggiornamento, puoi ottenere l’ultimo rilascio direttamente dalla pagina del plugin nella directory di WordPress.org, Blog Floating Button, e aggiornare tramite Plugin, poi Aggiungi nuovo plugin, poi Carica plugin.
- Dopo l’aggiornamento, conferma il nuovo numero di versione (1.4.21 o successiva) seguendo i passaggi qui sopra, e verifica che il pulsante fluttuante compaia e si comporti ancora normalmente.
Già che ci sei, vale la pena verificare che il core di WordPress e gli altri plugin siano aggiornati, dato che per tutti vale lo stesso principio.
Dopo l’aggiornamento
Aggiornare alla 1.4.21 o successiva chiude il problema: la schermata del report ora ripulisce ogni valore prima di mostrarlo, quindi i dati di tracciamento salvati vengono visualizzati come testo anziché essere trattati come codice.
Cosa potrebbe essere già successo, detto con cautela. Tutto ciò che un visitatore anonimo ha salvato prima dell’aggiornamento si trova ancora nella tabella di tracciamento del plugin, ma avrebbe potuto fare qualcosa solo se uno dei tuoi amministratori avesse effettivamente aperto il report degli accessi del plugin mentre il sito era su una versione interessata. Se nessuno ha usato quella schermata, niente ha avuto occasione di essere eseguito. L’aggiornamento impedisce che venga eseguito in futuro; non annulla ciò che è già stato eseguito.
Se i tuoi amministratori usano quel report con regolarità, o se semplicemente vuoi essere scrupoloso, questi controlli sono ragionevoli e poco costosi:
- Riesamina gli account amministratore. Nell’amministrazione di WordPress vai su Utenti, filtra per Amministratore e verifica che ogni account elencato appartenga a qualcuno che deve avere quell’accesso, con l’indirizzo email che dovrebbe avere.
- Passa in rassegna le modifiche recenti agli utenti, alle impostazioni e ai contenuti del tuo sito, alla ricerca di qualsiasi cosa non riconosci.
- Se qualcosa non torna, reimpostare le password degli amministratori è un passo successivo
sensato, e rigenerare le chiavi segrete e i «salt» di WordPress in
wp-config.php(i nuovi valori sono a un clic dal generatore ufficiale) disconnette una volta tutti gli utenti.
Non ho alcuna visibilità su ciò che possa essere effettivamente accaduto sul tuo sito, e non ho guardato. Questo è un avviso precauzionale, non un rapporto di incidente.
Cosa ho fatto e cosa non ho fatto
Per essere del tutto trasparente sul controllo dietro la mia email: ho letto solo file pubblici
che il tuo sito serve già a ogni visitatore, in particolare il file readme.txt pubblico del
plugin e la tua home page. Non ho avuto accesso alla tua area di amministrazione WordPress,
al database o ad alcuna parte privata del sito, e non ho mai aperto la schermata del report del
tuo plugin, cosa che comunque non potrei fare senza un account sul tuo sito.
In particolare, non ho mai inviato nulla alla funzione di tracciamento del plugin. Nulla è stato inviato, salvato, testato o sfruttato. Qui questo conta più che nella maggior parte di queste pagine, perché la funzione di tracciamento è esattamente ciò a cui questo problema si riferisce, quindi «non l’ho toccata» è tutta la differenza tra una divulgazione e un’intrusione.
Deliberatamente non pubblico nemmeno i dettagli che aiuterebbero qualcuno ad agire su questo problema. La descrizione qui sopra si ferma al livello che serve al proprietario di un sito, e non collego alcun codice proof-of-concept.
Questa è un’osservazione basata sulla versione: il tuo sito dichiara una versione più vecchia della 1.4.21. Un sito in quell’intervallo potrebbe già essere protetto per altre vie, per esempio da un web application firewall o da una correzione retroportata. Questo avviso non afferma che il tuo sito fosse sfruttabile nel momento in cui ho effettuato il controllo.
Non ho un webmaster / sono bloccato
Se non sei tu a occuparti del sito, inoltra questa pagina a chi lo fa (il tuo sviluppatore, la tua agenzia o il tuo hosting provider). Riconosceranno subito i passaggi qui sopra.
Se gestisci il sito da solo e ti blocchi, sono felice di indicarti la direzione giusta senza alcun costo. Scrivimi usando i contatti qui sotto.
Contatti
Evan Harris, ricercatore di sicurezza
- Email: security@mail.mcpsec.dev
- X: @Evan__Harris
- GitHub: eharris128
- LinkedIn: Evan Harris
Mi metto in contatto su questioni come questa solo per aiutare gli operatori a mettere in sicurezza i loro siti. Se preferisci non essere più contattato, basta dirmelo e lo rispetterò.
Riferimenti
Avvisi ufficiali e tracciamento
Fornitore / plugin