Démarrez la machine, hackez le système et trouvez les flags cachés pour compléter ce défi et gagner des XP!
Les vulnérabilités d'inclusion de fichiers locaux (LFI) avec contournement de filtres représentent un défi de sécurité web de niveau intermédiaire. Bien que de nombreux développeurs soient conscients des attaques LFI basiques utilisant des séquences de traversée de répertoire, ils implémentent souvent des protections incomplètes qui peuvent être contournées par des attaquants qui comprennent les mécanismes sous-jacents d'inclusion de fichiers. Apprendre à contourner ces filtres est essentiel pour des tests de sécurité efficaces.
Les fonctions include et require de PHP chargent et exécutent dynamiquement des fichiers à l'exécution. Lorsque le chemin du fichier est construit en utilisant l'entrée utilisateur, cela crée une vulnérabilité d'inclusion de fichiers. De nombreuses applications PHP ajoutent automatiquement une extension de fichier (comme .php) au chemin inclus, ce que les développeurs croient à tort empêcher les attaquants de lire des fichiers arbitraires. Cependant, plusieurs techniques existent pour contourner l'ajout automatique d'extension, selon la version de PHP et la configuration du serveur.
Lorsque les développeurs implémentent des protections basiques contre la LFI, ils bloquent souvent des motifs spécifiques comme "../" ou ".php" dans l'entrée utilisateur. Cependant, ces filtres peuvent fréquemment être contournés par l'encodage URL (remplacement des caractères par des séquences %xx), le double encodage, l'injection de caractère nul (sur les anciennes versions de PHP), l'utilisation de séparateurs de chemin alternatifs, ou l'exploitation de la logique de normalisation de chemin de l'application. Comprendre l'implémentation spécifique du filtre est la clé pour identifier la technique de contournement appropriée.
L'exploitation réussie de la LFI peut exposer des fichiers sensibles incluant le code source de l'application, les fichiers de configuration avec des identifiants de base de données, les fichiers système comme /etc/passwd, les fichiers de configuration du serveur web comme .htaccess et .htpasswd, et les fichiers de log qui peuvent contenir des informations sensibles supplémentaires. Dans certains cas, la LFI peut être escaladée vers l'exécution de code à distance par des techniques comme l'empoisonnement de log, les chaînes de filtres PHP ou l'inclusion de fichiers téléversés. La gravité de la LFI en fait une découverte prioritaire dans toute évaluation de sécurité web.
Créez un compte gratuit et pratiquez la cybersécurité.
Créez un compte gratuit pour démarrer votre propre serveur dédié, soumettre des flags et gagner des XP au classement.
Commencer à Hacker GratuitementLabs qui partagent des compétences similaires
Choisissez comment vous voulez commencer
Connectez-vous à votre compte