Ogranicz dostęp do API REST WordPress
Czas przejąć kontrolę nad WordPress REST API
English version: Restrict access to the WordPress REST API
WP Cerber Security pozwala ograniczyć lub całkowicie zablokować dostęp do WordPress REST API, które jest domyślnie włączone. Aby włączyć ochronę, przejdź do zakładki Hartowanie i włącz opcję Blokuj dostęp do API REST WordPress, z wyjątkiem któregokolwiek z poniższych . Blokuje to dostęp do API REST, chyba że przyznasz do niego dostęp w polach ustawień poniżej lub dodasz adres IP do Białej Listy Dostępu IP.
Jeśli używasz Contact Form 7, Jetpack lub innej wtyczki korzystającej z REST API, musisz dodać do białej listy jego przestrzenie nazw REST API, jak opisano poniżej.
Zezwól na dostęp do określonej przestrzeni nazw interfejsu API REST
Przestrzeń nazw interfejsu API REST jest częścią adresu URL żądania, która pozwala WordPressowi rozpoznać, jaki kod programu przetwarza określone żądanie interfejsu API REST. Aby uzyskać przestrzeń nazw, weź ciąg znaków pomiędzy /wp-json/ a następnym ukośnikiem w adresie URL REST. Każda wtyczka korzystająca z interfejsu API REST korzysta z własnej, unikalnej przestrzeni nazw. Poniższa tabela pokazuje przestrzenie nazw dla niektórych wtyczek.
Podłącz | Przestrzeń nazw |
Formularz kontaktowy 7 | contact-form-7 |
Formy kaldery | cf-api |
Yoast SEO | yoast |
Plecak odrzutowy | jetpack |
Określ wyjątki przestrzeni nazw dla interfejsu API REST, jeśli jest to potrzebne, jak pokazano na zrzucie ekranu
Zezwól swoim użytkownikom na korzystanie z interfejsu API REST
Włącz opcję Zezwalaj na interfejs API REST dla zalogowanych użytkowników , jeśli chcesz zezwolić na korzystanie z interfejsu API REST każdemu autoryzowanemu (zalogowanemu) użytkownikowi WordPress bez ograniczeń.
Ogranicz dostęp do API REST WordPress według adresów IP
Aby zezwolić na dostęp do API REST z określonego adresu IP lub sieci IP, dodaj je do Białej Listy Dostępu IP .
Aby całkowicie zablokować dostęp do REST API z określonego adresu IP lub sieci IP dodaj je do Czarnej Listy Dostępu IP .
Przeczytaj więcej: Używanie list dostępu IP do ochrony WordPressa
Jak zatrzymać wyliczanie użytkowników REST API
Aby zablokować dostęp do danych użytkowników oraz zatrzymać wyliczanie użytkowników poprzez REST API należy włączyć opcję Blokuj dostęp do danych użytkowników poprzez REST API w zakładce Hartowanie. Ta funkcja zabezpieczeń ma na celu wykrywanie i zapobieganie skanowaniu Twojej witryny przez hakerów w poszukiwaniu loginów użytkowników i wrażliwych danych użytkowników.
Gdy jest włączona, Cerber blokuje wszystkie żądania do interfejsu API REST i zwraca błąd HTTP 403. Możesz monitorować takie zdarzenia w zakładce Aktywność. Są one rejestrowane jako „Odrzucone żądanie do interfejsu API REST”.
Dostęp do danych użytkowników poprzez WordPress REST API jest udzielany zawsze w dwóch przypadkach:
- Dla kont administratorów, czyli jeśli włączona jest opcja „Zatrzymaj wyliczanie użytkowników” poprzez REST API, wszyscy użytkownicy z rolą administratora mają zawsze dostęp do danych użytkowników
- Dla wszystkich adresów IP na białej liście dostępu IP
Co to jest API REST?
W skrócie jest to technologia, która pozwala dwóm różnym fragmentom kodu (aplikacjom) komunikować się ze sobą i wymieniać dane w ustandaryzowany sposób. Korzystanie z interfejsu API REST umożliwia programistom tworzenie, odczytywanie i aktualizowanie treści WordPress z zewnętrznych aplikacji działających na komputerze zdalnym lub w witrynie internetowej. Interfejs API WP REST jest domyślnie włączony począwszy od wersji WordPress 4.7.0.
Przeczytaj więcej: Dlaczego ważne jest ograniczenie dostępu do API WP REST
Dokumentacja dla programistów: https://developer.wordpress.org/rest-api/
Czy wiesz, że możesz zdalnie zarządzać ustawieniami REST API na dowolnej liczbie serwisów? Włącz tryb głównej strony internetowej na głównej stronie Cerber.Hub i tryb zarządzanej strony internetowej na innych stronach internetowych, aby zarządzać wszystkimi instancjami WP Cerber z jednego pulpitu nawigacyjnego.
Kolejne kroki, które wzmocnią bezpieczeństwo Twojego WordPressa
- Jak blokować spamowe rejestracje użytkowników
- Jak blokować przesyłanie spamu z formularzy
- Jak zablokować użytkownika WordPress
- Jak zablokować dostęp z określonego adresu IP
- Jak wyłączyć używanie określonej nazwy użytkownika
Czym w ogóle jest Cerber Security? Jest to kompletne rozwiązanie zabezpieczające dla WordPressa, które rozwinęło się z prostej, ale skutecznej wtyczki ograniczającej liczbę prób logowania .
HansR ( )
OK. But how do I know whether a plugin uses the REST API so I have to add it to the namespace access-list?
Gregory ( )
1. From the documentation on a plugin.
2. Checking for REST API requests on the Live Traffic page: just click the small “REST API” button above the table.
3. If you know the REST API namespace that is used by a plugin you can search for requests by entering that REST API namespace on the Advanced search form in the “URL contains” field.
4. Disable REST API in the settings completely and check how the plugin works. If the plugin doesn’t work anymore, that means it uses REST API. To find out its namespace look for “Request to REST API denied” events the Activity page.
HansR ( )
Mmm… thnx, but that does not really make me happy. I checked e.g. the contact form and that worked because the REST API works for the administrator. For me small blogger with 22 plugins operational this becomes a nuisance and a lot of time and work. Can’t this be done automatically eg by suggesting or something?
And while we are talking, why should I not permit /oembed/ as a permitted namespace? It seems to be used by a robot (and of course Cerber blocks it correctly 🙂 ).
For other questions I will use the support blog as I normally do.
Sorry for the kind of abuse of this blog. Won’t do it again.