Tworzysz stronę internetową i potrzebujesz pomocy?

O tym jak ważne jest aktualizowanie każdego oprogramowania pisałem już nieraz. O tym, jak ważne jest aktualizowanie oprogramowania wystawionego na zewnątrz, gdzie – np. przez internet – dostępne jest dla każdego zapewne pisałem jeszcze więcej. Dlatego zakładam, że 2 relatywnie nowe błędy znalezione w WordPressie nie są dla Waszych stron żadnym zagrożenie, a przytaczam je tu tylko jako ciekawostkę… ;-)

Zdalne wykonanie kodu w WordPressie

Jakiś czas temu pisałem o błędzie w skrypcie PHPMailer, który znajduje się również w WordPressie. Błąd w skrypcie został załatany (4.7), i można by o sprawie zapomnieć, zwłaszcza że jego wykorzystanie nie było takie proste i wymagało kilku “zbiegów okoliczności”.

Niestety dla tych, co z jakichś powodów aktualizacji nie wykonują okazało się, że Dawid Golunski znalazł sposób na zdalne wykonanie kodu wykorzystując niezałataną bibliotekę PHPMailer, bez potrzeby liczenia na splot niefortunnych przypadków (CVE-2016-10033).

Nie znaczy to, że od razu każdy niezaktualizowany WordPress (w wersji 4.6 lub starszej) jest podatny, ale na pewno znacznie wzrosły szanse na to, że ktoś takiego WordPressa przejmie do swoich – zapewne niecnych – celów.


Próba resetu hasła dowolnego użytkownika w WordPressie

Za odkryciem drugiego błędu ponownie stoi Dawid Golunski, który opublikował teoretyczny sposób na zresetowania hasła dowolnego użytkownika (CVE-2017-8295) WordPressa (dotyczy również wersji 4.7.4). Brzmi poważnie, ale tym razem atakującemu musi sprzyjać nie tylko szczęście, ale i nierozważny użytkownik, którego konto zostało obrane za cel.

Atak polega na tym, że w pewnych okolicznościach możemy wymusić przesłanie linku z resetem hasła do/dla wybranego użytkownika, podstawiając swój/wybrany adres e-mail w miejsce adresu nadawcy ustawionego w WordPressie. Tak więc atakujący musi znać nazwę użytkownika (dlatego warto mieć inną nazwę do logowania, inną, która wyświetla się przy wpisach/komentarzach) oraz nakłonić ofiarę do przesłania – np. w formie odpowiedzi – otrzymanej wiadomości z linkiem do resetu hasła (zamiast do administratora strony, taka wiadomość trafi do atakującego, który podstawił swój adres e-mail w wiadomości), co niekoniecznie musi być takie proste…

Aktualizacja ma pojawić się niebawem, do tego czasu – o ile konfiguracja Waszego WordPressa i/lub webserwera sama z siebie nie uniemożliwia tego typu ataków – możecie w pliku functions.php dodać kilka linijek, które być może zabezpieczą Waszą stronę przed opisywaną modyfikacją nadawcy wiadomości:

add_filter( 'wp_mail_from', function( $email ) {
 return '[email protected]';
});

Oczywiście zamiast “[email protected]” wstawcie adres e-mail, którego WordPress ma używać jako adres nadawcy wiadomości e-mail.

(!) Zgłoś błąd na stronie | Lub postaw nam kawę :-)
LUTy dla D-Cinelike (DJI Mini 3 Pro, DJI Avata, OSMO Pocket) od MiniFly
Wdrożenie Omnibusa w sklepie na WooCommerce
Jak (legalnie) latać dronem w Kategorii Otwartej
Kurs "WordPress: Pierwsze kroki" (bezpłatna lekcja)
Patryk
Kurs "WordPress: Pierwsze kroki" (na dobry początek)