Ograniczenie dostępu do REST API WordPress
Czas przejąć kontrolę nad API REST WordPress
English version: Restrict access to the WordPress REST API
WP Cerber Security pozwala ograniczyć lub całkowicie zablokować dostęp do API REST WordPress, który jest domyślnie włączony. Aby włączyć ochronę, przejdź do karty Utwardzanie i włącz Blokuj dostęp do interfejsu API REST WordPress z wyjątkiem poniższych .
Jeśli używasz Contact Form 7, Jetpack lub innej wtyczki korzystającej z REST API, musisz dodać do białej listy swoje obszary nazw API REST, jak opisano poniżej.
Zezwól na dostęp do określonej przestrzeni nazw API REST
Co to jest przestrzeń nazw? Przestrzeń nazw jest częścią adresu URL żądania, który pozwala WordPress rozpoznać, która wtyczka lub część kodu musi spełniać określone żądanie interfejsu API REST. Aby uzyskać przestrzeń nazw, weź ciąg między / wp-json / a następnym ukośnikiem w URL REST. Każda wtyczka wykorzystująca REST API używa własnej unikalnej przestrzeni nazw. Poniższa tabela pokazuje przestrzenie nazw niektórych wtyczek.
Podłącz | Przestrzeń nazw |
Formularz kontaktowy 7 | contact-form-7 |
Formy Caldera | cf-api |
Yoast SEO | yoast |
Jetpack | jetpack |
Określ wyjątki przestrzeni nazw dla REST API, jeśli jest to konieczne, jak pokazano na zrzucie ekranu
Pozwól swoim użytkownikom korzystać z REST API
Włącz Zezwalaj na REST API dla zalogowanych użytkowników, jeśli chcesz zezwolić na używanie REST API dla dowolnego autoryzowanego (zalogowanego) użytkownika WordPress bez ograniczeń.
Ogranicz dostęp do interfejsu API REST WordPress przez adres IP lub sieć IP
Aby zezwolić na dostęp do REST API dla określonego adresu IP lub sieci IP, dodaj je do Białej listy dostępu IP.
Aby zablokować dostęp do interfejsu API REST dla określonego adresu IP lub sieci IP, dodaj je do listy dostępu Czarnego IP.
Czytaj więcej: Korzystanie z list dostępu IP w celu ochrony WordPress
Ochrona przed wyliczaniem użytkowników interfejsu API REST
Aby zatrzymać wyliczanie użytkowników i zablokować dostęp do danych użytkowników za pomocą interfejsu API REST, wystarczy włączyć opcję Zatrzymaj wyliczanie użytkowników na karcie Hardening WordPress. Ta funkcja zabezpieczeń ma na celu wykrywanie i zapobieganie skanowaniu witryny przez hakerów pod kątem nazw użytkowników i danych użytkownika. Gdy jest włączona, Cerber Security blokuje zarówno wyliczanie użytkowników REST API, jak i tradycyjne żądania wyliczania użytkowników dla stron archiwum autora z adresem URL takim jak /? Tak więc nikt nie będzie miał dostępu do danych użytkownika za pośrednictwem interfejsu API REST, chyba że zezwolisz na dostęp do nich, jak opisano powyżej.
Co to jest REST API?
W skrócie jest to technologia, która pozwala dwóm różnym fragmentom kodu (aplikacjom) rozmawiać ze sobą i wymieniać dane w standardowy sposób. Korzystanie z REST API umożliwia programistom tworzenie, odczytywanie i aktualizowanie treści WordPress z zewnętrznych aplikacji działających na innym komputerze lub stronie internetowej. Interfejs API REST WP jest domyślnie włączony, począwszy od wersji WordPress 4.7.0.
Czytaj więcej: Dlaczego ważne jest ograniczenie dostępu do API WP REST
Dokumentacja programistów: https://developer.wordpress.org/rest-api/
Kolejne kroki, które wzmocnią Twoje bezpieczeństwo WordPress
- Jak blokować rejestracje użytkowników spamu
- Jak blokować wysyłanie spamu
- Jak zablokować użytkownika WordPress
- Jak zablokować dostęp z określonego adresu IP
- Jak wyłączyć przy użyciu określonej nazwy użytkownika
Co to jest Cerber Security? Jest to kompletne rozwiązanie bezpieczeństwa dla WordPress, które rozwinęło się z prostej, ale skutecznej wtyczki prób 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.