
PoC pour CVE-2024-1512 dans le plugin WordPress MasterStudy LMS.
CVE-2024-1512 expose une vulnérabilité critique dans le plugin WordPress MasterStudy LMS, plus précisément dans l'implémentation de la route REST /lms/stm-lms/order/items. Le problème provient de l'incapacité du plugin à échapper correctement le paramètre 'user', combinée à une préparation inadéquate des requêtes SQL. Par conséquent, les attaquants peuvent injecter du code SQL malveillant dans la requête en manipulant le paramètre 'user'. Cette vulnérabilité facilite une attaque par injection SQL basée sur UNION, où un attaquant ajoute des commandes SQL supplémentaires à la requête d'origine, permettant des interactions non autorisées avec la base de données. Ces interactions peuvent inclure l'extraction, la suppression ou la manipulation de données, représentant un risque significatif pour la confidentialité, l'intégrité et la disponibilité des données. L'exploitation de cette vulnérabilité ne nécessite pas d'authentification, ce qui la rend particulièrement dangereuse car tout attaquant distant capable d'envoyer des requêtes HTTP au site affecté peut tenter l'attaque.
Exploitation avec sqlmap, en remplaçant http://example.com par l'URL cible.
sqlmap -u 'http://example.com/?rest_route=/lms/stm-lms/order/items&author_id=111&user=555' --dbs --batch -p user
Le script Go fourni dans le dépôt peut être utilisé pour détecter la présence de cette vulnérabilité en mesurant le temps de réponse à une charge utile d'injection SQL conçue. L'outil construit une URL en ajoutant une charge utile d'injection SQL à l'URL de base fournie en argument. Il effectue ensuite une requête HTTP GET vers cette URL. Si le temps de réponse est significativement plus long que la normale (l'exemple utilise 5 secondes comme référence), cela suggère que la tentative d'injection SQL a peut-être réussi, indiquant une vulnérabilité potentielle.
go run main.go http://example.com
Mettez à jour le plugin WordPress MasterStudy LMS vers une version ultérieure à 3.2.5, où cette vulnérabilité a été corrigée. Validez et nettoyez toujours rigoureusement les paramètres d'entrée pour prévenir les vulnérabilités d'injection SQL.
NVD - CVE-2024-1512 Détail
Tenable - CVE-2024-1512
Wordfence Avis de sécurité - Vulnérabilité du plugin MasterStudy LMS