Cosimo Ungaro

SQL Injection – Énumération de bases de données (Non‑Oracle)

Exploitation d’une vulnérabilité d’injection SQL ayant permis l’énumération des tables et colonnes d’une base de données sur des systèmes non‑Oracle.

PortSwigger Voir le lab sur PortSwigger

Résumé exécutif

Vulnérabilités identifiées
  • Injection SQL (CWE-89)
Impact principal
  • Compromission de comptes utilisateurs
  • Compromission de comptes à haut privilège
Niveau de risque
  • Elevé (compromission d'un compte à haut privilèges, sans prérequis)
Résumé
  • L'exploitation d'une faille SQL permet, sans prérequis, à un attaquant d'obtenir accès à un compte à haut privilège; faille critique pour le SI, remédiation immédiate suggérée

Contexte

  • Fonctionnalité testée : Requêtes SQL dynamiques
  • Hypothèse : Absence de requêtes paramétrées (injection possible)

Objectifs

  • Identification d'un point d’injection SQL exploitable
  • Énumération des tables et colonnes de la base de données
  • Exploitation de la vulnérabilité: extraction de données utilisateurs sensibles

Périmètre et cadre

  • Réalisation dans un environnement contrôlé (lab)
  • Aucune donnée réelle ni système de production impacté

Méthodologie

  • Analyse des paramètres HTTP côté serveur
  • Détection de l’injection SQL
  • Utilisation de requêtes UNION pour l’énumération
  • Rédaction du rapport technique

Proof‑Of‑Concept

  • Identification de l'injection SQL
  • Détermination de la forme de la requête
  • Extraction de la liste des tables et colonnes de la base de données
  • Compromission de données d'authentification utilisateurs
  • Validation contrôlée de l’accès aux données

Outils

  • Navigateur : Google Chrome (latest stable)
  • Burp Suite (Community Edition)

Résultats

  • Accès non autorisé aux structures de la base de données
  • Exposition de données d'authentification
  • OWASP Top 10 : A03 – Injection
  • Sévérité :
    • Confidentialité: Impact élevé (exécution de code malveillant)
    • Intégrité: Impact potentiel
    • Disponibilité: Impact indirect

Potentiel impact métier

  • Compromission de données utilisateurs
  • Risque réglementaire et atteinte à la confidentialité
  • Compromission de comptes à haut privilège (administrateur)

Remédiation

  • Court Terme
    • Utilisation systématique de requêtes paramétrées
    • Validation stricte des entrées côté serveur (zero-trust pour les données clients)
    • Principe du moindre privilège sur la base de données
  • Long terme
    • Revue régulière du code applicatif
    • Sensibilisation continue des développeurs (formations bi-annuelles sur le SSDLC)

Hypothèses et limites

  • Tests limités au périmètre évalué
  • Absence d'analyse du code source
  • Hypothèse de privilèges applicatifs standards

Références

OWASP
MITRE

Compétences démontrées

  • Exploitation de vulnérabilités SQL
  • Analyse de risques applicatifs
  • Maîtrise de Burp Suite et SQLMap
  • Rédaction de rapports de sécurité