Internet

Injection HTML (Tryhackme et Owaspbwa)

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

L'injection HTML est une vulnérabilité de sécurité qui permet à un attaquant d'injecter du code HTML dans des pages Web.

L’injection HTML est une vulnérabilité de sécurité qui permet à un attaquant d’injecter du code HTML dans des pages Web.

Qu’est-ce que l’injection HTML ?

  • Il s’agit d’une faille de sécurité qui permet à un attaquant d’injecter du code HTML dans des pages Web consultées par d’autres utilisateurs.
  • L’une des vulnérabilités les plus faciles pour commencer votre voyage dans WebSecurity.

Comment ça marche?

Examinons un exemple simple d’une application qui affiche « Bonjour {nom} » lorsque vous entrez un nom dans son champ de saisie.

html-injection-tryhackme-owaspbwa

L’application affiche « Hello Ashu ! » en entrant le nom « Ashu » dans le champ de texte fourni et cela nous dit que cette application reflète ce que nous saisissons sur la page.

Un code vulnérable ressemblerait à ceci

html-injection-tryhackme-owaspbwa
  • Maintenant, la question est de savoir si le site Web considérera ou non ce code HTML injecté comme un code séparé ou simplement comme un texte normal que nous avons saisi.
  • S’il considère qu’il s’agit d’un code distinct, alors BOUM !!! Le site Web est vulnérable à l’injection HTML.
A lire aussi :  Comment créer un podcast vidéo artisanal sur YouTube

Faisons maintenant quelques défis sur les machines vulnérables TryHackMe et OWASPBWA.

Assurez-vous de lancer votre Burp Suite avant d’aller de l’avant.

C'est l'une des façons dont nous pouvons injecter un code HTML comme ici nous l'avons fait avec la balise.

C’est l’une des façons dont nous pouvons injecter un code HTML comme ici nous l’avons fait avec la balise.

1. TryHackMe (TOP 10 OWASP [Task 5])

Si c’est la première fois que vous travaillez sur TryHackMe, lisez d’abord mon autre article à ce sujet.

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

Noter: La tâche 5 est en fait pour l’exécution de commandes mais nous pouvons toujours l’utiliser pour l’injection HTML.

Tapez test dans le champ

Tapez test dans le champ « Rechercher un utilisateur… » et soumettez

L'utilisateur n'existe pas

L’utilisateur n’existe pas

Faites défiler pour continuer

L’utilisateur n’existe peut-être pas mais nous sommes des hackers

html-injection-tryhackme-owaspbwa

Saisie

TEST

à l’intérieur du champ de saisie et en appuyant sur Entrée afficherait le code reflété, c’est-à-dire TEST au format ‘en-tête 1’.

Code HTML injecté avec succès.

html-injection-tryhackme-owaspbwa

Activez l’interception et rechargez la page.

html-injection-tryhackme-owaspbwa

Modifions l’en-tête User-Agent en

BonjourAshu

et transmettre le message

html-injection-tryhackme-owaspbwa

HOORRRAAAAHHHHH !!!! c’est changé.

À l’intérieur de l’OWASP Multillidae II

Aller vers: OWASP Multillidae II →OWASP 2013 →A1 →HTMLi Via Cookie Injection →Capture Data

html-injection-tryhackme-owaspbwa
html-injection-tryhackme-owaspbwa
html-injection-tryhackme-owaspbwa

Notre PHPSESSID se reflète sur la page Web

Maintenant, vous savez ce que nous pouvons en faire. Pas vous ?

ici 5 signifie qu'il attendra 5 secondes avant de le rediriger vers google.com

ici 5 signifie qu’il attendra 5 secondes avant de le rediriger vers google.com

mieux vaut désactiver l’interception

html-injection-tryhackme-owaspbwa

Pour en savoir plus sur l’utilisation des balises META pour rediriger votre site, consultez la section des ressources bonus.

3. Exemple avancé

  • Nous pouvons créer une fausse page de connexion ou exactement comme celle que nous testons, puis nous pouvons rediriger la vraie page vers la fausse page et nous pouvons capturer leur nom d’utilisateur et leur mot de passe s’il s’agit d’une page de connexion.

Exemple 1 (stockage HTML5)

Aller vers: OWASP Multillidae II →OWASP 2013 →A1 →HTMLi Via DOM Injection →Stockage HTML5

html-injection-tryhackme-owaspbwa
html-injection-tryhackme-owaspbwa

Si nous « ajoutons » nos entrées, cela se reflète sur la page.

  • Rien n’est intercepté pour « Add New » mais on peut toujours essayer d’injecter nos codes HTML dans les champs
html-injection-tryhackme-owaspbwa
  • Nous ne pouvons injecter du HTML que dans la phrase « Ajouter la clé {$key} au stockage de la session ».
html-injection-tryhackme-owaspbwa

Exemple 2 (Ces boutons « Retour »)

Aller vers: OWASP Multillidae II →OWASP 2013 →A1- Injection (Autre)→HTML Injection (HTMLi) → Ceux Bouton « Retour »

html-injection-tryhackme-owaspbwa

Pas de champs de saisie alors quoi et où allons-nous injecter notre code HTML ??

html-injection-tryhackme-owaspbwa

Nous pouvons intercepter le bouton de retour demande & voir si les lignes ci-dessus sont vraies.

html-injection-tryhackme-owaspbwa

En effet, c’est vrai, mais comment cela va-t-il nous aider car cela ne se reflète pas sur notre page

Cherchons son code HTML. Hum ça a l’air intéressant !!!

html-injection-tryhackme-owaspbwa

Remarque : Modifier le Référent pour inclure le

la balise n’aide pas.

html-injection-tryhackme-owaspbwa
html-injection-tryhackme-owaspbwa

Nous ne verrons aucun changement sur la page actuelle

Essayons donc de changer l’URL de référence à autre chose

Code d’origine :
TEST

‘; »>
(pas en mesure d’injecter ceci dans la page Web actuelle)

Modification de la charge utile :

TEST

‘; »

Code injecté:
(« >

TEST

)

html-injection-tryhackme-owaspbwa

BOOM!!! code HTML injecté avec succès

Comparaison du code HTML injecté et non injecté

html-injection-tryhackme-owaspbwa
html-injection-tryhackme-owaspbwa

Ressources

  1. Utiliser la balise META pour rediriger une page HTML
  2. Machine vulnérable OWASPBWA
  3. Vidéo de configuration de la machine virtuelle OWASPBWA

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

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