Pour une sécurité du Web serveur , le contenu Web contrôle d'accès approprié est crucial. Directory traversal est une faille de sécurité existe Http, qui permet à un attaquant de répertoires d'accès restreint, et exécuter des commandes autres que le répertoire racine de votre serveur Web.
Les serveurs Web fournissent deux niveaux principaux de mécanismes de sécurité:
- Listes de contrôle d'accès - ACL est ce que nous disons souvent
- Accès Root
liste de contrôle d'accès pour le processus d'autorisation, il est l'administrateur d'un serveur Web utilisé pour décrire ce que l'utilisateur ou groupe d'utilisateurs d'accéder, de modifier et d'exécuter une liste de certains des fichiers sur le serveur, mais contient également un certain nombre d'autres accès contenu.
La racine du système de fichiers du serveur dans un répertoire particulier, il a tendance à être une limite, les utilisateurs ne peuvent pas accéder à tout contenu situé sur ce répertoire.
Par exemple: dans de Windows IIS répertoire racine par défaut est C: \ Inetpub de l'wwwroot, l'utilisateur Une fois que l'ACL est cochée, vous pouvez accéder au C: répertoires \ Inetpub \ wwwroot \ nouvelles, et d' autres se trouve dans le répertoire racine de tous les répertoires suivants et les fichiers, mais ne peuvent pas accéder au répertoire C: \ Windows.
Il y a la racine de certains de la clé peut empêcher les utilisateurs d'accès aux fichiers sur le serveur, comme Windows plate - forme sur cmd.exe ou Linux / Unix fichier de mot de passe sur la plate - forme.
Cette vulnérabilité peut exister dans le logiciel de serveur Web lui-même, peut également être présent dans le code de l'application Web.
Pour effectuer un répertoire attaque traversal, le besoin attaquant est un web navigateur, et vous pouvez avoir une certaine connaissance de la position de certains fichiers par défaut et des répertoires qui existent dans le système.
Si votre site est l'existence de cette vulnérabilité, un attaquant peut l'utiliser pour faire quelque chose?
Exploiter cette vulnérabilité, un attaquant peut obtenir le répertoire racine du serveur, donc l'accès à d'autres parties du système de fichiers, par exemple, l'attaquant sera en mesure de voir du fichier restreint, ou plus dangereux, un attaquant peut provoquer l'ensemble du système pour effectuer des accidents instructions.
En fonction du web le site est de savoir comment configurer l'accès, l'attaquant peut fake l'utilisateur vers d' autres sites pour effectuer l'opération, et ce système dépend de l'utilisateur vers des sites Web est de savoir comment l' autorisation.
Des exemples de (1) l'utilisation d'attaques de traversée de répertoire de code d'application Web
Dans les applications Web avec des pages dynamiques, souvent obtenues par entrez méthode GET ou requêtes POST à partir du navigateur, ce qui suit est un exemple de requête GET de Http URL:
http://test.webarticles.com/show.asp?view=oldarchive.html
Avec cette URL, le navigateur envoie une requête pour une page dynamique show.asp au serveur, et est associé à des paramètres d'affichage oldarchive.html sur demande pour effectuer le côté serveur Web, à partir du système de fichiers show.asp serveur obtenir le fichier oldarchive.html, et retourne au navigateur client, l'attaquant peut prendre show.asp peut obtenir des fichiers à partir du système de fichiers et de préparer l'URL suivante:
http://test.webarticles.com/show.asp?view=../../../../../Windows/system.ini
Donc, cela peut être obtenu à partir du système de fichiers fichier system.ini et retourné à l'utilisateur .. / signifiant ici Inutile de dire que je crois que nous comprenons tous. L'attaquant doit deviner combien de couches nécessitent jusqu'à trouver le répertoire Windows, mais peut l'imaginer, ce n'est pas difficile, après plusieurs tentatives se trouvent toujours.
(2) l'utilisation du Web serveur est des attaques de traversée de répertoire instanciés:
En plus du code de l'application Web, serveur Web lui-même peut ne pas être en mesure de résister à des attaques de répertoire traversal. Cela peut exister dans le logiciel de serveur Web ou quelques exemples de scripts stockés sur le serveur.
Dans un logiciel de serveur Web récemment, ce problème a été résolu, mais beaucoup de serveurs Web sur Internet utilisent encore l'ancienne version de IIS et Apache , et ils peuvent peut toujours pas résister à de telles attaques. Même si vous utilisez cette vulnérabilité a été résolu versions de logiciel de serveur Web, vous pouvez toujours avoir un pirate est évident qu'il répertoire de script par défaut sensible.
Par exemple, suite à une URL de requête, il utilise le répertoire IIS scripts dans le répertoire mobile et exécuter la commande suivante : HTTP: //server.com/scripts/..%5c../ de Windows /System32/cmd.exe?/c+ dir + c: \
Cette demande sera de retour C: \ liste de tous les fichiers dans le répertoire, il fait en appelant cmd.exe puis utilisez le répertoire c: \ mis en œuvre,% 5c est un web serveur de symboles de conversion, utilisé pour représenter certains caractères communs, représentés ici il est « \ »
La nouvelle version du logiciel de serveur Web vérifie l'opération de conversion en les limitant, mais pour certaines anciennes versions du logiciel serveur ont encore ce problème.
Comment déterminer s'il y a une vulnérabilité directory traversal?
La meilleure façon est d'utiliser un scanner de vulnérabilité Web, un scanner de vulnérabilité Web peut parcourir tous les répertoires de votre site Web afin de déterminer s'il y a une vulnérabilité directory traversal, si elle rapportera cette vulnérabilité et donner une solution, en plus d'un en dehors de la vulnérabilité de directory traversal , l'analyse des applications Web peut également vérifier l'injection SQL, cross-site scripting et d'autres vulnérabilités.
« Répertoire traversal » En fait, il ne peut pas être échappatoire apprécié, car il est un élément clé de IIS. Après le crochet dans IIS cette option, les utilisateurs peuvent accéder à des fichiers via le site Web sous la forme d'un répertoire, cette fonction est couramment utilisée pour partager des fichiers. Toutefois, en raison de la négligence ou le manque d'expérience de l'administrateur, ouvrez le site dans cette fonction, ce qui est un grand échappatoires à part entière.