Blog 24/7
ARK. 1 · 1 min czytaniaWordPress ·

Dlaczego xmlrpc.php to otwarte drzwi do Twojego WordPressa

Jeden plik, którego prawie nikt nie używa, a który pozwala wykonać setki prób logowania w jednym żądaniu. Jak go wykrywamy i co z nim zrobić.

Karta wpisu: Dlaczego xmlrpc.php to otwarte drzwi do Twojego WordPressa

xmlrpc.php to pozostałość po czasach, gdy WordPress rozmawiał z aplikacjami mobilnymi i edytorami zewnętrznymi przez protokół XML-RPC. Dziś zastępuje go REST API, ale plik nadal jest w każdej instalacji i domyślnie odpowiada na żądania.

Co w nim jest groźnego

Dwie metody robią różnicę:

  • system.multicall pozwala zapakować wiele wywołań w jedno żądanie HTTP. Atakujący wysyła jedno żądanie z pięciuset parami login/hasło, a serwer grzecznie sprawdza wszystkie. Limity prób logowania w wtyczkach bezpieczeństwa zwykle liczą żądania, nie próby, więc nic nie widzą.
  • pingback.ping każe stronie odwiedzić dowolny adres. Tysiąc stron WordPress z otwartym xmlrpc to gotowa sieć do amplifikacji ataku DDoS na kogoś trzeciego. Twoja strona staje się narzędziem, a Twój adres IP trafia na czarne listy.

Jak to wykrywa CREATO_PING

Sonda wysyła żądanie POST /xmlrpc.php z metodą system.listMethods. Jeśli serwer odpowiada kodem 200 i listą metod zawierającą system.multicall, powstaje ustalenie exposure_xmlrpc o ważności wysokiej i pewności ewidentnej. Strona przechodzi w status PODATNA.

Dlaczego „podatna", a nie „zainfekowana"? Bo otwarty xmlrpc to drzwi, nie włamanie. W parze z enumeracją użytkowników (/wp-json/wp/v2/users zdradza login administratora) atakujący ma już połowę danych do logowania. Wtedy dwa ustalenia razem opisują pełny łańcuch brute-force.

Co zrobić

  1. Jeśli nie używasz aplikacji WordPress na telefon ani Jetpacka, zablokuj plik w całości. Reguła w .htaccess:
<Files xmlrpc.php>
  Require all denied
</Files>
  1. Jeśli musisz zostawić xmlrpc, wyłącz same metody system.multicall i pingback.ping filtrem xmlrpc_methods.
  2. Zablokuj enumerację użytkowników: ?author=1 i endpoint users w REST API dla niezalogowanych.
  3. Zmień login admin na coś, czego nie da się zgadnąć.

Po naprawie kolejny skan zamyka ustalenie automatycznie, a strona wraca do statusu Działa.

TAB. 3

Powiązane

3
05.11.2026WordPressCWPdoor podmienia serwer cwpsrv w Control Web Panel i otwiera tylne wejście do Linuksa
05.11.2026WordPressDreamHost potwierdza wyciek haseł FTP/SFTP i sesji poczty webowej
05.11.2026WordPressVercel wiąże sesję logowania z TPM, skradzione ciasteczko nie zadziała gdzie indziej

Wszystkie wpisy →

Blog 24/7
05.11CISA i FBI wzywają do zabezpieczenia sterowników chłodzenia po atakach w Europietherecord.media05.11Midnight Blizzard atakowała iPhone'y i Androidy przez zainfekowane strony w Europie i USAsecurityweek.com05.11APT29 kradła dane z iPhone'ów i Androidów przez przejęte i podrobione stronytherecord.media05.11Grupa APT29 przejęła skrypt Plerdy i atakowała niezałatane iPhone'y i Androidythehackernews.com05.11Microsoft wykrył 7,3 mld wiadomości phishingowych w III kwartale 2026microsoft.com05.11DigiCert ujawnia wyciek danych klientów i skanów dokumentów tożsamościbleepingcomputer.com05.11CWPdoor podmienia serwer cwpsrv w Control Web Panel i otwiera tylne wejście do Linuksableepingcomputer.com05.11Brytyjskie NCSC ostrzega, że narzędzia AI zwiększyły liczbę wykrywanych luk zero-daythehackernews.com05.11Skaner RootEvidence sprawdza starą lukę w Cisco IOS i dodaje nagłówki Opt-Outisc.sans.edu05.11Włamanie do portalu grantowego Norad, zagrożone dane 20 614 użytkownikówhelpnetsecurity.com