È stata trovata una vulnerabilità nel plugin di WordPress UpdraftPlus, che conta oltre 3 milioni di installazioni attive (CVE-2022-0633), che consentiva a un utente esterno di caricare una copia del database del sito, contenente non solo i contenuti, ma anche le impostazioni di tutti gli utenti e le hash delle password. Il problema è stato risolto nelle versioni 1.22.3 e 2.22.3, che si raccomanda di installare il prima possibile per tutti gli utenti di UpdraftPlus.
UpdraftPlus è presentato come il plugin di backup più popolare per siti web che utilizzano la piattaforma WordPress. A causa di una verifica dei diritti di accesso non corretta, il plugin consentiva di caricare il backup del sito e il relativo database non solo agli amministratori, ma a qualsiasi utente registrato sul sito, ad esempio a chi avesse lo status di abbonato.
Per il caricamento delle backup in UpdraftPlus viene utilizzato un identificatore generato in base al momento della creazione del backup e a una sequenza casuale (nonce). Il problema è che, a causa della mancanza di adeguati controlli nel gestore delle richieste heartbeat di WordPress, un utente può ottenere informazioni sull'ultimo backup tramite una richiesta appositamente formattata, incluse le informazioni sul tempo e sulla sequenza casuale associata.
Далее на основе полученной информации можно сформировать идентификатор и загрузить резервную копию, воспользовавшись методом загрузки по email. Используемая при данном методе функция maybe_download_backup_from_email требует обращения к странице options-general.php, доступной только администратору. Тем не менее, атакующий может обойти данное ограничение через спуфинг используемой при проверке переменной $pagenow и отправку запроса через служебную страницу, допускающую обращение непривилегированных пользователей. Например, можно обратиться через страницу отправки сообщения администратору, отправив запрос в виде «wp-admin/admin-post.php/%0A/wp-admin/options-general.php?page=updraftplus».
Fonte: opennet.ru
