Biuletyn bezpieczeństwa Kirki
Jeśli otrzymałeś ode mnie wiadomość e-mail kierującą Cię na tę stronę, to dlatego, że Twoja
witryna najwyraźniej korzysta z podatnej wersji Kirki – Freeform Page Builder, Website
Builder & Customizer (wtyczki WordPress kirki, autorstwa Themeum). Ta strona wyjaśnia,
dlaczego to ważne i jak temu zaradzić.
Ten biuletyn dotyczy CVE-2026-8206, krytycznej, aktywnie wykorzystywanej luki (CVSS 9.8), która pozwala atakującemu przejąć dowolne zarejestrowane konto na Twojej stronie, w tym konta administratorów, bez logowania. Dotyczy ona wersji od 6.0.0 do 6.0.6 i została naprawiona w 6.0.7 (wydanej 18 maja 2026). Jeśli korzystasz z wersji, której dotyczy problem, zaktualizuj Kirki do 6.0.7 lub nowszej (zalecane jest najnowsze wydanie 6.1.x) tak szybko, jak to możliwe. Ponieważ luka ta oddaje atakującemu kontrolę nad kontami i jest wykorzystywana w praktyce, powinieneś również sprawdzić stronę pod kątem oznak nieuprawnionego dostępu (zobacz Jeśli korzystałeś z wersji, której dotyczy problem poniżej).
Jest to luka we wtyczce, a nie w rdzeniu WordPressa. W pełni aktualny WordPress nie chroni Cię, jeśli sama wtyczka Kirki jest w wersji, której dotyczy problem.
Czy ta wiadomość jest wiarygodna?
Tak. Jest to powiadomienie w dobrej wierze, zgodne z zasadą odpowiedzialnego ujawniania, od niezależnego badacza bezpieczeństwa. Nie proszę Cię o pieniądze, hasła ani dostęp do Twojej strony, i nie próbowałem się do niej włamać, niczego przesłać ani niczego wykorzystać.
Jedyne, co zrobiłem, to obejrzenie publicznie widocznych plików, które Twoja witryna
udostępnia każdemu odwiedzającemu (tak samo jak publiczna jest Twoja strona główna), i
odnotowanie numeru wersji, który wtyczka Kirki publikuje w swoim publicznym pliku
readme.txt. Świadomie nie dotknąłem podatnej funkcji resetowania hasła i nic w tym
sprawdzeniu nie dotyka Twoich danych, Twojego panelu administracyjnego ani żadnej prywatnej
części Twojej strony.
Jeśli chcesz zweryfikować, kim jestem, zobacz dane kontaktowe na dole tej strony oraz stronę O tej stronie.
Dlaczego to ważne
Kirki to szeroko używana wtyczka typu page builder i customizer (około 500 000 aktywnych
instalacji). Jej obsługa resetowania hasła (funkcja o nazwie handle_forgot_password)
zawiera błąd: gdy żądanie resetu podaje nazwę użytkownika, obsługa akceptuje w tym samym
żądaniu również adres e-mail podany przez atakującego. Link do resetowania hasła jest
wtedy wysyłany na ten adres zamiast do właściciela konta.
Praktyczny skutek jest taki, że zdalny atakujący, który po prostu zna nazwę użytkownika dowolnego zarejestrowanego użytkownika na Twojej stronie, administratorów nie wyłączając, może sprawić, że link do resetowania hasła tego użytkownika trafi do skrzynki atakującego, bez logowania i bez żadnej interakcji ze strony prawdziwego właściciela. Kliknięcie w link pozwala atakującemu ustawić nowe hasło i przejąć pełną kontrolę nad kontem. W przypadku konta administratora oznacza to pełną kontrolę nad stroną: tworzenie nowych użytkowników administracyjnych, instalowanie wtyczki lub motywu (częsty sposób na umieszczenie backdoora), zmienianie treści lub odczytywanie danych.
Lukę oceniono na 9,8 na 10 (krytyczna waga). Przejmowanie kont administratorów przez tę lukę zostało zgłoszone w praktyce, a publicznie dostępne jest narzędzie do masowej eksploatacji. Jeśli moja wiadomość e-mail przywołała ten problem, oznacza to, że wersja, którą zgłasza Twoja strona, mieści się w zakresie, którego dotyczy problem. Nie testowałem, czy Twoja konkretna strona jest podatna na wykorzystanie lub już naruszona, a jedynie to, że zgłasza wersję, której dotyczy problem.
Dobra wiadomość: aktualizacja do naprawionej wersji zamyka lukę, a sama aktualizacja jest prosta.
Jak sprawdzić swoją wersję
Nie musisz wierzyć mi na słowo co do tego, z jakiej wersji korzystasz.
Z publicznego manifestu (bez logowania): otwórz w przeglądarce
yourdomain.com/wp-content/plugins/kirki/readme.txt. Wiersz Stable tag: blisko
początku to wersja, którą zgłasza Twoja instalacja Kirki, i jest to ten sam publiczny plik,
który odczytałem.
Z panelu administracyjnego WordPress (jeśli masz dostęp):
- Zaloguj się do kokpitu WordPress (zwykle pod adresem
yourdomain.com/wp-admin). - Przejdź do Wtyczki następnie Zainstalowane wtyczki.
- Znajdź Kirki i odnotuj wersję pokazaną pod jego nazwą.
Następnie zastosuj poniższą regułę, pamiętając, że wersje porównuje się numerycznie, a nie alfabetycznie:
- Od 6.0.0 do 6.0.6: wersja, której dotyczy problem, zaktualizuj teraz.
- 6.0.7 lub nowsza, w tym 6.0.10, 6.0.13, 6.0.14 oraz wszystkie wydania 6.1.x: już naprawiona. Nie daj się zmylić kolejności tekstowej; 6.0.10 to wydanie późniejsze (naprawione) niż 6.0.7, ponieważ 10 jest większe niż 7.
- 3.0.x lub 3.1.x: to inny produkt o tym samym slug
kirki(Kirki Customizer Framework autorstwa Aristatha, który page builder 6.x od Themeum później zastąpił). Stary framework nie jest objęty tym problemem i ten biuletyn go nie dotyczy.
Jak zaktualizować
Najbezpieczniejsza droga to aktualizacja przez samego WordPressa, po uprzednim utworzeniu kopii zapasowej:
- Utwórz kopię zapasową swojej strony (pliki i baza danych) przed wprowadzeniem zmian. Większość dostawców hostingu oferuje kopie zapasowe jednym kliknięciem, albo skorzystaj z wtyczki do tworzenia kopii zapasowych WordPress.
- W panelu administracyjnym WordPress przejdź do Kokpit następnie Aktualizacje, albo Wtyczki następnie Zainstalowane wtyczki. Jeśli aktualizacja Kirki jest na liście, zainstaluj ją stąd.
- Jeśli wolisz wiersz poleceń, WP-CLI robi to samo:
wp plugin update kirki. - Jeśli nie pojawi się żadna aktualizacja, możesz pobrać najnowsze wydanie bezpośrednio ze strony wtyczki w katalogu WordPress.org, Kirki, i zaktualizować przez Wtyczki następnie Dodaj nową wtyczkę następnie Wyślij wtyczkę na serwer.
- Po aktualizacji potwierdź nowy numer wersji (6.0.7 lub nowszy; zalecane jest najnowsze wydanie 6.1.x) zgodnie z powyższymi krokami i sprawdź, czy Twoja strona wczytuje się jak zwykle.
Skoro już tam jesteś, warto potwierdzić, że rdzeń WordPress oraz pozostałe wtyczki są aktualne, ponieważ ta sama zasada dotyczy ich wszystkich.
Jeśli korzystałeś z wersji, której dotyczy problem
Ponieważ luka ta jest aktywnie wykorzystywana do przejmowania kont, strona, która korzystała z wersji objętej problemem, nie powinna zakładać, że sama aktualizacja wystarczy. Aktualizacja usuwa podatność, ale nie cofa dostępu, który atakujący mógł już uzyskać. Ty (lub Twój webmaster) powinniście to sprawdzić na swojej własnej stronie:
- Przejrzyj swoje konta administratorów. W Użytkownicy następnie Wszyscy użytkownicy przefiltruj według Administrator i usuń każde konto, którego nie rozpoznajesz. Atakujący często dodają nowego użytkownika administracyjnego, aby utrzymać dostęp.
- Przejrzyj niedawne resety haseł. Reset, o który ani Ty, ani Twoi użytkownicy nie prosiliście, albo konto, którego hasło nagle przestało działać, to sygnał ostrzegawczy charakterystyczny dla tej konkretnej luki. W razie wątpliwości sam zresetuj hasła kont administratorów.
- Przejrzyj niedawno zainstalowane lub zmodyfikowane wtyczki i motywy. Poszukaj wszystkiego, czego sam nie zainstalowałeś, oraz wtyczek o ogólnych lub nieznanych nazwach: podstawiona wtyczka lub motyw to częsty sposób na umieszczenie backdoora.
- Przejrzyj hasła aplikacji. Dla każdego użytkownika (Użytkownicy następnie Profil użytkownika) sprawdź sekcję Hasła aplikacji i cofnij każdy wpis, którego nie utworzyłeś.
- Zwracaj uwagę na inne oznaki. Nieoczekiwane nowe treści lub strony, zmiany w ustawieniach adresu e-mail administratora lub adresu URL witryny, albo nieznane zaplanowane zadania warto zbadać.
Jeśli znajdziesz dowody nieuprawnionego dostępu, potraktuj stronę jako naruszoną: usuń podstawionych użytkowników, wtyczki lub motywy, zmień wszystkie dane uwierzytelniające (administracja WordPress, baza danych i panel hostingu) i rozważ przywrócenie z pewnej, znanej jako czysta kopii zapasowej utworzonej przed włamaniem. Jeśli Twoja organizacja ma zespół bezpieczeństwa IT, włącz ich do sprawy.
Chcę to jasno powiedzieć: nie sprawdzałem Twojej strony pod kątem żadnego z tych wskaźników i nie wiem, czy Twoja strona była objęta problemem. Ta lista znajduje się tutaj, abyś mógł sprawdzić samodzielnie. Strona w zakresie wersji objętym problemem może też być już chroniona w inny sposób (zaporą aplikacji webowych albo poprawką backportowaną na poziomie hostingu); ten biuletyn to obserwacja oparta na wersji, a nie stwierdzenie, że Twoja strona była podatna na wykorzystanie w chwili, gdy ją sprawdzałem.
Nie mam webmastera / utknąłem
Jeśli nie jesteś osobą, która utrzymuje stronę, prześlij tę stronę temu, kto to robi (Twojemu deweloperowi, agencji lub dostawcy hostingu). Szybko rozpoznają powyższe kroki.
Jeśli sam utrzymujesz stronę i utkniesz, chętnie pomogę Ci wskazać właściwy kierunek, bezpłatnie. Skontaktuj się, korzystając z danych kontaktowych poniżej.
Kontakt
Evan Harris, badacz bezpieczeństwa
- E-mail: security@mail.mcpsec.dev
- X: @Evan__Harris
- GitHub: eharris128
- LinkedIn: Evan Harris
Kontaktuję się w sprawach takich jak ta wyłącznie po to, by pomóc operatorom zabezpieczyć ich strony. Jeśli wolisz nie być więcej kontaktowany, po prostu daj mi znać, a uszanuję to.
Źródła
Oficjalne biuletyny i śledzenie
Producent / wtyczka