Introduction

Nous avons expliqué comment contourner les fonctions de désactivation en php et comment échapper aux filtres de téléchargement dans cette TryHackMe Machine.

Qu'est-ce qu'une vulnérabilité de téléchargement de fichiers ?
Cette vulnérabilité se produit dans les applications Web où il est possible de télécharger un fichier sans être vérifié par un système de sécurité qui limite les dangers potentiels.
Il permet à un attaquant de télécharger des fichiers avec du code (scripts tels que .php, .aspx et plus) et de les exécuter sur le même serveur, plus d'informations dans ce chambre.
Pourquoi cette pièce ?
Parmi les mesures généralement appliquées figure la désactivation des fonctions dangereuses qui pourraient exécuter des commandes du système d'exploitation ou démarrer des processus. Les fonctions telles que system() ou shell_exec() sont souvent désactivées via les directives PHP définies dans le fichier de configuration php.ini. D'autres fonctions, peut-être moins connues sous le nom de dl() (qui permet de charger dynamiquement une extension PHP), peuvent passer inaperçues auprès de l'administrateur système et ne pas être désactivées. La chose habituelle dans un test d'intrusion est de lister quelles fonctions sont activées au cas où certaines auraient été oubliées.
Une des techniques les plus simples à mettre en œuvre et peu répandue consiste à abuser des fonctionnalités mail() et putenv(). Cette technique n'est pas nouvelle, elle a déjà été rapportée PHP en 2008 par gat3way, mais cela fonctionne toujours à ce jour. Grâce à la fonction putenv(), nous pouvons modifier les variables d'environnement, nous permettant d'attribuer la valeur souhaitée à la variable LD_PRELOAD. En gros LD_PRELOAD nous permettra de précharger une bibliothèque .so avant le reste des bibliothèques, de sorte que si un programme utilise une fonction d'une bibliothèque (libc.so par exemple), il exécutera celle de notre bibliothèque au lieu de la celui qu'il devrait. De cette manière, nous pouvons détourner ou « accrocher » des fonctions, en modifiant leur comportement à volonté.

Questions et réponses du défi

Compromettre la machine et localiser le flag.txt

Vidéo pas à pas

A propos de l'Auteur

Je crée des notes de cybersécurité, des notes de marketing numérique et des cours en ligne. Je fournis également des conseils en marketing numérique, y compris, mais sans s'y limiter, le référencement, les publicités Google et Meta et l'administration CRM.

Voir les Articles