W wtyczce WordPress UpdraftPlus, która ma ponad 3 mln aktywnych instalacji, zidentyfikowano niebezpieczną lukę (CVE-2022-0633), która umożliwia zewnętrznemu użytkownikowi pobranie kopii bazy danych witryny, która oprócz treści zawiera parametry wszystkich użytkowników oraz hashe haseł. Problem został rozwiązany w wersjach 1.22.3 i 2.22.3, które należy jak najszybciej zainstalować wszystkim użytkownikom UpdraftPlus.
UpdraftPlus jest przedstawiane jako najpopularniejsza wtyczka do tworzenia kopii zapasowych witryn działających na platformie WordPress. Z powodu niewłaściwego sprawdzania uprawnień wtyczka pozwalała na pobranie kopii zapasowej witryny oraz związanej z nią bazy danych nie tylko administratorom, ale również każdemu zarejestrowanemu użytkownikowi witryny, na przykład mającemu status subskrybenta.
Aby pobrać kopie zapasowe w UpdraftPlus, używany jest identyfikator generowany na podstawie czasu utworzenia kopii zapasowej oraz losowej sekwencji (nonce). Problem polega na tym, że z powodu braku odpowiednich kontroli w obsłudze żądań heartbeat w WordPressie, przy pomocy specjalnie skonstruowanego żądania każdy użytkownik może uzyskać informacje o ostatniej kopii zapasowej, w tym dane o czasie oraz powiązanej losowej sekwencji.
Na podstawie uzyskanych informacji można utworzyć identyfikator i przesłać kopię zapasową, korzystając z metody przesyłania przez email. Funkcja maybe_download_backup_from_email używana w tej metodzie wymaga dostępu do strony options-general.php, dostępnej tylko dla administratora. Niemniej jednak, atakujący może obejść to ograniczenie przez spoofing zmiennej $pagenow używanej w weryfikacji oraz przesyłając żądanie przez stronę administracyjną, która dopuszcza dostęp dla użytkowników bez uprawnień. Na przykład, można skontaktować się przez stronę wysyłania wiadomości do administratora, wysyłając zapytanie w postaci „wp-admin/admin-post.php//wp-admin/options-general.php?page=updraftplus”.
Źródło: opennet.ru
