|
|
Apr
26
2006
|
Hacking manipulation des URL |
|
|
|
Sécurité -
Protection
|
|
Ecrit par commentcamarche
|
|
26-04-2006 |
|
New Page 1
Manipulation d'URL
En manipulant certaines parties d'une URL, un pirate peut amener un serveur web
à délivrer des pages web auxquelles il n'est pas censé avoir accès.
En effet, sur les sites web dynamiques les paramètres sont la plupart passés au
travers de l'URL de la manière suivante :
http://cible/forum/index.php3?cat=2
Les données présentes dans l'URL sont créées automatiquement par le site et lors
d'une navigation normale un utilisateur ne fait que cliquer sur les liens
proposés par le site web. Ainsi, si un utilisateur modifie manuellement le
paramètre, il peut essayer différentes valeurs, par exemple :
http://cible/forum/index.php3?cat=6
Si le concepteur n'a pas anticipé cette éventualité, le pirate peut
éventuellement obtenir un accès à un espace normalement protégé.
Par ailleurs, le pirate peut amener le site à traiter un cas inattendu, par
exemple :
http://cible/forum/index.php3?cat=***********
Dans le cas ci-dessus, si le concepteur du site n'a pas prévu le cas où la
donnée n'est pas un chiffre, le site peut entrer dans un état non prévu et
révéler des informations dans un message d'erreur.
Tâtonnement à l'aveugle
Un pirate peut éventuellement tester des répertoires et des extensions de
fichier à l'aveugle, afin de trouver des informations importantes. Voici
quelques exemples classiques :
* Recherche de répertoires permettant d'administrer le site :
http://cible/admin/
http://cible/admin.cgi
* Recherche de script permettant de révéler des informations sur le système
distant :
http://cible/phpinfo.php3
* Recherche de copies de sauvegardes. L'extension .bak est généralement utilisée
et elle n'est pas interprétée par défaut par les serveurs, ce qui peut aboutir à
l'affichage d'un script :
http://cible/index.php3.bak
* Recherche de fichiers cachés du système distant. Sous les systèmes UNIX,
lorsque le répertoire racine du site correspond au répertoire d'un utilisateur,
il se peut que des fichiers créés par le système soit accessibles par le web :
http://cible/.bash_history
http://cible/.htaccess
Traversement de répertoires
Les attaques dites « de traversement de répertoires » (en anglais directory
traversal ou path traversal) consistent à modifier le chemin de l'arborescence
dans l'URL afin de forcer le serveur à accéder à des sections du site non
autorisées.
Dans un cas classique, l'utilisateur peut être amené à remonter progressivement
l'arborescence, notamment dans le cas où la ressource n'est pas accessible, par
exemple :
http://cible/base/test/ascii.php3
http://cible/base/test/
http://cible/base/
Sur les serveurs vulnérables, il suffit de remonter le chemin avec plusieurs
chaînes du type « ../ » :
http://cible/../../../../repertoire/fichier
Des attaques plus évoluées consistent à encoder certains caractères :
* soit sous la forme d'encodage d'URL :
http://cible/..%2F..%2F..%2Frepertoire/fichier
* soit avec une notation Unicode :
http://cible/..%u2216..%u2216repertoire/fichier
De nombreux sites dynamiques passent le nom des pages à afficher en paramètre
sous une forme proche de la suivante :
http://cible/cgi-bin/script.cgi?url=index.htm
Pour peu qu'aucun contrôle ne soit réalisé, il est possible pour un pirate de
modifier l'URL manuellement afin de demander l'accès à une ressource du site
auquel il n'a pas accès directement, par exemple :
http://cible/cgi-bin/script.cgi?url=script.cgi
Parades
Afin de sécuriser un serveur web contre les attaques par manipulation d'URL, il
est nécessaire d'effectuer une veille sur les vulnérabilités et d'appliquer
régulièrement les correctifs fournis par l'éditeur du serveur web.
Par ailleurs, une configuration minutieuse du serveur web permet d'éviter à un
utilisateur de naviguer sur des pages auxquelles il n'est pas censé avoir accès.
Le serveur web doit ainsi être configuré en suivant les consignes suivantes :
* Empêcher le parcours des pages situés en dessous de la racine du site web
(mécanisme de chroot) ;
* Désactiver l'affichage des fichiers présents dans un répertoire ne contenant
pas de fichier d'index (« Directory Browsing ») ;
* Supprimer les répertoires et fichiers inutiles (dont les fichiers cachés) ;
* S'assurer que le serveur protège l'accès des répertoires contenant des données
sensibles ;
* Supprimer les options de configuration superflues ;
* S'assurer que le serveur interprète correctement les pages dynamiques, y
compris les fichiers de sauvegarde (.bak) ;
* Supprimer les interpréteurs de scripts superflus ;
* Empêcher la consultation en mode HTTP des pages accessibles en HTTPS.
Licence Creative
Common
Ce document intitulé
« Attaques - Vol de session TCP » issu de
Comment Ça Marche,
l'encyclopédie informatique, est mis à disposition sous les termes de la
licence Creative Commons. Vous pouvez copier, modifier des copies de cette
page, dans les conditions fixées par la licence, tant que cette note apparaît
clairement.
|
|
Hack Proofing Your E-Commerce Site |
|
Hack Proofing Your E-Commerce Site
Les mesures à prendre pour la
sécurisation des sites de commerce électronique sont, à bien des égards,
similaires à celles des autres catégories de sites. Il existe néanmoins
des différences dues principalement aux risques liés à la collecte et au
traitement des informations relatives au paiement des transactions
(cartes de crédit, informations personnelles du client …).
Ce livre se distingue par des chapitres dédiés entièrement à la
sécurisation des sites d’e-commerce. Ces chapitres qui représentent
environ le tiers du livre, couvrent aussi bien les considérations
techniques que des les considérations légales dont il faut tenir compte
lors de la sécurisation des sites de commerce électronique.
Références
Ryan Russell, Brent Huston,
Lien sur le site d'Amazon. , Syngress; 1ère édition (15 juin 2001),
Langue: Anglais ,
ISBN: 192899427X
|
|
|