Ogranicz dostęp do interfejsu 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óry jest domyślnie włączony. Aby włączyć ochronę, przejdź do zakładki Hardening i włącz Block access to WordPress REST API except any of the following . Zablokuje to dostęp do REST API, chyba że udzielisz do niego dostępu w polach ustawień poniżej lub dodasz adres IP do White IP Access List.
Jeśli używasz Contact Form 7, Jetpack lub innej wtyczki wykorzystującej interfejs API REST, musisz dodać jej przestrzenie nazw interfejsu API REST do białej listy, jak opisano poniżej.
Zezwalaj na dostęp do określonej przestrzeni nazw REST API
Przestrzeń nazw REST API jest częścią adresu URL żądania, która umożliwia WordPressowi rozpoznanie, jaki kod programu przetwarza określone żądanie REST API. Aby uzyskać przestrzeń nazw, należy wziąć ciąg między /wp-json/ a następnym ukośnikiem w adresie URL REST. Należy pamiętać, że każda wtyczka wykorzystująca REST API używa własnej unikalnej przestrzeni nazw. Poniższa tabela przedstawia przestrzenie nazw niektórych wtyczek.
Wtyczka | Przestrzeń nazw |
Formularz kontaktowy 7 | contact-form-7 |
Formy kaldery | cf-api |
SEO Yoast | yoast |
Plecak odrzutowy | jetpack |
Formy grawitacyjne | gf |
Określ wyjątki przestrzeni nazw dla interfejsu API REST, jeśli jest to konieczne, jak pokazano na zrzucie ekranu
Zezwól swoim użytkownikom na korzystanie z interfejsu API REST
Włącz opcję Zezwalaj na interfejs API REST zalogowanym użytkownikom , jeśli chcesz zezwolić na korzystanie z interfejsu API REST każdemu autoryzowanemu (zalogowanemu) użytkownikowi WordPressa bez ograniczeń.
Ogranicz dostęp do interfejsu API REST WordPress według adresów IP
Aby zezwolić na dostęp do interfejsu API REST z określonego adresu IP lub sieci IP, należy dodać go do białej listy dostępu IP .
Aby całkowicie zablokować dostęp do interfejsu REST API z określonego adresu IP lub sieci IP, należy dodać go do czarnej listy dostępu IP .
Przeczytaj więcej: Korzystanie z list dostępu IP w celu ochrony WordPressa
Jak zatrzymać wyliczanie użytkowników interfejsu API REST
Aby zablokować dostęp do danych użytkowników i zatrzymać enumerację użytkowników za pośrednictwem interfejsu API REST, należy włączyć ustawienie Blokuj dostęp do danych użytkowników za pośrednictwem interfejsu API REST na karcie Utwardzanie. Ta funkcja bezpieczeństwa została zaprojektowana w celu wykrywania i zapobiegania skanowaniu witryny przez hakerów w poszukiwaniu loginów użytkowników i poufnych danych użytkowników.
Gdy jest włączona, Cerber blokuje wszystkie żądania do REST API i zwraca błąd HTTP 403. Możesz monitorować takie zdarzenia na karcie Aktywność. Są one rejestrowane jako „Żądanie do REST API odrzucone”.
Dostęp do danych użytkowników za pośrednictwem interfejsu API REST WordPress jest zawsze udzielany w dwóch przypadkach:
- W przypadku kont administratorów, co oznacza, że jeśli włączona jest opcja „Zatrzymaj wyliczanie użytkowników” za pośrednictwem interfejsu API REST, wszyscy użytkownicy z rolą administratora zawsze mają dostęp do danych użytkowników
- Dla wszystkich adresów IP na Białej Liście Dostępu IP
Czym jest REST API?
Krótko mówiąc, jest to technologia, która pozwala dwóm różnym fragmentom kodu (aplikacjom) komunikować się ze sobą i wymieniać dane w ujednolicony sposób. Korzystanie z REST API umożliwia deweloperom tworzenie, odczytywanie i aktualizowanie treści WordPress z zewnętrznych aplikacji działających na zdalnym komputerze lub stronie internetowej. WP REST API jest domyślnie włączone od wersji WordPress 4.7.0.
Przeczytaj więcej: Dlaczego ważne jest ograniczenie dostępu do interfejsu API REST WP
Dokumentacja dla programistów: https://developer.wordpress.org/rest-api/
Czy wiesz, że możesz zarządzać ustawieniami REST API na dowolnej liczbie stron internetowych zdalnie? 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 wystąpieniami WP Cerber z jednego pulpitu.
Następne kroki, które wzmocnią bezpieczeństwo Twojego WordPressa
- Jak zablokować rejestracje użytkowników będących spamem
- Jak blokować przesyłanie formularzy spamowych
- Jak zablokować użytkownika WordPressa
- Jak zablokować dostęp z określonego adresu IP
- Jak wyłączyć używanie określonej nazwy użytkownika
Czym właściwie jest Cerber Security? To kompletne rozwiązanie bezpieczeństwa dla WordPressa, które rozwinęło się z prostej, ale skutecznej wtyczki limitującej próby logowania .
OK. But how do I know whether a plugin uses the REST API so I have to add it to the namespace access-list?
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.
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.