Co To jest Xmlrpc.php w WordPress i dlaczego powinieneś go wyłączyć

WordPress zawsze miał wbudowane funkcje, które umożliwiają zdalną interakcję z witryną. Spójrz prawdzie w oczy, czasami musisz uzyskać dostęp do swojej strony internetowej, a komputer nie będzie w pobliżu. Przez długi czas rozwiązaniem był plik o nazwie xmlrpc.php. Ale w ostatnich latach plik stał się bardziej szkodnikiem niż rozwiązaniem.

poniżej zanurkujemy w co xmlrpc.php faktycznie jest i dlaczego zostało stworzone. Przeglądamy również typowe problemy z bezpieczeństwem, które powoduje i jak je łatać na własnej witrynie WordPress.

Zabierz swoją witrynę WordPress na wyższy poziom i uzyskaj bezpieczne rozwiązanie hostingowe WordPress z Hostinger już dziś!

Zacznij Tutaj

Co To Jest Xmlrpc.php?

XML-RPC to funkcja WordPressa, która umożliwia przesyłanie danych, z HTTP działającym jako mechanizm transportu, a XML jako mechanizm kodowania. Ponieważ WordPress nie jest samodzielnym systemem i czasami musi komunikować się z innymi systemami, szukano tego, aby poradzić sobie z tym zadaniem.

na przykład, załóżmy, że chcesz opublikować na swojej stronie z urządzenia mobilnego, ponieważ komputer nie był w pobliżu. Możesz użyć funkcji zdalnego dostępu włączonej przez xmlrpc.php, aby to zrobić.

podstawowe funkcje xmlrpc.PHP włączone pozwalały na łączenie się z witryną za pośrednictwem smartfona, wdrażanie trackbacks i pingbacks z innych witryn, a niektóre funkcje związane z wtyczką Jetpack.

Dlaczego Xmlrpc.PHP stworzone i jak było używane?

implementacja XML-RPC sięga początków WordPressa, zanim jeszcze stał się WordPressem.

w początkach internetu, kiedy połączenia były niesamowicie powolne, proces pisania i publikowania w Internecie był znacznie trudniejszy i bardziej czasochłonny. Zamiast pisać w samej przeglądarce, większość ludzi pisałaby offline,a następnie kopiowała i wklejała swoje treści do sieci. Mimo to proces ten był daleki od ideału.

rozwiązaniem (w tym czasie) było utworzenie klienta blogowania offline, w którym można było komponować treści, a następnie połączyć się z blogiem, aby je opublikować. Połączenie to zostało wykonane przez XML-RPC. Dzięki podstawowej strukturze XML-RPC wczesne aplikacje korzystały z tego samego połączenia, aby umożliwić ludziom logowanie się do swoich witryn WordPress z innych urządzeń.

XML-RPC obecnie

w 2008 roku, w wersji 2.6 WordPressa, pojawiła się opcja włączenia lub wyłączenia XML-RPC. Jednak wraz z wydaniem aplikacji na iPhone ’ a WordPress obsługa XML-RPC była domyślnie włączona i nie było opcji wyłączenia tego ustawienia. Pozostaje to prawdą do dnia dzisiejszego.

jednak funkcjonalność tego pliku znacznie spadła z czasem, a ogólny rozmiar pliku zmniejszył się z 83 Kb do 3 Kb, więc nie odgrywa on tak dużej roli, jak kiedyś.

przyszłość XML-RPC

dzięki nowemu interfejsowi API WordPress możemy oczekiwać, że XML-RPC zostanie całkowicie wyeliminowany. Obecnie to nowe API jest nadal w fazie próbnej i może być włączone tylko za pomocą wtyczki.

możesz jednak oczekiwać, że API zostanie zakodowane bezpośrednio w rdzeniu WordPress w przyszłości, co w większości wyeliminuje potrzebę xmlrpc.plik php w całości.

nowe API nie jest idealne, ale zapewnia bardziej niezawodne i bezpieczne rozwiązanie problemu, który xmlrpc.PHP adresowane.

Dlaczego Powinieneś Wyłączyć Xmlrpc.php

największe problemy z XML-RPC to problemy związane z bezpieczeństwem. Problemy nie dotyczą bezpośrednio XML-RPC, ale sposobu użycia pliku w celu umożliwienia ataku brute force na Twoją witrynę.

oczywiście, możesz chronić się niesamowicie silnymi hasłami i wtyczkami bezpieczeństwa WordPress. Ale najlepszym trybem ochrony jest po prostu wyłączenie go.

istnieją dwie główne słabości XML-RPC, które zostały wykorzystane w przeszłości.

pierwszy to użycie ataków brute force, aby uzyskać wejście na Twoją stronę. Atakujący spróbuje uzyskać dostęp do twojej witryny za pomocą xmlrpc.php przy użyciu różnych kombinacji nazwy użytkownika i hasła. Mogą skutecznie używać jednego polecenia do testowania setek różnych haseł. Pozwala im to ominąć narzędzia bezpieczeństwa, które zazwyczaj wykrywają i blokują ataki brute force.

drugi to odbieranie witryn w trybie offline poprzez atak DDoS. Hakerzy użyliby funkcji pingback w WordPress do natychmiastowego wysyłania pingbacków do tysięcy witryn. Ta funkcja w xmlrpc.php daje hakerom prawie nieskończoną ilość adresów IP do dystrybucji ataku DDoS.

aby sprawdzić, czy XML-RPC jest uruchomiony w Twojej witrynie, możesz go uruchomić za pomocą narzędzia o nazwie XML-RPC Validator. Uruchom witrynę za pomocą narzędzia, A Jeśli pojawi się komunikat o błędzie, oznacza to, że nie masz włączonego XML-RPC.

jeśli otrzymasz komunikat o sukcesie, możesz zatrzymać xmlrpc.php z jednym z dwóch poniższych podejść.

Metoda 1: Wyłączenie Xmlrpc.php z wtyczkami

wyłączenie XML-RPC w Twojej witrynie WordPress nie może być łatwiejsze.

po prostu przejdź do wtyczek ” Dodaj nową sekcję z poziomu pulpitu WordPress. Wyszukaj Wyłącz XML-RPC i zainstaluj wtyczkę, która wygląda jak obraz poniżej:

aktywuj wtyczkę i gotowe. Ta wtyczka automatycznie wstawi kod niezbędny do wyłączenia XML-RPC.

należy jednak pamiętać, że niektóre istniejące wtyczki mogą wykorzystywać części XML-RPC, więc całkowite wyłączenie go może spowodować konflikt wtyczek lub pewne elementy witryny przestają działać.

jeśli chcesz wyłączyć tylko niektóre elementy XML-RPC, ale nadal zezwalać na działanie niektórych wtyczek i funkcji, Użyj następujących wtyczek:

  • Zatrzymaj atak XML-RPC. Ta wtyczka zatrzyma wszystkie ataki XML-RPC, ale nadal pozwoli wtyczkom takim jak Jetpack i innym automatycznym narzędziom i wtyczkom zachować dostęp do xmlrpc.plik php.
  • Kontrola publikacji XML-RPC. Pozwala to zachować kontrolę i korzystać z opcji zdalnego publikowania oferowanej przez xmlrpc.php.

Metoda 2: Wyłączenie Xmlrpc.PHP ręcznie

jeśli nie chcesz korzystać z wtyczki i wolisz robić to ręcznie, Postępuj zgodnie z tym podejściem. Zatrzyma wszystkie przychodzące xmlrpc.żądania php, zanim zostanie przekazane na WordPress.

otwórz swoje .plik htaccess. Być może trzeba będzie włączyć „Pokaż ukryte pliki” w menedżerze plików lub kliencie FTP, aby zlokalizować ten plik.

w Twoim .plik htaccess, wklej następujący kod:

# Block WordPress xmlrpc.php requests<Files xmlrpc.php>order deny,allowdeny from allallow from xxx.xxx.xxx.xxx</Files>

Uwaga: Zmień xxx. xxx.xxx. xxx na adres IP, który chcesz zezwolić na dostęp xmlrpc.php lub całkowicie usunąć tę linię.

myśli końcowe

Ogólnie rzecz biorąc, XML-RPC był solidnym rozwiązaniem niektórych problemów, które wystąpiły z powodu zdalnego publikowania w witrynie WordPress. Jednak dzięki tej funkcji pojawiły się luki w zabezpieczeniach, które okazały się dość szkodliwe dla niektórych właścicieli witryn WordPress.

aby upewnić się, że Twoja witryna pozostaje bezpieczna, dobrym pomysłem jest wyłączenie xmlrpc.całkowicie php. Chyba że potrzebujesz niektórych funkcji potrzebnych do zdalnego publikowania i wtyczki Jetpack. Następnie należy użyć obejścia wtyczek, które pozwalają na te funkcje, a jednocześnie łatanie luk w zabezpieczeniach.

z czasem możemy spodziewać się, że funkcje XML-RPC zostaną zintegrowane z nowym API WordPress, które utrzyma zdalny dostęp i tym podobne, bez poświęcania bezpieczeństwa. Ale w międzyczasie dobrym pomysłem jest ochrona przed potencjalnymi lukami w zabezpieczeniach XML-RPC.

Dodaj komentarz

Twój adres e-mail nie zostanie opublikowany.