🆔IDOR
IDOR : Insecure Direct Object References
Qu'est-ce que l'IDOR?
L'Insecure Direct Object References (IDOR) est une vulnérabilité de sécurité où une application web accorde un accès direct à des objets internes basés sur des entrées fournies par l'utilisateur (comme un identifiant de ressource). Si l'application ne vérifie pas correctement les autorisations, un utilisateur malveillant peut accéder à des données ou des actions qui ne lui sont pas destinées.
Identification d'une vulnérabilité IDOR
Observation des URL et des paramètres:
Identifier les URL ou les paramètres de requête qui font référence à des ressources, comme
/profile?id=123ou/documents/456.
Modification des paramètres:
Changer la valeur du paramètre pour voir si vous pouvez accéder à des données ou des ressources d'autres utilisateurs, par exemple, modifier
id=123àid=124.
Observation des réponses:
Vérifier si les modifications permettent d'accéder à des données non autorisées.
Attaque IDOR
Exemple d'attaque IDOR:
Rechercher des points d'entrée:
Analyser les requêtes HTTP (GET/POST) dans l'application pour trouver des identifiants d'objets.
Modifier les identifiants:
Supposons que vous avez l'URL:
http://example.com/profile?id=123Changez l'identifiant pour voir si vous pouvez accéder aux données d'autres utilisateurs, par exemple:
http://example.com/profile?id=124
Analyser les réponses:
Si la modification de l'identifiant permet d'accéder à des données qui ne vous appartiennent pas, l'application est vulnérable à l'IDOR.
Comment prévenir les vulnérabilités IDOR
Contrôles d'accès au niveau de l'objet:
Toujours vérifier que l'utilisateur authentifié a l'autorisation d'accéder à l'objet référencé.
Implémenter des contrôles d'accès au niveau des objets dans le code du serveur.
Utiliser des identifiants imprévisibles:
Utiliser des identifiants uniques, tels que des UUID, qui ne peuvent pas être facilement devinés.
Validation des entrées:
Valider et vérifier toutes les entrées utilisateur du côté serveur.
Revue de code et tests de sécurité:
Effectuer des revues de code régulières pour identifier les points où les références directes aux objets peuvent être exposées.
Utiliser des tests de sécurité automatisés et manuels pour détecter les IDOR.
Outils pour tester l'IDOR
Burp Suite : Utiliser l'outil de proxy pour intercepter et modifier les requêtes HTTP.
OWASP ZAP : Utiliser pour scanner et détecter les vulnérabilités web.
Postman : Tester manuellement les requêtes API et vérifier les réponses pour les IDOR.