Internet

Injection de commande (Tryhackme et Owaspbwa)

Linux, Networking & Security sont les domaines qui m’intéressent.

Utilisation normale des applications Web

Disons que les histoires sont stockées sous forme de fichiers .txt sur le serveur et lorsqu’une personne tape le nom de l’histoire « Story1 », le serveur traite le contenu du fichier Story1.txt et le renvoie sur la page Web.

commande-injection-tryhackme-owaspbwa

Problème – si le site Web traite le contenu de l’histoire lui-même via son système sans que l’entrée de l’utilisateur ne soit filtrée quant aux personnages et aux commentaires qu’il peut recevoir.

Ex. Disons que cette application lit le contenu du fichier texte à l’aide de la commande « cat », c’est-à-dire que nous tapons le nom de l’histoire et qu’elle obtient l’histoire, lit la sortie et la renvoie à l’application Web.

commande-injection-tryhackme-owaspbwa

Forme générale

Concaténation des commandes avec une entrée normale → si le contenu n’est pas filtré → le serveur donne la sortie normale avec la sortie des commandes concaténées.

commande-injection-tryhackme-owaspbwa

Commençons maintenant avec notre défi d’aujourd’hui.

TryHackMe (TOP 10 OWASP [Task 5])

Si c’est la première fois que vous travaillez sur TryHackMe et que vous ne savez pas comment le configurer, consultez la section des ressources bonus à la fin.

Aller vers: https://tryhackme.com/room/owasptop10 → Tâche 5

commande-injection-tryhackme-owaspbwa

BOOM!!! commande injectée

Mais que se passe-t-il si c’est une injection à l’aveugle ?

A lire aussi :  8 outils numériques pour aider votre enfant à apprendre

Injection aveugle – Si nous ne pouvons pas voir la sortie des commandes sur la page même si elle est vulnérable à l’injection de commandes.

Faites défiler pour continuer

Alors comment identifier ?

Nous pouvons envoyer un ping à notre machine kali à partir de la machine cible et essayer d’intercepter la demande à l’aide de Wireshark, puis nous pourrons peut-être voir les paquets que la machine cible envoie afin de nous envoyer un ping.

Testons-le :

  1. Ouvrez Wireshark (« $ sudo Wireshark ») et sélectionnez tun0 (pour la machine vulnérable)
commande-injection-tryhackme-owaspbwa

2. Envoyez un ping à l’adresse IP de votre machine Kali.

commande-injection-tryhackme-owaspbwa

3. Ping notre machine.

commande-injection-tryhackme-owaspbwa

4. Wireshark et sortie d’application Web

(J’ai dû me reconnecter au VPN qui a changé l’IP de kali fournie par VPN en 10.10.177.137)

commande-injection-tryhackme-owaspbwa

Si ce n’est pas une injection à l’aveugle

commande-injection-tryhackme-owaspbwa

Solution Tâche5

1. Quel fichier texte étrange se trouve dans le répertoire racine du site ?

commande-injection-tryhackme-owaspbwa

2. Combien y a-t-il d’utilisateurs non root/non service/non démon ?

commande-injection-tryhackme-owaspbwa

Il y a 0 utilisateurs non root/non service/non démon sur cette machine

3. Sous quel utilisateur cette application s’exécute-t-elle ?

Tapez simplement whoami → www-data

4. Quelle est la configuration du shell de l’utilisateur ?

Le shell de l’utilisateur est défini comme →/usr/sbin/nologin

commande-injection-tryhackme-owaspbwa

5. Quelle version d’Ubuntu est en cours d’exécution ?

18.04.4

commande-injection-tryhackme-owaspbwa

6. Imprimez le MOTD. Quelle boisson préférée est affichée ?

Cherchez l’indice (car cette question est délicate)

commande-injection-tryhackme-owaspbwa

Hmm, cela ressemble à un fichier pour moi, alors vérifions-le

commande-injection-tryhackme-owaspbwa

En effet, c’est un fichier donc imprimons son contenu.

commande-injection-tryhackme-owaspbwa

OWASPBWA

(Vulnerable Machine Link et vidéo de configuration dans les ressources bonus)

1. Exécuter PHP Reverse Shell

commande-injection-tryhackme-owaspbwa

Utilisation normale :

commande-injection-tryhackme-owaspbwa

Si nous faisons nslookupà l’intérieur de votre terminal

commande-injection-tryhackme-owaspbwa

C’est presque le même que celui que nous obtenons dans notre application Web. Alors peut-être qu’il est vulnérable à l’injection de commande

commande-injection-tryhackme-owaspbwa

BOOM!!! Injecté

A lire aussi :  Discord Fast Food: Comment commander virtuellement de la restauration rapide sur Discord

Essayons maintenant d’établir un reverse shell avec le système cible

Comme tous les fichiers dans « ls » sont des fichiers .php, il est possible que le serveur Web s’exécute sur PHP et nous pouvons trouver des commandes shell inversées bash/PHP en ligne comme

commande-injection-tryhackme-owaspbwa

(Création de l’objet socket, l’adresse IP est celle de notre machine kali et 1234 est le port de Kali Linux auquel nous voulons nous connecter. La 2ème partie de la commande est ce que nous voulons exécuter, dans notre cas elle nous dit d’exécuter le bash shell et exécuter en tant que commandes comme nous le voulons).

Mais d’abord, nous devons écouter toute connexion entrante et exécuter la commande sur la page Web et…

commande-injection-tryhackme-owaspbwa

nc →netcat

lvp →pour que kali écoute sur n’importe quelle interface sur le port 1234.

Fait !!!!

2. Contournement du filtre d’entrée et exécution de la commande

Naviguez vers ce lien

commande-injection-tryhackme-owaspbwa

Vous devriez voir quelque chose comme ça

commande-injection-tryhackme-owaspbwa

Assurez-vous que le niveau de sécurité (dans le coin inférieur gauche) est réglé sur bas.

Utilisation normale :

commande-injection-tryhackme-owaspbwa
commande-injection-tryhackme-owaspbwa

Voici notre injection de commande

commande-injection-tryhackme-owaspbwa

RÉGLEZ MAINTENANT LE NIVEAU DE SÉCURITÉ À MOYEN en allant à l’option Sécurité DVWA dans la colonne de gauche.

commande-injection-tryhackme-owaspbwa

Il ne se passe rien 🙁 🙁 🙁

Vérifiez maintenant le code source (en bas à droite) pour savoir comment il est filtré.

commande-injection-tryhackme-owaspbwa

Les deux symboles sont remplacés par ‘ ‘ alors que faire

On peut utiliser ‘&’

Qu’est-ce que ‘&’ dans le terminal ?

commande-injection-tryhackme-owaspbwa
commande-injection-tryhackme-owaspbwa

Hourra !!! nous l’avons fait

1. Plus de 30 commandes Linux standard pour les utilisateurs débutants ou intermédiaires

A lire aussi :  10 idées de statut esthétique et inspiration : la liste ultime

2. Bug Bounty Hunting avec Burp Suite (Intercept, Repeater & Intruder)

3. Contrôle d’accès cassé (Tryhackme et Owaspbwa)

Cet article est exact et fidèle au meilleur de la connaissance de l’auteur. Le contenu est uniquement à des fins d’information ou de divertissement et ne remplace pas un conseil personnel ou un conseil professionnel en matière commerciale, financière, juridique ou technique.

© 2022 Ashutosh Singh Patel

Bouton retour en haut de la page