
Un exploit de Preuve de Concept (PoC) pour CVE-2024-10924, une vulnérabilité dans le plugin WordPress Really Simple SSL qui permet de contourner l'authentification à deux facteurs (2FA). Inclut des techniques d'atténuation pour sécuriser les sites WordPress affectés.
📌 Aperçu
Ce dépôt contient un exploit de type Proof-of-Concept (PoC) pour CVE-2024-10924, une vulnérabilité dans le plugin WordPress Really Simple SSL qui permet de contourner l'authentification à deux facteurs (2FA). Les attaquants peuvent exploiter cette faille pour se connecter en tant que n'importe quel utilisateur disposant d'un ID valide.
🚨 AVERTISSEMENT : Cet exploit est destiné uniquement à des fins éducatives et de recherche. Toute utilisation non autorisée contre des systèmes que vous ne possédez pas est illégale.
🚀 Utilisation de l'exploit
Prérequis :
Installation : Clonez le dépôt : | $ git clone https://github.com/h8sU/wordpress-cve-2024-10924-exploit.git $ cd wordpress-cve-2024-10924-exploit
Exécution de l'exploit : $ python exploit.py <target_url> <user_id>
Exemple : $ python exploit.py http://web.com 1
Cela envoie une requête conçue pour contourner l'authentification 2FA pour l'user_id spécifié.
🛡️ Atténuation et correctifs
Comment sécuriser votre site WordPress :
Mettez à jour le plugin - Assurez-vous que « Really Simple SSL » est mis à jour vers la dernière version où la vulnérabilité est corrigée.
Restreignez l'accès à l'API REST - Utilisez des plugins de sécurité comme Wordfence pour limiter les accès non autorisés à l'API.
Validez correctement les nonces - Assurez-vous que les nonces sont requis et validés côté serveur avant d'exécuter des actions critiques.
Utilisez des mécanismes d'authentification forts - Mettez en œuvre des couches de sécurité supplémentaires comme des pare-feu d'application web (WAF).
Surveillez les journaux d'accès - Vérifiez vos journaux pour des requêtes API suspectes vers rest_route=/reallysimplessl/v1/two_fa/skip_onboarding.
Appliquez un correctif de code - Assurez-vous que la fonction skip_onboarding vérifie correctement l'authentification de l'utilisateur et la validation des nonces. L'extrait de code suivant montre un correctif recommandé :
try { $this->check_login_and_get_user($parameters->user_id, $parameters->login_nonce); } catch (Exception $e) { return new WP_REST_Response(['error' => $e->getMessage()], 403); }
En appliquant ce correctif, les requêtes non autorisées seront refusées avec une réponse 403 Forbidden.
⚠️ Avis de non-responsabilité
Ce projet est destiné uniquement à des fins éducatives et de recherche en sécurité. Toute tentative non autorisée d'exploiter des systèmes en production sans permission est illégale et pourrait entraîner de graves conséquences juridiques. Utilisez-le de manière responsable.