accueilLogicielsDéveloppement et Qualité LogicielsFailles de sécurité des applications Web
 

Référence directe non sécurisée à un objet


1. Principe
2. Exemples d’attaque
3. Parade et bonnes pratiques

Principe

 Cette vulnérabilité existe simplement parce que les paramètres de requêtes ne sont pas vérifiés avant traitement. Si le paramètre vulnérable fait référence à un fichier, à une valeur dans une base de données, il suffit de reconstruire la requête avec une valeur de paramètre normalement interdite pour y avoir accès.

 Cette faille peut avoir des impacts importants si un utilisateur mal intentionné obtient par ce biais des accès à des informations et des fonctionnalités pour lesquelles il n’a aucune autorisation.

Exemples d’attaque

 Cette faille est une des bases de la vulnérabilité exploitée par XSS. En effet, dans les exemples d’attaques exposés précédemment (voir paragraphe 3.3.2), les paramètres récupérés ne sont pas vérifiés. Par contre, si ces valeurs avaient été contrôlées, les caractères spéciaux n’auraient pas été autorisés, empêchant ainsi l’envoi de code frauduleux au navigateur.

 Si les paramètres sont passés en paramètre d’un lien, un utilisateur malintentionné peut aisément modifier l’adresse pour accéder à des informations auxquelles il n’aurait pas dû avoir accès. L’exemple suivant reprend la table « comptes » (voir paragraphe 3.2.2) qui va être interrogée par un script PHP pour afficher le numéro de carte bancaire de l’utilisateur.

Si l’utilisateur malveillant saisit dans son navigateur l’adresse de cette page avec pour paramètre « nom=nom_de_la_victime », il a alors accès au numéro de carte bancaire qu’il n’aurait jamais du pouvoir voir.

Parade et bonnes pratiques

 Pour protéger les données les plus confidentielles ou les fonctionnalités les plus avancées, le WASC recommande de demander à l’utilisateur de saisir à nouveau son identifiant et son mot avant de pouvoir y accéder. Ensuite il suffit de se baser sur ces valeurs pour construire les requêtes. Ainsi dans l’exemple de l’affichage du numéro de carte, le paramètre utilisé pour la recherche aurait été celui de la personne qui s’est authentifiée et non celui fournit en paramètre du lien.

 

Retour vers le haut de la page   PDF
Article précédent Page d'accueil Article suivant
< Violation de gestion d’authentification et de session Sommaire | Falsification de requête inter-sites (CSRF) >

 

Guillaume HARRY
Envoyer un courriel

 

Contenu sous licence Creative Commons CC-BY-NC-ND


ARESU
Direction des Systèmes d'Information du CNRS

358 rue P.-G. de Gennes
31676 LABEGE Cedex

Bâtiment 1,
1 Place Aristide Briand
92195 MEUDON Cedex



 

 

Direction des Systèmes d'Information

Pôle ARESU

Accueil Imprimer Plan du site Credits