Jak wyłączyć interfejs API REST w WordPress

Opublikowany: 2023-05-28

Czy chcesz wyłączyć Rest API, ale nie wiesz, jak to zrobić? Nie martw się; jesteśmy z Tobą.

W tym artykule wyjaśnimy, jak wyłączyć Rest API w WordPress i dlaczego jest to niezbędny krok dla bezpieczeństwa Twojej witryny.

Czy wiesz, że Rest API to jeden z najczęstszych sposobów wykorzystywanych przez hakerów do uzyskiwania nieautoryzowanego dostępu do strony internetowej?

Według Sucuri, wiodącej firmy zajmującej się bezpieczeństwem witryn internetowych, 73% zhakowanych witryn WordPress w 2020 r. było spowodowanych wrażliwymi wtyczkami i motywami, przy czym Rest API jest jedną z głównych luk w zabezpieczeniach.

Jeśli zastanawiasz się, czym jest Rest API i dlaczego wyłączenie go jest kluczowe dla bezpieczeństwa Twojej witryny, czytaj dalej.

W tym artykule przedstawimy przewodnik krok po kroku, jak wyłączyć Rest API w WordPress i wyjaśnimy, dlaczego może to uniemożliwić hakerom wykorzystanie luk w zabezpieczeniach Twojej witryny.

Spis treści
Co to jest WordPress Rest API?
Dlaczego powinieneś wyłączyć interfejs API REST WordPress
Jak wyłączyć WordPress Rest API [2 metody]
Metoda 1: Użyj wtyczki
Metoda 2: Wyłącz WordPress Rest API bez wtyczki
Metoda 3: Ogranicz dostęp do WordPress Rest API
Często zadawane pytania
Wniosek

Co to jest WordPress Rest API?

WordPress Rest API to interfejs, który umożliwia programistom tworzenie aplikacji internetowych i mobilnych przy użyciu danych platformy WordPress.

Umożliwia pobieranie, aktualizowanie i usuwanie treści ze zdalnych lokalizacji poprzez generowanie żądań HTTP. Chociaż oferuje wiele korzyści, niektórzy użytkownicy mogą chcieć go wyłączyć ze względów bezpieczeństwa lub w innych celach.

Dlaczego powinieneś wyłączyć interfejs API REST WordPress

Jeśli jesteś właścicielem witryny WordPress, być może słyszałeś o funkcji REST API, która umożliwia programistom zdalny dostęp do danych witryny i wykonywanie działań.

Chociaż ta funkcja może być przydatna, stwarza również pewne zagrożenia bezpieczeństwa, dlatego wielu użytkowników decyduje się ją wyłączyć. Oto kilka powodów, dla których warto to rozważyć:

1. Nieautoryzowany dostęp: interfejs API REST może zapewnić dostęp do poufnych informacji, takich jak dane użytkownika i dane logowania. Jeśli Twoja witryna ma słabe środki uwierzytelniania lub autoryzacji, hakerzy mogą wykorzystać luki w zabezpieczeniach, aby uzyskać nieautoryzowany dostęp do Twojej witryny.

2. Ataki Brute Force: Po włączeniu interfejsu API REST osoby atakujące mogą używać zautomatyzowanych narzędzi do wysyłania powtarzających się żądań do punktów końcowych interfejsu API Twojej witryny, próbując odgadnąć prawidłowe nazwy użytkownika i hasła. Ten typ ataku może przeciążyć serwer i zagrozić bezpieczeństwu witryny.

3. Ataki DDoS: Hakerzy mogą również używać interfejsu API REST do przeprowadzania rozproszonych ataków typu „odmowa usługi” (DDoS), przeciążając serwer Twojej witryny nadmierną liczbą żądań.

Aby ograniczyć dostęp do WordPress REST API, możesz użyć wtyczek lub ręcznie dodać kod do pliku functions.php swojej witryny. Wyłączając REST API, możesz poprawić bezpieczeństwo swojej witryny i chronić ją przed potencjalnymi atakami.

Podsumowując, chociaż WordPress REST API może być pomocnym narzędziem dla programistów, ważne jest, aby rozważyć korzyści w stosunku do zagrożeń bezpieczeństwa. Podejmując kroki w celu ograniczenia dostępu do REST API, możesz zabezpieczyć swoją witrynę przed potencjalnymi zagrożeniami i zapewnić bezpieczeństwo danych.

Jak wyłączyć WordPress Rest API [2 metody]

Jeśli chcesz wyłączyć WordPress REST API, aby poprawić bezpieczeństwo i prywatność swojej witryny, dostępne są dwie metody. Pierwsza metoda polega na użyciu wtyczki, a druga polega na zmodyfikowaniu kodu witryny.

Obie metody są łatwe do naśladowania. Ograniczając dostęp do WordPress REST API, możesz chronić swoją stronę internetową przed potencjalnymi zagrożeniami bezpieczeństwa.

Metoda 1: Użyj wtyczki

Jeśli martwisz się o bezpieczeństwo swojej witryny WordPress, wyłączenie interfejsu API REST może być skutecznym środkiem. Na szczęście wykonanie tego zadania za pomocą wtyczek jest stosunkowo proste.

W tej sekcji pomożemy Ci wykorzystać wtyczkę Disable WP REST API do wyłączenia REST API w Twojej witrynie.

Wszystko, co musisz zrobić, to zainstalować i aktywować wtyczkę Wyłącz WP REST API z Wtyczki → Dodaj nowy .

Przejdź do Wtyczki → Dodaj nowe i zainstaluj Wyłącz WP REST API

Otóż ​​to! Po aktywacji wtyczka automatycznie zablokuje wszystkie żądania do REST API w Twojej witrynie dla wylogowanych użytkowników.

Używanie wtyczki w WordPress do restrykcyjnego dostępu API to łatwy i skuteczny sposób na wyłączenie REST API w witrynie WordPress.

Możesz sprawdzić, czy interfejs API REST jest faktycznie wyłączony w Twojej witrynie, korzystając z tego linku: yourwebsite.com/wp-json

Jeśli ten adres URL pokazuje taki błąd 401, oznacza to, że interfejs API REST jest wyłączony:

401 Błąd podczas uzyskiwania dostępu do WP-JSON

Metoda 2: Wyłącz WordPress Rest API bez wtyczki

W tej sekcji omówimy metodę wyłączenia WordPress Rest API bez użycia wtyczki. Jest to skuteczny sposób zabezpieczenia Twojej strony internetowej i uniemożliwienia nieautoryzowanego dostępu do wrażliwych danych.

Wykonaj następujące kroki, aby wyłączyć WordPress Rest API bez wtyczki:

KROK 1: Przejdź do Wygląd → Edytor plików motywu .

Przejdź do Wygląd → Edytor plików motywów i Otwórz functions.php.

KROK 2: Otwórz plik functions.php i wklej następujący kod do pliku:

 /** Disable REST API **/ // Filters for WP-API version 1.x add_filter('json_enabled', '__return_false'); add_filter('json_jsonp_enabled', '__return_false'); // Filters for WP-API version 2.x // add_filter('rest_enabled', '__return_false'); add_filter('rest_jsonp_enabled', '__return_false'); 
Wklej kod tutaj

Ten kod blokuje nieuwierzytelnione żądania interfejsu API REST od niezalogowanych użytkowników, skutecznie wyłączając dla nich interfejs API. Ten kod wyłącza również wp-json/wp/v2/users znany jako wersja 2.x WP API.

KROK 3: Zapisz i przetestuj zmiany

Jeśli wszystko działa poprawnie, powinieneś otrzymać komunikat o błędzie 401 Unauthorized podczas uzyskiwania dostępu do punktu końcowego jako niezalogowany użytkownik.

Metoda 3: Ogranicz dostęp do WordPress Rest API

W tej sekcji omówimy, jak ograniczyć dostęp do WordPress Rest API, co może pomóc poprawić bezpieczeństwo Twojej witryny.

Ograniczając dostęp, możesz uniemożliwić nieautoryzowanym prośbom dostęp do danych Twojej witryny za pośrednictwem interfejsu API.

Jeśli dodasz sprawdzanie is_user_logged_in do filtra rest_authentication_errors , będziesz mógł wymagać uwierzytelnienia dla wszystkich wywołań REST API.

Oto jak możesz to zrobić w kilku prostych krokach:

KROK 1: Uzyskaj dostęp do pliku functions.php .

KROK 2: Wklej następujący kod do pliku:

 add_filter( 'rest_authentication_errors', function( $result ) { // If a previous authentication check was applied, // pass that result along without modification. if ( true === $result || is_wp_error( $result ) ) { return $result; } // No authentication has been performed yet. // Return an error if user is not logged in. if ( ! is_user_logged_in() ) { return new WP_Error( 'rest_not_logged_in', __( 'You are not currently logged in.' ), array( 'status' => 401 ) ); } // Our custom authentication check should have no effect // on logged-in requests return $result; }); 
Wklej kod tutaj

Należy pamiętać, że parametr przychodzącego wywołania zwrotnego może zawierać wartość WP_Error lub wartość boolean . Typ parametru wskazuje stan procesu uwierzytelniania.

1. null: Uwierzytelnianie nie zostało jeszcze sprawdzone, a wywołanie zwrotne haka może zastosować uwierzytelnianie niestandardowe.

2. boolean: Metoda uwierzytelniania została wcześniej sprawdzona. Wartość true oznacza pomyślne uwierzytelnienie, a wartość false oznacza niepowodzenie uwierzytelnienia.

3. WP_Error: Wystąpił błąd.

KROK 3: Sprawdź swoją witrynę, aby upewnić się, że działa poprawnie.

Otóż ​​to! Dzięki tym prostym krokom ograniczyłeś dostęp do WordPress Rest API, dzięki czemu Twoja witryna jest bezpieczniejsza.

Ważna uwaga: ta metoda może mieć wpływ na niektóre wtyczki lub motywy, które opierają się na Rest API, więc po wprowadzeniu tej zmiany dokładnie przetestuj swoją witrynę.

Często zadawane pytania

Jaki jest cel wyłączenia Rest API w WordPress?

Wyłączenie interfejsu Rest API może pomóc w zwiększeniu bezpieczeństwa Twojej witryny, zapobiegając nieautoryzowanemu dostępowi do danych i funkcji witryny za pośrednictwem żądań Rest API.

Jak mogę wyłączyć Rest API w WordPress?

Istnieje kilka sposobów wyłączenia Rest API w WordPress, ale najłatwiejszą metodą jest użycie wtyczki, takiej jak Disable WP REST API, która pozwala łatwo wyłączyć Rest API bez żadnego kodowania.

Czy wyłączenie Rest API wpłynie na funkcjonalność mojej witryny?

Wyłączenie Rest API może wpłynąć na funkcjonalność niektórych wtyczek lub motywów, których prawidłowe działanie polega na żądaniach Rest API. Jednak większość wtyczek i motywów powinna nadal działać normalnie.

Wniosek

Omówiliśmy znaczenie wyłączenia Rest API w WordPress w celu zwiększenia bezpieczeństwa i prywatności witryny. Omówiliśmy krok po kroku proces wyłączania Rest API różnymi metodami. Postępując zgodnie z tymi metodami, możesz łatwo zabezpieczyć swoją witrynę przed potencjalnymi zagrożeniami.

Dziękujemy za poświęcenie czasu na przeczytanie tego artykułu i mamy nadzieję, że był on dla Ciebie pomocny. Jeśli masz jakieś pytania lub napotkałeś jakiekolwiek problemy podczas wykonywania czynności wymienionych w tym artykule, możesz zapytać nas w sekcji komentarzy poniżej. Nasz zespół jest zawsze tutaj, aby Ci pomóc.

Aby być na bieżąco z najnowszymi samouczkami i aktualnościami WordPress, śledź BetterStudio na Facebooku i Twitterze. Nasz zespół regularnie dzieli się przydatnymi wskazówkami i wskazówkami, aby pomóc właścicielom witryn zoptymalizować ich obecność w Internecie.