MODUŁ 0 - Przygotowanie do startu! 3... 2... 1...
MODUŁ 1 – Czy WordPress jest w ogóle dla mnie?
MODUŁ 2 - MYŚLENIE, czyli szykujemy się do starcia! ;)
MODUŁ 3 – Ogarniamy DZIAŁKĘ i tabliczkę z adresem
MODUŁ 4 – Działka jest. Czas na DOM, drzewo i…
MODUŁ 5 – Dodajemy TREŚCI, czyli niech wreszcie coś zacznie się dziać
MODUŁ 6 - BACKUPUJEMY, ZANIM ZEZPSUJEMY ;)
MODUŁ 7 - MOTYWY, CZYLI PEŁEN MAKE-UP DLA STRONY
MODUŁ 8 - WTYCZKI, CZYLI CO JESZCZE MOŻEMY ODPICOWAĆ
MODUŁ 9 – MY SIĘ WŁAMU NIE BOIMY! CZYLI ZABEZPIECZAMY CHATĘ
MODUŁ 10 – ZAMIATAMY PRZED SAMĄ METĄ IIII…. ŚWIĘTUJEMY FINISZ!
MODUŁ 11 – HOUSTON! MAMY PROBLEM! ROZWIĄZYWANIE PROBLEMÓW Z WORDPRESSEM

9.8. ZABEZPIECZAMY – blokujemy XML-RPC

wordpress bezpieczenstwo dezaktywacja pliku xml rpc

Temat bardzo ważny. BARDZO.

To jest lekcja, którą do tej pory wrzucałam tylko kursantkom kursu sklepowego (w sklepie to kompletny must), bo pracowałam razem z nimi osobiście i mogłam poprowadzić za rękę, ale jest to na tyle istotne, że w tej edycji kursu Stronę sobie robię dodaję też tę lekcję jako publiczną.

Zablokowanie XML-RPC to będzie coś, co się bardzo mocno przyczyni do bezpieczeństwa Waszej strony 💪

Temat może się może wydawać lekko przerażający 😱, ale postaramy się go ogarnąć tak bez zbytniego wgłębiania się w techniczne detale i może jakoś pójdzie 😉

To będzie coś jak z przykuwaniem zielonej kłódki do strony, bo też będzie trzeba raz wkleić kawałek kodu w plik .htaccess i zapomnieć o sprawie 🙂

❓ O co chodzi z tym XML-RPC?

Mam wrażenie, że nic ludzi nie straszy w tych informatycznych bebechach bardziej, niż skróty z literek 😀 SSL, XML, FTP, SSH, a teraz jeszcze XML-RPC 😀

Najogólniej XML-RPC to jest taki rodzaj protokołu, czyli sposobu wymiany danych, który jest wykorzystywany po to, żeby zewnętrzna aplikacje mogły zarządzać naszym WordPressem. Na przykład jakieś apki.

Problem w tym przypadku polega na tym, że często te zewnętrzne aplikacje to aplikacje internetowych rzezimieszków 😉, a zarządzanie WordPressem sprowadza się do jego zawirusowania 😉

Ostatnimi czasy prawdziwą zmorą jest wykorzystywanie tego protokołu do ataków na strony, bo za jego pomocą można to robić znacznie sprawniej 😭 Na przykład jeśli ktoś próbuje zgadnąć za pomocą bota jedną kombinację użytkownik-hasło, żeby się dostać do Waszego kokpitu, i normalnie taka jedna próba zajmuje mu sekundę (przykładowo, w rzeczywistości to znacznie szybsze), to z pomocą protokołu XML-RPC będzie mógł ich wypróbować w ciągu sekundy na przykład tysiąc. Czyli próby, które normalnie zajęłyby mu 3 lata, dzięki XML-RPC mogą mu zająć dzień 😱

Nieklawo.

Dodam, że był czas, kiedy miałam intensywne próby włamu na jeden z moich sklepów z biżuterią i wszystko szło po XML-RPC. Po zablokowaniu protokołu – problem ustał.

Jeszcze jakiś czas temu ten protokół był w WordPressie domyślnie wyłączony, no ale od wersji 3.5 już nie jest, więc warto go sobie samemu wyłączyć. Jeśli nie wiemy co to jest, to to jest najlepszy znak, że na 99,9% go nie potrzebujemy 😊

Tego protokołu będziecie jednak potrzebować, jeśli korzystacie z wtyczki Jetpack (nie polecam) oraz/lub apki WordPress/WooCommerce. Wtedy blokada XML-RPC sprawi, że nie będzie to to działać, więc Wasza robota zdecydować, co jest dla Was ważniejsze 😊

❓ Jak zablokować dostęp do XML-RPC?

Generalnie najprostszą i skuteczną metodą byłoby usunięcie pliku xmlrpc.php z serwera:

Zabezpieczanie WordPressa - blokowanie pliku xmlrpc.php (zablokowanie protokoło XML-RPC) w Menadżerze plików

Ten plik będzie w głównym katalogu domeny, na samym dole 🙂

Niestety, tylko “byłoby”, bo to wprawdzie skuteczne stuprocentowo, ale tylko do kolejnej aktualizacji WordPressa. Po aktualizacji ten plik znów pojawi się na serwerze, więc znów trzeba by go usunąć. Oczywiście jeśli mamy pewność, że po każdej aktualizacji go usuniemy, no to spoko, nie ma problemu, możemy na tym poprzestać 🙂

Natomiast jeśli istnieje cień szansy, że zapomnimy, warto zastosować raz a dobrze bardziej trwałe rozwiązanie, czyli…

📌 Zablokowanie XML-RPC w pliku .htaccess

To już nie powinno brzmieć jakoś strasznie, bo z plikiem .htaccess mieliśmy do czynienia już w lekcji 4.8 o certyfikacie SSL:
👉 4.8. Przykuwamy zieloną kłódkę do naszej strony na amen!

Nie będę więc powtarzać, jak go znaleźć na serwerze (znajdziecie w tamtej lekcji 😇), a napiszę tylko, że żeby zablokować go dla totalnie każdego, kto będzie chciał go wykorzystać, wystarczy do tego pliku, na przykład zaraz za # END WORDPRESS, dopisać regułę:

<Files xmlrpc.php> 
Order deny,allow 
Deny from all
</Files>

a potem zapisać zmiany:

Zabezpieczanie WordPressa - blokowanie pliku xmlrpc.php (zablokowanie protokoło XML-RPC) - wpis w pliku htaccess

I tyle, cała robota 🙂

Więcej gadania, niż klikania, nie? 😀

To właśnie jedna z tych rzeczy co niby drobiazg, a znacząco podniesie bezpieczeństwo strony 🙂

A jak sprawdzić, że się udało i XML-RPC rzeczywiście jest zablokowany?

Wystarczy wejść pod adres: https://twojadomena.pl/xmlrpc.php i sprawdzić co się wyświetli.

Czyli wchodzę na przykład pod https://hundredbookmarks.pl/xmlrpc.php i zerkam, co dostanę w odpowiedzi 🙂
Jeśli dostanę komunikat Forbidden:

Zabezpieczanie WordPressa - blokowanie pliku xmlrpc.php (zablokowanie protokoło XML-RPC) - XML-RPC zablokowane (Firefox)

albo 403 Forbidden:

Zabezpieczanie WordPressa - blokowanie pliku xmlrpc.php (zablokowanie protokoło XML-RPC) - XML-RPC zablokowane (Chrome)

to znaczy że wszystko działa należycie, to znaczy XML-RPC nie działa, bo dostęp do pliku xmlrpc.php jest skutecznie zablokowany 😊
Wtedy wiwatujemy 🎉🥂🍾

A jeśli dostaniemy w odpowiedzi, coś w stylu, że XML-RPC server accepts POST requests only:

Zabezpieczanie WordPressa - blokowanie pliku xmlrpc.php (zablokowanie protokoło XML-RPC) - XML-RPC wciąż włączony

to znaczy, że jest nadal dostęp do tego protokołu (a to źle) i należy zrobić krok wstecz i sprawdzić, co poszło nie tak.

Najczęściej to będzie źle przekopiowany kod – bez jakiegoś kawałka nawiasiku albo czegoś 🙂 Wtedy poprawiamy i już powinno działać (czyli nie działać 😉)

(a usuwać plik xml-rpc.php jak się go akurat ujrzy w menadżerze plików i tak można – robię to za każdym razem jak zoczę, że wrócił, dziad 😉 Ostrożności nigdy za wiele)

Kawa dla WordPressa

Ten kurs jest i zawsze będzie dla Was DARMOWY,
bo wierzę wiem, że warto sobie pomagać ❤

Totalnie nie musisz za nic płacić, ale jeśli masz chęć, możesz postawić mi kawę
Wypiję ją za sukces Twojej strony!

Pytania, odpowiedzi i komentarze
Zwiń komentarze

Hej, mi po przekopiowaniu pojawia się strona “This page doesn’t seem to exist.
It looks like the link pointing here was faulty. Maybe try searching? ” Ale generalnie można wchodzić w stopkę i headera.
Co zrobiłam??

Edyta Woźniak (Administrator) 2 października 2023 o 11:09

Obstawiam, że najpierw poszłaś tą pierwszą metodą, czyli usunęłaś ten plik, a potem zablokowałaś 🙂
Więc jak usunęłaś, to pokazuje, że go nie ma i wyrzuca błąd 404. Gdy się pojawi (po aktualizacji WordPressa) to dzięki zablokowaniu i tak nie będzie do niego dostępu – tylko wtedy nie pokaże Ci błędu 404, tylko właśnie info o braku dostępu 🙂

Szczerze to pierwsze blokowałam i nie działało więc wkurzona skasowałam 🫢🤣 martwiło mnie że się pokazała moja strona z detalami header footer i zamiast treści głównej ten błąd i do tego takie okienko Search a po rozwinięciu widziałam listę moich wtyk 🤯
Czyli pozostało czekać na aktualizację WP… ale jak mam ten kodzik wgrany to mogę się “czuć bezpiecznie” na ten moment?

Edyta Woźniak (Administrator) 2 października 2023 o 12:58

Opisujesz zwykłą stronę 404, więc to dobrze, że ona się wyświetla, jeśli plik skasowałaś – skasowanie jest najlepszą metodą jego unieszkodliwienia, wiadomo 😀
Natomiast nie powinna się wyświetlać żadna lista wtyczek 😱 Chyba, że mówisz o podpowiadajkach w wyszukiwarce – wtedy to jest widoczne tylko dla Ciebie i to są po prostu słowa, których wcześniej gdzieś szukałaś (i mogą to być nazwy wtyczek, jeśli szukałaś ich w repozytorium). Ale to będzie widoczne tylko dla Ciebie, a raczej – tylko w Twojej przeglądarce. Otwórz sobie stronę w oknie incognito i albo innej przeglądarce i sprawdź, czy znikną 🙂

Jeśli idzie o blokadę – jeśli została zrobiona poprawnie ot tak, będzie działać także po aktualizacji WordPressa 🙂

Podpowiadajki w wyszukiwarce – ototototo mi się pokazywało. Rzeczywiście nie pokazuje się na incognito. Wolałabym takie wielkie FORBIDDEN 403, czułabym się… bezpieczniejsza 🤣 a tak to -czy aby na pewno ….. że coś tu widać mojego, a jak jednak źleeeee?…No cóż taki los panikarza, czekam na aktualizację WP
Dziękuję za szybką pomoc ❤️

Na nowej stronie, którą teraz robię zadziałało, a na starej, którą robiłam z wcześniejszą wersją kursu Jest 404 🙁
Plik xmlrpc jest obecny.

Ponadto w pliku .htaccess po # END WordPress jest coś takiego:

# php — BEGIN cPanel-generated handler, do not edit
# Set the “ea-php83” package as the default “PHP” programming language.

AddHandler application/x-httpd-ea-php83___lsphp .php .php8 .phtml

# php — END cPanel-generated handler, do not edit

Nie wiem co to i skąd 🙁

Edyta Woźniak (Administrator) 24 czerwca 2024 o 12:35

To co jest w końcówce to ustawienie wersji PHP – to nie jest nic nienormalnego ani tym bardziej nic, co powinno nas martwić 🙂

404 wyskakuje, gdy strona nie istnieje. Jeśli nie usuwałaś pliku, przychodzi mi do głowy, że być może zrobiłaś literówkę w adresie www sprawdzając?

Napisz pytanie lub komentarz:

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

Scroll to Top