Ειδοποίηση ασφαλείας Blog Floating Button
Αν λάβατε ένα email μου που παραπέμπει σε αυτή τη σελίδα, είναι επειδή ο ιστότοπός σας
φαίνεται να χρησιμοποιεί μια έκδοση του Blog Floating Button (το πρόσθετο WordPress των
sunhaengsa / kuma-chan, το οποίο βρίσκεται στα αρχεία σας στη διαδρομή
/wp-content/plugins/blog-floating-button/) η οποία εμπίπτει στο επηρεαζόμενο εύρος ενός
γνωστού ζητήματος ασφαλείας. Αυτή η σελίδα εξηγεί ποιο είναι το ζήτημα, πώς να ελέγξετε ποια
έκδοση έχετε, πώς να ενημερώσετε και τι να κάνετε στη συνέχεια.
Το ζήτημα είναι η CVE-2026-15383, ένα κενό αποθηκευμένου cross-site scripting χωρίς πιστοποίηση στη λειτουργία παρακολούθησης κλικ και αναφορών του πρόσθετου. Επηρεάζει κάθε έκδοση πριν από την 1.4.21 και διορθώνεται στην 1.4.21, που δημοσιεύτηκε στις 31 Ιουλίου 2026. Αν χρησιμοποιείτε οτιδήποτε παλαιότερο από την 1.4.21, ενημερώστε το Blog Floating Button στην 1.4.21 ή νεότερη.
Ένα σημείο που πρέπει να είναι ξεκάθαρο, γιατί διαφέρει από ορισμένες άλλες ειδοποιήσεις που έχω στείλει: δεν υπάρχει παλαιότερη έκδοση που να είναι ασφαλής. Δεν πρόκειται για κενό που εισήχθη σε κάποιο σημείο της ιστορίας του πρόσθετου και έπειτα διορθώθηκε. Η προστασία που λείπει απουσίαζε από κάθε έκδοση που δημοσίευσε ποτέ το πρόσθετο, μέχρι και την 1.4.20, οπότε το «η εγκατάστασή μου είναι πολύ παλιά για να επηρεάζεται» δεν αποτελεί διέξοδο εδώ. Οι μόνες εκδόσεις που δεν επηρεάζονται είναι η 1.4.21 και οι νεότερες.
Αυτή η ειδοποίηση επίσης δεν εξαρτάται από τον τρόπο που είναι ρυθμισμένος ο ιστότοπός σας. Δεν υπάρχει καμία ρύθμιση που πρέπει να είναι ενεργοποιημένη για να υπάρχει ο επηρεαζόμενος κώδικας.
Πρόκειται για κενό πρόσθετου, όχι για κενό του πυρήνα του WordPress. Ένα πλήρως ενημερωμένο WordPress δεν σας προστατεύει αν το ίδιο το πρόσθετο Blog Floating Button βρίσκεται σε επηρεαζόμενη έκδοση.
Είναι γνήσιο αυτό το μήνυμα·
Ναι. Πρόκειται για καλόπιστη ειδοποίηση υπεύθυνης δημοσιοποίησης από ανεξάρτητο ερευνητή ασφαλείας. Δεν σας ζητώ χρήματα, κωδικούς ή πρόσβαση στον ιστότοπό σας, και δεν επιχείρησα να εισβάλω σε αυτόν, να του υποβάλω οτιδήποτε ή να εκμεταλλευτώ κάτι.
Το μόνο που έκανα ήταν να δω δημόσια ορατά αρχεία που ο ιστότοπός σας παρέχει σε κάθε επισκέπτη (όπως ακριβώς είναι δημόσια η αρχική σας σελίδα) και να σημειώσω τον αριθμό έκδοσης που δημοσιεύει το πρόσθετο. Συγκεκριμένα, δεν έστειλα τίποτε στη λειτουργία παρακολούθησης του πρόσθετου, και τίποτα σε αυτόν τον έλεγχο δεν αγγίζει τα δεδομένα σας, την περιοχή διαχείρισής σας ή οποιοδήποτε ιδιωτικό τμήμα του ιστότοπού σας (περισσότερα παρακάτω, στην ενότητα Τι έκανα και τι δεν έκανα).
Αν θέλετε να επαληθεύσετε ποιος είμαι, δείτε τα στοιχεία επικοινωνίας στο τέλος αυτής της σελίδας και τη σελίδα Σχετικά.
Γιατί έχει σημασία
Το Blog Floating Button προσθέτει ένα αιωρούμενο κουμπί στα άρθρα και τις σελίδες σας, και κρατά δικό του αρχείο κλικ και επισκέψεων ώστε να μπορείτε να τα εξετάσετε αργότερα σε μια αναφορά αναλυτικών στοιχείων πρόσβασης μέσα στην περιοχή διαχείρισης του WordPress. Και τα δύο σκέλη αυτής της λειτουργίας εμπλέκονται εδώ.
Στις επηρεαζόμενες εκδόσεις, το πρόσθετο δέχεται δεδομένα παρακολούθησης από οποιονδήποτε, χωρίς να απαιτείται σύνδεση, και αποθηκεύει μέρος από όσα ανέφερε ο περιηγητής του επισκέπτη για τον εαυτό του στον δικό του πίνακα βάσης δεδομένων ακριβώς όπως τα έλαβε, χωρίς να τα καθαρίσει. Αργότερα, όταν η οθόνη αναφορών εμφανίζει αυτές τις αποθηκευμένες εγγραφές, τις γράφει στη σελίδα ως έχουν. Η συνέπεια είναι ότι κείμενο που αποθηκεύτηκε από έναν ανώνυμο επισκέπτη μπορεί να αντιμετωπιστεί ως κώδικας όταν εμφανίζεται η αναφορά.
Το πού εκτελείται αυτός ο κώδικας είναι το σημείο που αξίζει να διατυπωθεί με ακρίβεια, και δεν είναι αυτό που υπονοεί η διατύπωση της δημόσιας ανακοίνωσης. Η οθόνη αναφορών βρίσκεται στην περιοχή διαχείρισης του WordPress. Επομένως ο κώδικας θα εκτελούνταν στον περιηγητή ενός συνδεδεμένου διαχειριστή που ανοίγει την αναφορά πρόσβασης του πρόσθετου, όχι στους περιηγητές των απλών επισκεπτών του ιστότοπού σας. Αν ανησυχούσατε ότι οι άνθρωποι που περιηγούνται στον ιστότοπό σας δέχονται επίθεση μέσω αυτού: δεν δέχονται, και προτιμώ να το πω ξεκάθαρα παρά να σας αφήσω με μια πιο τρομακτική εντύπωση από όση στηρίζουν τα γεγονότα.
Αυτό καθορίζει και το μέγεθος του ζητήματος. Πρόκειται για πραγματικό αποθηκευμένο κενό χωρίς πιστοποίηση και αξίζει να διορθωθεί άμεσα, αλλά είναι στενότερο από τα ζητήματα κατάληψης λογαριασμού και απομακρυσμένης εκτέλεσης κώδικα για τα οποία γράφω αλλού. Δεν παραδίδει από μόνο του σε κανέναν λογαριασμό διαχειριστή, και δεν δίνει από μόνο του σε κανέναν τον έλεγχο του διακομιστή σας. Χρειάζεται έναν διαχειριστή να ανοίξει μια συγκεκριμένη οθόνη για να συμβεί οτιδήποτε.
Μια δεύτερη διόρθωση συνοδεύει την ίδια κυκλοφορία. Το ιστορικό αλλαγών της 1.4.21 καταγράφει επίσης ότι διόρθωσε ένα κενό SQL injection στις παραμέτρους αναζήτησης και φιλτραρίσματος της οθόνης αναφορών. Απ’ όσο μπορώ να διαπιστώσω, δεν έχει δημοσιευτεί ξεχωριστή ανακοίνωση ή αναγνωριστικό CVE γι’ αυτό, οπότε δεν πρόκειται να του αποδώσω αναγνωριστικό. Το αναφέρω επειδή η ενημέρωση στην 1.4.21 το αντιμετωπίζει και αυτό. Η ίδια κυκλοφορία διόρθωσε επιπλέον ένα πρόβλημα αναφοράς σφαλμάτων που μπορούσε να αποκαλύψει διαδρομές αρχείων του διακομιστή, και ο κατασκευαστής πραγματοποίησε έλεγχο σε όλο το πρόσθετο για τη διαφυγή της εξόδου και την εξυγίανση της εισόδου. Όλα αυτά σημαίνουν: η 1.4.21 είναι κυκλοφορία ασφαλείας, και αξίζει να την εγκαταστήσετε ακόμη κι αν το βασικό ζήτημα σας φαίνεται ήπιο.
Περιγράφω το ζήτημα στο επίπεδο που χρειάζεται ένας ιδιοκτήτης ιστότοπου για να δράσει, και όχι περισσότερο. Δεν δημοσιεύω τις λεπτομέρειες που θα επέτρεπαν σε κάποιον να το αναπαραγάγει, και θα σας παρακαλούσα να μην το δοκιμάσετε στον δικό σας ιστότοπο ή σε οποιονδήποτε άλλον. Η ανάγνωση του αριθμού έκδοσής σας, όπως περιγράφεται παρακάτω, σας λέει όλα όσα χρειάζεστε για να αποφασίσετε τι θα κάνετε.
Αν το email μου ανέφερε αυτό το ζήτημα, σημαίνει ότι η έκδοση που δηλώνει ο ιστότοπός σας είναι παλαιότερη από την 1.4.21. Δεν έλεγξα αν ο συγκεκριμένος ιστότοπός σας είναι εκμεταλλεύσιμος: το μόνο που παρατήρησα ήταν η έκδοση.
Επηρεάζομαι·
Όλα καταλήγουν σε ένα ερώτημα: ποια έκδοση του Blog Floating Button χρησιμοποιείτε·
Από την περιοχή διαχείρισης του WordPress (έγκυρη πηγή):
- Συνδεθείτε στον πίνακα ελέγχου WordPress (συνήθως
todomainsas.gr/wp-admin). - Πηγαίνετε στα Πρόσθετα και μετά Εγκατεστημένα πρόσθετα.
- Βρείτε το Blog Floating Button, την καταχώριση της οποίας ο φάκελος είναι
blog-floating-button, και σημειώστε την έκδοση που εμφανίζεται κάτω από το όνομά του.
Από το δημόσιο αρχείο περιγραφής (χωρίς σύνδεση): ανοίξτε στον περιηγητή τη διεύθυνση
todomainsas.gr/wp-content/plugins/blog-floating-button/readme.txt. Η γραμμή
Stable tag: κοντά στην αρχή είναι η έκδοση που δηλώνει η εγκατάστασή σας, και είναι το
ίδιο δημόσιο αρχείο που διάβασα. Για αυτό το πρόσθετο συμφωνεί απόλυτα με την έκδοση που
εμφανίζεται στην περιοχή διαχείρισης, σε κάθε έκδοση που έχει δημοσιεύσει.
Ένας έλεγχος που δεν λειτουργεί για αυτό το πρόσθετο, οπότε παρακαλώ μην τον εμπιστευτείτε.
Αν έχετε συνηθίσει να διαβάζετε τις εκδόσεις των πρόσθετων από τον αριθμό ?ver= που
συνοδεύει ένα script ή ένα φύλλο στυλ στον πηγαίο κώδικα της σελίδας σας, αυτό θα σας
παραπλανήσει εδώ. Το πρόσθετο δεν αποτυπώνει τη δική του έκδοση σε αυτά τα αρχεία, οπότε το
WordPress συμπληρώνει τη θέση με την έκδοση του πυρήνα του WordPress. Ένας αριθμός όπως
6.8.5 ή 7.0.1 δίπλα σε ένα από τα αρχεία αυτού του πρόσθετου είναι η έκδοση του WordPress
σας, όχι η έκδοση του πρόσθετου, και η σύγκρισή του με την 1.4.21 δεν έχει νόημα.
Χρησιμοποιήστε την οθόνη διαχείρισης ή το readme.txt.
Στη συνέχεια εφαρμόστε αυτόν τον κανόνα, και λάβετε υπόψη ότι οι εκδόσεις συγκρίνονται αριθμητικά, όχι αλφαβητικά, οπότε η 1.4.21 είναι νεότερη από την 1.4.9 παρότι ως κείμενο φαίνεται μικρότερη:
- Οτιδήποτε παλαιότερο από την 1.4.21: επηρεάζεται. Ενημερώστε. Δεν υπάρχει όριο κάτω από το οποίο μια παλαιότερη έκδοση γίνεται ξανά ασφαλής.
- 1.4.21 ή νεότερη: ήδη διορθωμένη.
Πώς να αναβαθμίσετε
Το πρόσθετο είναι δωρεάν, εξακολουθεί να δημοσιεύεται και συντηρείται ενεργά, οπότε η διόρθωση είναι μια συνηθισμένη ενημέρωση. Ο ασφαλέστερος δρόμος είναι να ενημερώσετε μέσα από το ίδιο το WordPress, αφού πρώτα πάρετε αντίγραφο ασφαλείας:
- Πάρτε αντίγραφο ασφαλείας του ιστότοπού σας (αρχεία και βάση δεδομένων) πριν κάνετε αλλαγές. Οι περισσότεροι πάροχοι φιλοξενίας προσφέρουν αντίγραφα με ένα κλικ, ή χρησιμοποιήστε ένα πρόσθετο αντιγράφων ασφαλείας για WordPress.
- Στην περιοχή διαχείρισης του WordPress, πηγαίνετε στον Πίνακα ελέγχου και μετά Ενημερώσεις, ή στα Πρόσθετα και μετά Εγκατεστημένα πρόσθετα. Αν εμφανίζεται ενημέρωση για το Blog Floating Button, εγκαταστήστε την από εκεί.
- Αν προτιμάτε τη γραμμή εντολών, το WP-CLI κάνει το ίδιο:
wp plugin update blog-floating-button. - Αν δεν εμφανίζεται ενημέρωση, μπορείτε να πάρετε την τελευταία έκδοση απευθείας από τη σελίδα του πρόσθετου στον κατάλογο του WordPress.org, Blog Floating Button, και να ενημερώσετε μέσω Πρόσθετα, μετά Προσθήκη νέου πρόσθετου, μετά Μεταφόρτωση πρόσθετου.
- Μετά την ενημέρωση, επιβεβαιώστε τον νέο αριθμό έκδοσης (1.4.21 ή νεότερη) με τα παραπάνω βήματα, και ελέγξτε ότι το αιωρούμενο κουμπί σας εξακολουθεί να εμφανίζεται και να λειτουργεί κανονικά.
Όσο βρίσκεστε εκεί, αξίζει να επιβεβαιώσετε ότι ο πυρήνας του WordPress και τα υπόλοιπα πρόσθετά σας είναι ενημερωμένα, καθώς η ίδια αρχή ισχύει για όλα τους.
Μετά την ενημέρωση
Η ενημέρωση στην 1.4.21 ή νεότερη κλείνει το ζήτημα: η οθόνη αναφορών καθαρίζει πλέον κάθε τιμή πριν την εμφανίσει, οπότε τα αποθηκευμένα δεδομένα παρακολούθησης εμφανίζονται ως κείμενο αντί να αντιμετωπίζονται ως κώδικας.
Τι μπορεί να έχει ήδη συμβεί, διατυπωμένο προσεκτικά. Οτιδήποτε αποθήκευσε ένας ανώνυμος επισκέπτης πριν ενημερώσετε βρίσκεται ακόμη στον πίνακα παρακολούθησης του πρόσθετου, αλλά θα είχε κάνει κάτι μόνο αν κάποιος από τους διαχειριστές σας άνοιγε πράγματι την αναφορά πρόσβασης του πρόσθετου ενώ ο ιστότοπος βρισκόταν σε επηρεαζόμενη έκδοση. Αν κανείς δεν χρησιμοποίησε εκείνη την οθόνη, τίποτα δεν είχε την ευκαιρία να εκτελεστεί. Η ενημέρωση σταματά την εκτέλεση στο μέλλον: δεν αναιρεί ό,τι έχει ήδη εκτελεστεί.
Αν οι διαχειριστές σας χρησιμοποιούν τακτικά αυτή την αναφορά, ή αν απλώς θέλετε να είστε σχολαστικοί, αυτοί είναι εύλογοι έλεγχοι με μικρό κόστος:
- Εξετάστε τους λογαριασμούς διαχειριστή σας. Στην περιοχή διαχείρισης του WordPress, πηγαίνετε στους Χρήστες, φιλτράρετε στον ρόλο Διαχειριστής και επιβεβαιώστε ότι κάθε λογαριασμός της λίστας ανήκει σε κάποιον που πρέπει να έχει αυτή την πρόσβαση, με τη διεύθυνση email που θα έπρεπε να έχει.
- Ελέγξτε τις πρόσφατες αλλαγές στους χρήστες, τις ρυθμίσεις και το περιεχόμενο του ιστότοπού σας για οτιδήποτε δεν αναγνωρίζετε.
- Αν κάτι δεν φαίνεται σωστό, η επαναφορά των κωδικών των διαχειριστών είναι λογικό επόμενο
βήμα, ενώ η εκ νέου δημιουργία των μυστικών κλειδιών και των «salts» του WordPress στο
wp-config.php(οι νέες τιμές απέχουν ένα κλικ από την επίσημη γεννήτρια κλειδιών) αποσυνδέει μία φορά όλους τους χρήστες.
Δεν έχω καμία ορατότητα στο αν συνέβη πράγματι κάτι στον ιστότοπό σας, και δεν κοίταξα. Πρόκειται για προληπτική ειδοποίηση, όχι για αναφορά περιστατικού.
Τι έκανα και τι δεν έκανα
Για πλήρη διαφάνεια σχετικά με τον έλεγχο πίσω από το email μου: διάβασα μόνο δημόσια αρχεία
που ο ιστότοπός σας παρέχει ήδη σε κάθε επισκέπτη, συγκεκριμένα το δημόσιο αρχείο
readme.txt του πρόσθετου και την αρχική σας σελίδα. Δεν απέκτησα πρόσβαση στην περιοχή
διαχείρισης WordPress, στη βάση δεδομένων ή σε οποιοδήποτε ιδιωτικό τμήμα του ιστότοπου, και
δεν άνοιξα ποτέ την οθόνη αναφορών του πρόσθετού σας, κάτι που άλλωστε δεν θα μπορούσα να
κάνω χωρίς λογαριασμό στον ιστότοπό σας.
Ειδικότερα, δεν έστειλα ποτέ τίποτε στη λειτουργία παρακολούθησης του πρόσθετου. Τίποτα δεν υποβλήθηκε, δεν αποθηκεύτηκε, δεν δοκιμάστηκε και δεν αξιοποιήθηκε. Αυτό έχει μεγαλύτερη σημασία εδώ από ό,τι στις περισσότερες από αυτές τις σελίδες, επειδή η λειτουργία παρακολούθησης είναι ακριβώς αυτό που αφορά το ζήτημα, οπότε το «δεν την άγγιξα» είναι όλη η διαφορά ανάμεσα σε μια γνωστοποίηση και μια εισβολή.
Επίσης δεν δημοσιεύω σκόπιμα τις λεπτομέρειες που θα βοηθούσαν κάποιον να δράσει πάνω σε αυτό το ζήτημα. Η παραπάνω περιγραφή σταματά στο επίπεδο που χρειάζεται ένας ιδιοκτήτης ιστότοπου, και δεν παραπέμπω σε κανέναν κώδικα απόδειξης εκμετάλλευσης.
Πρόκειται για παρατήρηση βασισμένη στην έκδοση: ο ιστότοπός σας δηλώνει έκδοση παλαιότερη από την 1.4.21. Ένας ιστότοπος σε αυτό το εύρος μπορεί να προστατεύεται ήδη με άλλα μέσα, όπως ένα τείχος προστασίας εφαρμογών ιστού ή μια διόρθωση που έχει μεταφερθεί πίσω. Αυτή η ειδοποίηση δεν αποτελεί δήλωση ότι ο ιστότοπός σας ήταν εκμεταλλεύσιμος τη στιγμή που έκανα τον έλεγχο.
Δεν έχω webmaster / έχω κολλήσει
Αν δεν συντηρείτε εσείς τον ιστότοπο, προωθήστε αυτή τη σελίδα σε όποιον τον συντηρεί (τον προγραμματιστή σας, την εταιρεία σας ή τον πάροχο φιλοξενίας). Θα αναγνωρίσουν γρήγορα τα παραπάνω βήματα.
Αν συντηρείτε τον ιστότοπο μόνοι σας και κολλήσετε, ευχαρίστως να σας κατευθύνω χωρίς κόστος. Επικοινωνήστε με τα στοιχεία παρακάτω.
Επικοινωνία
Evan Harris, ερευνητής ασφαλείας
- Email: security@mail.mcpsec.dev
- X: @Evan__Harris
- GitHub: eharris128
- LinkedIn: Evan Harris
Επικοινωνώ για ζητήματα σαν αυτό αποκλειστικά για να βοηθήσω τους διαχειριστές να ασφαλίσουν τους ιστότοπούς τους. Αν προτιμάτε να μην ξαναέρθω σε επαφή, απλώς ενημερώστε με και θα το σεβαστώ.
Αναφορές
Επίσημες ανακοινώσεις και παρακολούθηση
Κατασκευαστής / πρόσθετο