Luka w WP Rest Api WordPress 4.7.0 i 4.7.1
Używasz WordPress w wersji 4.7.0 lub 4.7.1? Zaktualizuj go do nowszej wersji!. Inaczej strona będzie podatna na atak w interfejsie REST API.
Twórcy WordPress od wersji 4.7 wprowadzili pełną wersje REST API, dzięki czemu zewnętrzne aplikacje mogą odczytywać publiczne treści dostępne na stronie. Jeżeli skonfigurujemy także autoryzację to również możliwe jest modyfikowanie, dodawanie wpisów i stron. Oczywiście jest to bardzo dobra funkcjonalność ale niestety nie dopracowana.
Domyślnie taki interfejs jest włączony. Oznacza to tyle że każdy może odczytać takie wpisy. W Internecie jest mnóstwo serwisów, które odczytują treści bez wiedzy i zgody ich autorów i umieszczają na swoich stronach. O ile przy kanale RSS można ograniczyć takie artykuły do zajawki to przy REST API już nie.
Luka w WP REST API
Niedawno pojawił się błąd związany z rzutowaniem zmiennych w PHP który umożliwia edytowanie wpisu bez uprawnień. Na atak podatne są wersje 4.7.0 i 4.7.1. Oczywiście przypominamy że jest już wersja 4.7.2 także zachęcamy do aktualizacji!.
Wyłączenie REST API
Możemy także wyłączyć na stałe REST API jeżeli z niego nie korzystamy.
Wystarczy dodać do pliku functions.php następujący kod
1 2 3 4 5 | add_filter('rest_authentication_errors', 'egeek_disable_rest_api', 99); function egeek_disable_rest_api() { return new WP_Error('egeek_rest_api_disabled', 'REST API disables', array('status' => 403)); } |
Dzięki za info właśnie zaktualizowałem mojego WP.
Można też użyć wtyczki REST API Toolbox, która pozwala na wyłączenie całego REST API, ale również pojedynczych metod.
Dzięki