REST API wiązało się z dużymi nadziejami na modernizację i poprawę wydajności WordPress. Jestem wielkim fanem, ale jeśli nie rozumiesz, jak działa API, może to prowadzić do błędów, które kończą się dużymi lukami w zabezpieczeniach Twojej witryny, zwłaszcza jeśli nie jesteś programistą.

W tym poście chcę podzielić się niektórymi typowymi błędami użytkowników, którzy nie znają interfejsu WordPress REST API, abyś mógł chronić swoją witrynę.

Elementary API drogi Watsonie

Co to jest WordPress REST API? WordPress REST API działa jak Most, który może łączyć szeroką gamę aplikacji z WordPress.

Brzmi skomplikowanie? Dzięki edytorowi Gutenberga w końcu zaczynamy dostrzegać na dużą skalę, co jest możliwe, gdy WordPress korzysta z interfejsu REST API do działania wraz z nowszymi technologiami.

Struktura JSON API jest łatwa do zrozumienia dla komputerów i ludzi, dzięki czemu jest łatwiejsza w użyciu za pomocą środków programowych. A spokojny styl architektoniczny oznacza, że można z nim łączyć szeroką gamę zastosowań.

Możesz użyć API do Pobierz dane witryny, dzięki czemu można je pokazać w innym formacie. Możesz też podnieść poprzeczkę i użyć interfejsu API do zdalnej kontroli witryny, wysyłając polecenia, takie jak tworzenie, aktualizowanie i usuwanie. Razem tworzą one akronim CRUD i można ich używać na następujących:

  • Posty
  • Post Revisions
  • Kategorie
  • Tagi
  • Strony
  • Komentarze
  • Taksonomia
  • Media
  • Użytkownicy
  • Typy Postów
  • Statusy Postów
  • Ustawienia
Screenshot of Gutenberg Editor
Gutenberg używa WordPress REST API do tworzenia i aktualizacji postów

Przy tak dużej mocy możesz zobaczyć, dlaczego WordPress REST API jest tak cennym nabytkiem dla hakerów. Dzięki dostępowi do interfejsu API witryny mogą zdalnie kontrolować całą witrynę.

Są to pułapki, w których początkujący najprawdopodobniej popełnią błąd i mimowolnie otworzą exploity:

  1. Wyświetlanie poufnych informacji, ponieważ nie są świadomi, że interfejs REST API domyślnie pokazuje wszystkie dane
  2. Korzystanie z podstawowego uwierzytelniania w witrynie na żywo i mimowolne ujawnianie danych logowania
  3. Nie wykorzystanie szyfrowanego połączenia do uwierzytelniania

Mówimy o hakerach tworzących backdoory, ale w tych przypadkach jest to bardziej podobne do ciebie, gdy administrator zostawił to odblokowane.

Przejrzyjmy każdą z nich.

Jak zbudować niestandardowe dodatki Forminator za pomocą API programisty

Wyświetlanie poufnych informacji przez pomyłkę

Tak jak posty i strony są domyślnie widoczne w witrynie WordPress, WordPress REST API jest również domyślnie włączone. Możesz zobaczyć dane dla swoich postów, stron, kategorii, tagów, mediów itp.

Aby zobaczyć dane JSON witryny WordPress, wpisz adres url witryny, a następnie wp-json/wp / v2 / posts w przeglądarce. To będzie wyglądać tak https://tuts.wpmudev.host / wp-JSON / wp / v2 / posts ale z Twoim adresem URL zamiast tuts.wpmudev.gospodarz. Widzisz te wszystkie dane? Każdy może to zobaczyć.

Screenshot of WP REST API JSON data
Istnieją narzędzia, takie jak listonosz, które ułatwiają czytanie

Jeśli używasz postów WordPress do przechowywania poufnych informacji, Dane te zostaną ujawnione za pomocą interfejsu API. Może się to zdarzyć, nawet jeśli ograniczasz zawartość do określonych użytkowników lub ukrywasz zawartość za paywall, dlatego ważne jest, aby sprawdzić, co jest widoczne.

Możesz nieumyślnie ujawniać dane, które naruszają politykę prywatności firmy, HIPAA lub RODO.

Jak krótko wspomniałem, niektóre motywy, wtyczki, a nawet Gutenberg wykorzystują WordPress REST API, więc chcesz uniknąć wtyczek, które całkowicie go wyłączają.

Ultimate Guide to the 60 Best Security Resources for WordPress

Korzystanie z podstawowego uwierzytelniania w witrynie NA ŻYWO

Uwierzytelnianie ma na celu odpowiedź na pytanie, czy ta osoba jest autentyczna? Czy są tym, za kogo się podają? To sposób na potwierdzenie tożsamości. Weryfikacja nazw użytkowników i haseł, dwuskładnikowa uwierzytelnianie rozumiesz.

Nie wszystkie żądania do interfejsu API REST WordPress wymagają uwierzytelnienia. Pobieranie postów, na przykład, nie. Usuwanie użytkowników, moderowanie komentarzy, tworzenie nowego posta do.

Screenshot of Postman error trying to delete post without authentication
Bez odpowiedniego uwierzytelnienia nie można usuwać postów

Jeśli korzystasz z interfejsu API REST WordPress, możesz zrezygnować z uwierzytelniania plików cookie dostarczanego z WordPress. Jeśli używasz interfejsu API REST WordPress z zewnętrznego klienta, takiego jak inna witryna WordPress lub aplikacja niestandardowa, musisz skonfigurować inną formę uwierzytelniania.

Masz kilka opcji, możesz użyć OAuth, JSON Web tokens lub Basic Auth. Basic auth to ten, na który chcę zwrócić twoją uwagę, ponieważ nie jest odpowiedni do każdej sytuacji.

W przypadku uwierzytelniania podstawowego Twoja nazwa użytkownika i hasło są wysyłane wraz z każdym żądaniem w nagłówku, aby wszyscy mogli je zobaczyć. Jeśli to brzmi niemądrze, to masz całkowitą rację.

Kompletny przewodnik po zabezpieczeniu hasłem WordPress

Nigdy nie należy używać uwierzytelniania podstawowego w aktywnej witrynie i ryzykować ujawnienie danych logowania administratora. Uwierzytelniania podstawowego należy używać tylko w chronionym środowisku, na przykład podczas rozwiązywania problemów z witryną lokalną.

Nie Wysyłanie Żądań Przez Szyfrowanie

2018 był rokiem, w którym Google rozpoczęło oznaczanie wszystkich witryn, które nie mają certyfikatu SSL.

Zakładam, że już go masz, ale jeśli nie, to na co czekasz?!? Obecnie możesz uzyskać certyfikat SSL za darmo za pośrednictwem większości zarządzanych hostów. WPMU DEV hosting oferuje darmowe SSL, nawet dla wielu witryn z mnóstwem domen. Wypróbuj za darmo.

Ponieważ WordPress REST API działa jak Most, chcesz chronić to połączenie przed atakiem man-in-the-middle. Aby to zrobić, nie tylko Twoja witryna WordPress nie musi mieć certyfikatu SSL, ale także twój zewnętrzny klient (jeśli go używasz).

Najlepszy przewodnik po bezpieczeństwie WordPress

Zasadniczo musisz chronić połączenie z obu końców, aby cała komunikacja była szyfrowana. 

Upewnij się również, że całe uwierzytelnianie jest wysyłane za pośrednictwem protokołu HTTPS, aby każdy, kto nasłuchuje, widział tylko zaszyfrowane dane. Ma to kluczowe znaczenie, ponieważ proces uwierzytelniania polega na wysyłaniu i odbieraniu poświadczeń logowania.

Trzecia ślepa API

Jak widzieliśmy, WordPress REST API jest dość wzmocniony, o ile używasz go w sposób, w jaki został zaprojektowany.

Czy WordPress Jest Bezpieczny?

WP REST API jest częścią rdzenia WordPress od wersji 4.4, a oprócz jednej instancji, WP REST API nie miało żadnych innych problemów z bezpieczeństwem. Zapukaj do drewna.

Muszę powiedzieć, że kiedy API zostało dodane do rdzenia, myślałem, że zobaczymy dużo więcej fajnych rzeczy budowanych z API WordPress. Naprawdę?

Nadal czuję, że jest to jeden z najbardziej niewykorzystanych składników WordPress. I mam nadzieję, że każdy, kto uważa, że Gutenberg nie spełnia ich potrzeb, spróbuje stworzyć własnego admina. Przyjazny dla urządzeń mobilnych edytor front end byłby niesamowity 😉 daj WP REST API inny wygląd.

Nawet jeśli nie jesteś programistą, teraz, gdy wiesz, czego nie robić, zachęcam do zapoznania się z podręcznikiem WP REST API i rozpoczęcia grzebania. A jeśli zepsujesz coś na swojej stronie, nasza pomoc 24/7 jest tutaj, aby ci pomóc. Jeśli nie jesteś członkiem, zacznij za darmo.

Do ciebie, czy masz jakieś wskazówki dotyczące korzystania z WordPress REST API?

Tagi:

You May Also Like

Jak naprawić nieprawidłowy błąd JSON w WordPress (Przewodnik dla początkujących)

W artykule: Co powoduje błąd “nieprawidłowa odpowiedź JSON” w WordPress?1. Sprawdź adresy…

Jak naprawić błąd krytyczny w WordPress (krok po kroku)

W artykule: Co To jest błąd krytyczny w WordPress?Co powoduje krytyczny błąd…

Jak zmienić kolor linku w WordPress (poradnik dla początkujących)

W artykule: Dlaczego Linki Są Ważne?Jak dodawać linki w postach i stronach…

9 Najlepsze Darmowe Wtyczki WordPress Author Bio Box

W artykule: 1. Simple Author Box2. Branda3. Autor postu WP4. Author Bio…