Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
CVE-2025-56381 — ERPNEXT v15.67.0 s'est avéré contenir de multiples vulnérabilités d'injection SQL dans le point de terminaison /api/method/frappe.desk.reportview.get via les paramètres order_by et group_by. | Kitploit
Outils/GitHubGitHub/moalali/cve-2025-56381
Analyse des VulnérabilitésExploitationExploitation d'Applications WebTests d'IntrusionApprentissage et Éducation
GitHubmoalali/cve-2025-56381

CVE-2025-56381

ERPNEXT v15.67.0 s'est avéré contenir de multiples vulnérabilités d'injection SQL dans le point de terminaison /api/method/frappe.desk.reportview.get via les paramètres order_by et group_by.

Voir le dépôt
1il y a 10 moisPas encore vérifié

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

CVE-2025-56381 — Injection SQL authentifiée dans ERPNext / Frappe via les paramètres order_by et group_by

📌 Résumé ERPNext v15.67.0 et Frappe Framework v15.72.4 contiennent plusieurs vulnérabilités d'injection SQL authentifiées dans le point de terminaison API frappe.desk.reportview.get. Une entrée malveillante dans les paramètres order_by ou group_by peut être utilisée pour injecter et exécuter des instructions SQL arbitraires. Cela permet à un utilisateur authentifié (avec un accès de base aux rapports) d'extraire des données sensibles, d'effectuer une énumération de la base de données, et potentiellement de manipuler ou d'élever ses privilèges au sein du système.


🛠 Détails techniques

  • Type de vulnérabilité : Injection SQL (CWE-89)

  • Produit(s) concerné(s) : ERPNext / Frappe

  • Versions concernées :

    • Frappe — 15.72.4
    • ERPNext — 15.67.0
  • Point de terminaison concerné :

    root@kitploit:~
    POST /api/method/frappe.desk.reportview.get
    
  • Paramètres vulnérables :

    • order_by
    • group_by
  • Authentification requise : Oui (session valide via le cookie sid)

  • Type d'attaque : À distance

  • Gravité : Élevée (exécution de code SQL, exfiltration de données, élévation de privilèges potentielle)

  • Score CVSS v3.1 estimé : 8,6 (Élevé) — estimation ; le score final doit être attribué par l'autorité officielle du CVE.

  • Statut : Non corrigé (au moment de la divulgation)

  • Découvert par : Mohammed Aloli (GitHub, X, LinkedIn)

  • Identifiant CVE : CVE-2025-56381


  • 🚀 Preuve de concept (PoC) — Injection SQL basée sur les erreurs

    image

    ✅ Testez uniquement sur des systèmes que vous possédez ou pour lesquels vous avez l'autorisation explicite de tester. Ne pas utiliser contre des systèmes de production sans consentement.

    ❗ Charge utile (encodée en URL) :

    root@kitploit:~
    %28select%20updatexml%28null%2Cconcat%280x7e%2Cdatabase%28%29%2C0x7e%29%2Cnull%29%29
    

    Exemple de corps JSON (requête POST) :

    root@kitploit:~
    {
      "doctype": "User",
      "order_by": "(select updatexml(null,concat(0x7e,database(),0x7e),null))"
    }
    

    Cela confirme que l'injection SQL a été exécutée avec succès et que le nom de la base de données actuelle a été divulgué.


    🧪 Scénario d'exploitation

    1. Un attaquant se connecte à une instance ERPNext/Frappe avec des permissions de base (par exemple, l'accès aux rapports standard).
    2. Une requête POST malveillante est envoyée à /api/method/frappe.desk.reportview.get avec une charge utile order_by ou group_by malveillante.
    3. Le backend injecte incorrectement cette valeur directement dans une requête SQL sans assainissement.
    4. L'attaquant voit une erreur de base de données révélant la sortie injectée — confirmant l'injection.
    5. La même technique pourrait être combinée avec des charges utiles basées sur le temps, une injection UNION, ou des chemins d'élévation de privilèges selon la configuration de la base de données sous-jacente.

    🔐 Recommandations d'atténuation

    1. Utiliser des requêtes paramétrées : Toute entrée utilisateur doit être liée de manière sécurisée et jamais concaténée directement dans des requêtes SQL.
    2. Validation stricte des entrées : Valider order_by et group_by par rapport à une liste blanche connue de noms de colonnes acceptables avant traitement.
    3. Échapper correctement les identifiants : Utiliser l'échappement spécifique au SGBD pour les identifiants de colonnes/champs si une utilisation dynamique est requise.
    4. Minimiser l'exposition : Restreindre l'accès à l'API /reportview.get et aux fonctionnalités de rapports en fonction des rôles utilisateur et des niveaux de confiance.
    5. Assainir les journaux : Éviter de journaliser les charges utiles d'injection brutes pour prévenir les fuites dans les systèmes d'audit.
    6. Limiter le débit des requêtes API : Limiter les appels API à haute fréquence pour réduire l'impact des tentatives d'énumération aveugles ou basées sur les erreurs.
    7. Appliquer les correctifs : Les mainteneurs de Frappe devraient publier un correctif sécurisant ce point de terminaison et auditer les autres méthodes frappe.desk. Les opérateurs devraient mettre à niveau dès qu'un correctif est disponible.

    🔗 Références

    • Découvreur : Mohammed Aloli

      • GitHub : MoAlali
      • X (Twitter) : @alaliksa_
    • Frappe Framework : https://github.com/frappe/frappe

    • Projet ERPNext : https://github.com/frappe/erpnext

    • Aide-mémoire OWASP sur l'injection SQL : https://cheatsheetseries.owasp.org/cheatsheets/SQL_Injection_Prevention_Cheat_Sheet.html

    📢 Avertissement

    Cet avis est publié à des fins éducatives et de recherche défensive en sécurité uniquement. Exploiter cette vulnérabilité sans autorisation est illégal et contraire à l'éthique. Si vous êtes un développeur ou un administrateur d'ERPNext ou de Frappe, appliquez immédiatement les atténuations recommandées et surveillez toute utilisation anormale de l'API.


    Télécharger l’outil