Preorder drugiego tomu książki sekuraka: Wprowadzenie do bezpieczeństwa IT. -15% z kodem: sekurak-book
WordPress wymusił instalację aktualizacji pluginu na paru milionach instalacji. Każdy nisko uprzywilejowany użytkownik mógł mieć dostęp do backupu
Podatność występowała w pluginie UpdraftPlus (przeszło 3 miliony instalacji). WordPress zdecydował się na dość nietypowy krok – czyli wymuszenie aktualizacji, a wg statystyk, aktualizację zainstalowało blisko 2 miliony serwisów:
Jaka była istota podatności? Problem ze sprawdzeniem uprawnień. Każdy użytkownik mający konto w WordPressie mógł wysłać odpowiednie żądanie (żądania) HTTP, które dawało mu dostęp do backupu:
The attack starts with the WordPress heartbeat
function. The attacker needs to send a specially crafted heartbeat request containing a data[updraftplus]
parameter. By supplying the appropriate subparameters, an attacker is able to obtain a backup log containing a backup nonce and timestamp which they can then use to download a backup.
Poprawka dostępna jest w wersjach: 1.22.4 lub 2.22.4.
PS
Jeśli ktoś znajdzie info na stronach WordPressa w jaki sposób mogą oni wymusić aktualizację, dajcie znać w komentarzu.
~Michał Sajdak
Wygląda na to, że pobieranie informacji o aktualizacjach jest częścią cronjobów odpalanych przez WordPressa – https://wordpress.org/support/article/configuring-automatic-background-updates/.
Pluginów w szczególności dotyczy to zdanie:
„By default, automatic background updates only happen for plugins and themes in special cases, as determined by the WordPress.org API response, which is controlled by the WordPress security team for patching critical vulnerabilities.”
Ja na szczęście wyłączyłem autoupdate, zżerało mi za dużo zajętości procesora. Sprawdzam ręcznie 2 razy w tygodniu 🤗