Luka SQL w rdzeniu WordPressa CVE-2026-60137 jest atakowana: co musi zrobić właściciel firmowej strony
Wstrzyknięcie SQL w rdzeniu WordPressa (CVE-2026-60137) trafiło do katalogu CISA KEV. W wersjach 6.9 i 7.0 razem z drugą luką pozwala przejąć stronę bez logowania. Wyjaśniamy ryzyko, wersje z poprawką i plan działań na dziś.
Firmowa strona na WordPressie to często pierwsze miejsce, w którym klient styka się z marką: formularze kontaktowe, zapisy na newsletter, sklep, strefa klienta. Luka CVE-2026-60137 dotyczy samego rdzenia WordPressa, a nie pojedynczej wtyczki, więc potencjalnie obejmuje każdą instalację z gałęzi 6.8, 6.9 i 7.0, która nie dostała poprawki. Poniżej wyjaśniamy, co się stało, kiedy ta luka jest groźna, a kiedy mniej, i co konkretnie trzeba zrobić.
W skrócie: jeśli Twoja strona działa na WordPressie 6.8.6, 6.9.5, 7.0.2 lub nowszym (obecnie najnowsze wydania to 7.1, 7.0.4, 6.9.7 i 6.8.8), poprawka jest na miejscu. Nadal jednak warto sprawdzić, czy nikt nie wszedł na stronę, zanim aktualizacja się zainstalowała.
1. Co się stało?
17 lipca 2026 zespół WordPressa wydał aktualizacje bezpieczeństwa 7.0.2, 6.9.5 i 6.8.6. Naprawiły one dwie luki w rdzeniu systemu. Ten wpis dotyczy pierwszej z nich: wstrzyknięcia SQL w mechanizmie, który wyszukuje wpisy w bazie danych. 21 lipca 2026 amerykańska agencja CISA dopisała ją do katalogu Known Exploited Vulnerabilities (KEV), czyli listy luk, których wykorzystanie w prawdziwych atakach zostało potwierdzone.
Element
Szczegóły
Identyfikator CVE
CVE-2026-60137 (advisory producenta: GHSA-fpp7-x2x2-2mjf, baza ENISA: EUVD-2026-45279)
Data dodania do CISA KEV
21 lipca 2026, termin dla agencji federalnych USA: 4 sierpnia 2026 (14 dni)
Produkt
WordPress Core, czyli rdzeń systemu WordPress (wersja samodzielnie instalowana, pobierana z wordpress.org)
Wersje zagrożone
6.8.0 do 6.8.5, 6.9.0 do 6.9.4, 7.0.0 do 7.0.1
Wersje bezpieczne
6.8.6, 6.9.5, 7.0.2 i nowsze; wydania starsze niż 6.8 według producenta nie są podatne
Typ podatności
Wstrzyknięcie SQL (CWE-89) przez parametr author__not_in klasy WP_Query
Ocena CVSS
Dwie oceny w NVD: 5,9 (ŚREDNIA) od WPScan i 9,1 (KRYTYCZNA) od CISA; producent: Moderate
Powiązana luka
CVE-2026-63030 (pomylenie tras w zbiorczym punkcie REST API), tylko w 6.9 i 7.0
Użycie w ransomware (KEV)
Unknown, czyli brak publicznie potwierdzonych danych
EPSS (prognoza wykorzystania)
78,3%, wyżej niż 99,5% ocenianych luk (pomiar FIRST.org z 13 września 2026)
Rozbieżność ocen CVSS ma proste wytłumaczenie praktyczne. Sama luka SQL wymaga, żeby jakaś wtyczka lub motyw przekazał do podatnego parametru dane od odwiedzającego, stąd niższa ocena. CISA oceniła ją wyżej, bo w katalogu KEV opisuje łańcuch: w połączeniu z CVE-2026-63030 napastnik bez konta może uruchomić własny kod na domyślnej instalacji WordPressa.
Kogo to dotyczy w praktyce
Gałąź WordPressa
Luka SQL CVE-2026-60137
Łańcuch z CVE-2026-63030 (przejęcie bez logowania)
Minimalna wersja z poprawką
Ocena ryzyka
7.0.x
🔴 Tak (7.0.0 do 7.0.1)
🔴 Tak
7.0.2
KRYTYCZNE
6.9.x
🔴 Tak (6.9.0 do 6.9.4)
🔴 Tak
6.9.5
KRYTYCZNE
6.8.x
🟠 Tak (6.8.0 do 6.8.5)
🟢 Nie
6.8.6
Wysokie, zależne od wtyczek
6.7.x i starsze
🟢 Nie
🟢 Nie
nie dotyczy
Brak tej luki, ale stare wydania mają inne braki
Producent włączył wymuszone automatyczne aktualizacje dla stron z podatnymi wersjami. To dobra wiadomość, ale nie gwarancja: automatyczne aktualizacje bywają wyłączone w konfiguracji, blokowane przez hosting albo przez uprawnienia plików.
2. O co chodzi w prostych słowach?
Wyobraź sobie archiwum firmy z archiwistą, który przynosi dokumenty według kartki z zamówieniem. Na kartce można napisać na przykład: „wszystkie umowy z tego roku, oprócz tych od autorów nr 3 i 7”. Archiwista ma sprawdzić, czy w polu „oprócz” stoją wyłącznie numery. W podatnych wersjach WordPressa ta kontrola nie działa w jednym przypadku: gdy zamiast listy numerów przyjdzie zwykły tekst, archiwista przepisuje go do zlecenia bez czytania.
Wtedy ktoś może dopisać w polu „oprócz”: „a przy okazji przynieś też teczkę z hasłami”. Archiwista wykona to jak każde inne polecenie. Druga luka, CVE-2026-63030, to w tej metaforze boczne okienko w archiwum, przez które zamówienie trafia do archiwisty z pominięciem recepcji sprawdzającej formularze. Razem dają obcej osobie dostęp do zawartości archiwum, a w efekcie do kluczy od całego budynku.
Scenariusz
Normalnie
Z podatnością
Parametr wykluczający autorów
Zawiera tylko numery autorów
Zawiera dopisane polecenie dla bazy danych
Kto może wysłać zapytanie
Odwiedzający, ale zapytanie jest filtrowane
Anonimowy napastnik, filtr przepuszcza obcy tekst
Co zwraca baza danych
Listę wpisów na stronie
Dane, których nie powinno być widać, np. dane kont
Kto zarządza stroną
Firma i jej administratorzy
Napastnik, który dopisał sobie konto administratora
Co trafia na serwer
Treści i wtyczki instalowane przez firmę
Złośliwa wtyczka lub ukryty skrypt (webshell)
Słowniczek: SQL to język, którym strona rozmawia z bazą danych. Wstrzyknięcie SQL (CWE-89) oznacza przemycenie własnego polecenia do takiej rozmowy, np. „pokaż też zawartość tabeli użytkowników”.
Słowniczek: REST API to zestaw adresów, pod którymi WordPress przyjmuje zapytania od programów, np. aplikacji mobilnej albo edytora bloków. Webshell to mały plik z kodem, który daje napastnikowi stały dostęp do serwera przez przeglądarkę.
Szczegóły łańcucha opublikowano szybko, a publiczne kody demonstracyjne (PoC) pojawiły się w ciągu godzin od wydania poprawek. Według Help Net Security firma VulnCheck zweryfikowała ponad dwadzieścia unikalnych PoC. Poniższy przebieg opiera się na analizach Rapid7, SANS ISC, F5 Labs i Wiz i dotyczy wersji 6.9 i 7.0, w których działa pełny łańcuch.
Timeline ataku:
Etap
Czas
Akcja hakerów
Wynik
1
T+0 min
Automatyczne skanowanie internetu w poszukiwaniu stron na WordPressie 6.9 i 7.0
Lista celów bez poprawki
2
T+1 min
Zapytanie testowe do zbiorczego punktu REST API (/wp-json/batch/v1 lub ?rest_route=/batch/v1) z wstrzyknięciem w parametrze author_exclude
Potwierdzenie, że strona jest podatna
3
T+2 min
Pomylenie tras (CVE-2026-63030) omija walidację, a luka SQL (CVE-2026-60137) daje dostęp do bazy danych
Odczyt lub zmiana danych w bazie bez logowania
4
T+5 min
Utworzenie konta administratora i logowanie do panelu
Pełna kontrola nad stroną
5
T+10 min
Wgranie złośliwej wtyczki lub webshella, np. w katalogu wp-content/cache
Wykonanie kodu na serwerze i trwały dostęp
6
Godziny do dni
Wyliczanie użytkowników, próby odczytu pliku konfiguracyjnego z hasłami, dalsze działania
Ryzyko kradzieży danych, podmiany treści, spamu SEO
Czasy są orientacyjne i pokazują, że cały atak jest zautomatyzowany. Na gałęzi 6.8 przebieg jest inny: bez drugiej luki napastnik potrzebuje wtyczki lub motywu, który przekazuje jego dane do podatnego parametru, więc atak jest mniej masowy i zależy od konkretnej instalacji.
Konkretne scenariusze zagrożenia:
🔴 Scenariusz 1: przejęcie firmowej strony i sklepu. Napastnik tworzy sobie konto administratora, wgrywa złośliwą wtyczkę i może podmieniać numery kont do przelewów, formularze płatności albo treści ofert.
🔴 Scenariusz 2: wyciek danych klientów. Baza WordPressa przechowuje konta użytkowników, zamówienia sklepu, zgłoszenia z formularzy i adresy e-mail z newslettera; ich odczyt przez osobę trzecią to naruszenie ochrony danych osobowych.
🔴 Scenariusz 3: strona jako narzędzie ataku na innych. Przejęty serwer może rozsyłać phishing w imieniu firmy, hostować złośliwe pliki albo służyć do spamu SEO, co kończy się blokadą w wyszukiwarkach i na listach antyspamowych.
🟠 Scenariusz 4: ukryty dostęp po aktualizacji. Jeśli napastnik zdążył wejść przed instalacją poprawki, jego konto administratora i webshell zostają na serwerze także po aktualizacji.
4. Dlaczego to ryzyko dla Twojej firmy?
Luka w rdzeniu WordPressa jest groźniejsza niż błąd w niszowej wtyczce z jednego powodu: skala. Atakujący nie muszą szukać nietypowych konfiguracji, wystarczy im numer wersji. Wiz podał, że w dniu publikacji podatne instancje miało 60% monitorowanych przez tę firmę organizacji korzystających z WordPressa, a po 24 godzinach nadal 50%.
Obszar biznesu
Potencjalny wpływ
Czas do wystąpienia
Koszty szacunkowe
Operacyjny
Wyłączenie lub odtwarzanie strony i sklepu, wstrzymanie sprzedaży online
Godziny
2 000 do 20 000 PLN za dobę przestoju dla małego sklepu internetowego
Bezpieczeństwo danych
Odczyt kont, zamówień i danych z formularzy
Minuty od udanego ataku
20 000 do 150 000 PLN za analizę incydentu, powiadomienia i obsługę prawną
Finansowy
Podmiana danych do płatności, oszustwa na klientach
Dni
Od kilku tysięcy PLN do wartości przejętych przelewów
Reputacyjny
Ostrzeżenia przeglądarek, spadek w wyszukiwarce, utrata zaufania
Dni do tygodni
Spadek ruchu z wyszukiwarki o kilkadziesiąt procent na tygodnie
Prawny
Zgłoszenie do UODO w 72 godziny, kary RODO, roszczenia klientów
Tygodnie do miesięcy
Kary RODO do 20 mln EUR lub 4% rocznego światowego obrotu
Kwoty w tabeli to szacunki poglądowe dla małej i średniej firmy, a nie dane z konkretnego incydentu związanego z tą luką.
Macierz ryzyka (pozycja CVE-2026-60137 dla stron na 6.9 i 7.0 bez poprawki oraz na 6.8 bez poprawki):
Wpływ
5 | ■ ← CVE-2026-60137 + CVE-2026-63030 (6.9 / 7.0)
4 | ■ ← CVE-2026-60137 sama (6.8, wymaga wtyczki)
3 |
2 |
1 |
+---------------------
1 2 3 4 5 Prawdopodobieństwo
Uzasadnienie: potwierdzone ataki (KEV), publiczne PoC,
EPSS 78,3%, masowe skanowanie. Na 6.8 prawdopodobieństwo
niższe, bo potrzebny jest dodatkowy warunek po stronie wtyczki.
Przed i po aktualizacji
Aspekt
Przed (6.9.4 lub 7.0.1)
Po (6.9.5+ lub 7.0.2+)
Anonimowy dostęp do bazy danych przez REST API
🔴 Możliwy
🟢 Zablokowany
Przejęcie strony bez logowania
🔴 Możliwe
🟢 Łańcuch przerwany
Ślady wcześniejszego włamania
🟠 Mogą istnieć
🟠 Nadal mogą istnieć, aktualizacja ich nie usuwa
5. Co musisz zrobić natychmiast?
Priorytet
Działanie
Termin
Odpowiedzialny
Status
🔴 NATYCHMIAST
Spisać wszystkie instalacje WordPressa (strona główna, sklep, landing page, wersje testowe i archiwalne) z numerem wersji
Dzisiaj
IT Manager
☐
🔴 NATYCHMIAST
Zaktualizować do najnowszego wydania w gałęzi: 7.1 lub 7.0.4, 6.9.7, 6.8.8 (minimum 7.0.2, 6.9.5, 6.8.6)
Dzisiaj
Administrator WordPressa lub agencja
☐
🔴 NATYCHMIAST
Jeśli aktualizacja dziś jest niemożliwa: zablokować w WAF adresy /wp-json/batch/v1 i ?rest_route=/batch/v1
Dzisiaj
IT Security lub hosting
☐
🟠 PILNIE
Sprawdzić listę administratorów i usunąć nieznane konta, zmienić hasła administratorów
Do jutra
Administrator WordPressa
☐
🟠 PILNIE
Przeszukać serwer pod kątem nieznanych plików PHP (szczególnie wp-content/cache i wp-content/uploads) oraz nieznanych wtyczek
24-48h
Incident Response
☐
🟠 PILNIE
Przejrzeć logi serwera od 17 lipca 2026 pod kątem zapytań POST do batch/v1 z author_exclude zawierającym UNION lub SELECT
24-48h
SOC lub hosting
☐
🟡 WAŻNIE
Sprawdzić, czy automatyczne aktualizacje rdzenia są włączone i działają na wszystkich instalacjach
W ciągu tygodnia
DevOps
☐
🟡 WAŻNIE
Jeśli wykryto ślady włamania: ocenić naruszenie danych osobowych i obowiązek zgłoszenia do UODO w 72 godziny
Reguła WAF blokująca /wp-json/batch/v1 i ?rest_route=/batch/v1
Wysoka wobec opisanego łańcucha, ok. 80-90%
Średnia, może zepsuć edytor bloków lub integracje
Wyłączenie anonimowego dostępu do REST API (wtyczka lub reguła serwera)
Wysoka, ok. 80-90%
Wysoka, ale sprawdź formularze i aplikacje korzystające z API
Gotowe reguły dostawcy WAF lub CDN (np. Cloudflare wdrożył reguły wykrywania)
Średnia do wysokiej, ok. 70-85%
Wysoka
Tryb konserwacji lub odcięcie strony od internetu do czasu aktualizacji
100%
Wysoka, ale oznacza przestój
Wartości efektywności to szacunki poglądowe; producent nie opisał oficjalnego obejścia, a obejścia wskazują Rapid7, Wiz i Help Net Security jako doraźne środki awaryjne. Jedynym pełnym rozwiązaniem jest aktualizacja.
6. Kontekst i skala zagrożenia
Aspekt
Informacja
Czy jest wykorzystywana?
TAK: potwierdzenie w CISA KEV; próby ataków raportowały m.in. Hexastrike, SANS ISC, F5 Labs, Wiz, Patchstack, watchTowr i Cloudflare
Grupy przestępcze
Brak publicznie potwierdzonych danych o konkretnych grupach
Kampanie ransomware
Brak publicznie potwierdzonych danych (flaga KEV: Unknown)
Nazwa łańcucha
wp2shell (CVE-2026-63030 razem z CVE-2026-60137)
Ocena CVSS
9,1/10 (KRYTYCZNA) według CISA; 5,9/10 (ŚREDNIA) według WPScan
PoC dostępny publicznie?
TAK: pierwsze PoC w ciągu godzin od publikacji, VulnCheck zweryfikował ponad dwadzieścia unikalnych
Liczba atakowanych firm
Brak publicznie potwierdzonej liczby ofiar; Hexastrike obsługiwał kilka potwierdzonych i podejrzewanych incydentów
2026-07-17: WordPress 7.0.2, 6.9.5 i 6.8.6; publikacja CVE; wymuszone autoaktualizacje
2026-07-17: Wieczorem pierwsze próby ataków, PoC w ciągu godzin (Help Net Security)
2026-07-20: SANS ISC opisuje ataki z webshellem i kontem administratora
2026-07-21: CISA dodaje CVE-2026-60137 i CVE-2026-63030 do katalogu KEV
2026-07-22: Rapid7 publikuje szczegóły techniczne łańcucha wp2shell
2026-07-24: Termin federalny USA dla CVE-2026-63030
2026-08-04: Termin federalny USA dla CVE-2026-60137
2026-09-13: EPSS 78,3% (percentyl 99,5%)
2026-09-14: TUTAJ JESTEŚMY - 59 dni po poprawce, sprawdź wersję i ślady włamania
Firma, która zaktualizowała stronę dopiero teraz, mogła być wystawiona na zautomatyzowane ataki przez prawie dwa miesiące. Dlatego sama aktualizacja nie zamyka sprawy, konieczna jest też kontrola śladów włamania.
7. Bezpośredni link do działania
✓
Zadanie
Kto
Deadline
☐
Sprawdzić wersję w panelu: Kokpit, Aktualizacje (lub w stopce panelu administracyjnego)
IT Manager
DZISIAJ
☐
Pobrać poprawkę przez panel lub z https://wordpress.org/download/ (opis wydania: https://wordpress.org/news/2026/07/wordpress-7-0-2-release/)
IT Manager
DZISIAJ
☐
Wykonać kopię zapasową plików i bazy danych przed aktualizacją
Administrator WordPressa
DZISIAJ
☐
Przetestować aktualizację na kopii strony, jeśli sklep lub integracje są krytyczne
QA
DZISIAJ
☐
Zakomunikować krótkie okno serwisowe zespołowi sprzedaży i obsługi klienta
Project Manager
DZISIAJ
☐
Wdrożyć aktualizację na produkcji na wszystkich instalacjach
DevOps
DO JUTRA
☐
Sprawdzić konta administratorów, nowe pliki PHP i logi zapytań do batch/v1
SOC
DO JUTRA
☐
Potwierdzić numer wersji na każdej instalacji i zapisać wynik w rejestrze zmian
Luka w systemach PLM firmy PTC pozwala bez logowania przejąć serwer. Grupa Cl0p wykorzystuje ją do kradzieży dokumentacji produktów i szantażu. Zainstaluj poprawki i sprawdź ślady włamania.
Błąd w bibliotece Starlette, podstawie FastAPI, pozwala omijać zabezpieczenia części aplikacji, a w łańcuchu z luką LiteLLM przejąć bramkę AI. CISA potwierdza ataki. Zaktualizuj do 1.0.1 lub nowszej.
CISA potwierdza wykorzystanie krytycznej luki w bibliotece Ajax.NET Professional, która pozwala przejąć serwer bez logowania. Znajdź stare aplikacje ASP.NET z AjaxPro, odetnij je od internetu i zaktualizuj.
Klikając „Akceptuję”, zgadzasz się na przechowywanie plików cookie przez UXU w celu poprawy działania strony, analizy i wsparcia działań marketingowych.