IDOR : définition, exemples et prévention
L’IDOR (Insecure Direct Object Reference) est une vulnérabilité de contrôle d’accès où un utilisateur accède à des ressources d’un autre utilisateur en modifiant simplement un identifiant dans l’URL ou la requête API. C’est l’une des failles les plus fréquentes en pentest applicatif.
Pentest web & API, audit IA, Toulouse, méthodologie OWASP/PTES
Comment fonctionne un IDOR ?
/api/factures/1234 en /api/factures/1235 pour accéder à la facture d’un autre client.Pourquoi les IDOR sont dangereux ?
Comment prévenir les IDOR ?
- Vérifier systématiquement les permissions côté serveur avant chaque accès à une ressource.
- Utiliser des identifiants non prédictibles (UUID v4).
- Implémenter un contrôle d’accès centralisé (RBAC/ABAC).
- Tester les IDOR dans chaque pentest applicatif.
Exemple concret : IDOR sur une API REST SaaS
Une PME SaaS B2B expose une API pour que chaque client consulte ses factures :
GET /api/v1/invoices/7842
Authorization: Bearer eyJhbGc...
200 OK
{ "id": 7842, "customer_id": 42, "amount": 1250, "pdf_url": "..." }Le back-end vérifie que le token JWT est valide, mais ne vérifie pas que la facture 7842 appartient bien au client authentifié. Un attaquant énumlère simplement les IDs de 1 à 10000 et récupère toutes les factures de tous les clients : nom, SIREN, CA, coordonnées bancaires.
Score CVSS v3.1 : 6.5 (Medium) en lecture seule, 8.1 (High) si l'IDOR permet aussi la modification (DELETE, PUT). Le correctif en 3 lignes : WHERE customer_id = :current_user_tenant_id dans la requête SQL.
FAQ IDOR
Pourquoi les IDOR échappent aux scanners automatisés ?
Parce qu'un scanner ne sait pas qu'un utilisateur A ne doit pas accéder aux données de B. C'est une vulnérabilité de logique métier : techniquement l'application répond 200 OK, aucun signal anormal. Seul un pentest manuel avec deux comptes de test (horizontal privilege testing) détecte un IDOR.
Les UUID protègent-ils des IDOR ?
Partiellement. Un UUID v4 rend l'énumération aléatoire impossible, mais un IDOR reste exploitable dès qu'un UUID fuite (URL partagée, logs, références croises). L'UUID est une défense en profondeur, pas un contrôle d'accès.
Un IDOR impacte-t-il ma conformité RGPD ?
Oui, directement. Un IDOR qui expose des données personnelles constitue une violation de données au sens RGPD Art. 33 (notification CNIL sous 72h obligatoire). Amendes : jusqu'à 4% du CA mondial. L'IDOR Axa 2023 (clients de l'assurance auto) a déclenché une enquête CNIL.
Les IDOR sont-ils classés dans OWASP Top 10 ?
Oui, catégorie A01:2021 Broken Access Control, qui est devenue la #1 en 2021 (94% des applications testées en contenaient au moins une). L'OWASP API Security Top 10 les classe aussi en API1:2023 BOLA (Broken Object Level Authorization).
Besoin d'un pentest ?
Chez Laucked, nous testons vos applications web, API et intégrations sensibles avec une méthodologie OWASP/PTES. Diagnostic de surface gratuit, rapport sous 48-72h.
Demander un diagnostic gratuit