Apprenez et pratiquez le hacking AWS :<imgsrc="/.gitbook/assets/arte.png"alt=""data-size="line">[**Formation HackTricks AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<imgsrc="/.gitbook/assets/arte.png"alt=""data-size="line">\
Apprenez et pratiquez le hacking GCP : <imgsrc="/.gitbook/assets/grte.png"alt=""data-size="line">[**Formation HackTricks GCP Red Team Expert (GRTE)**<imgsrc="/.gitbook/assets/grte.png"alt=""data-size="line">](https://training.hacktricks.xyz/courses/grte)
* Consultez les [**plans d'abonnement**](https://github.com/sponsors/carlospolop) !
* **Rejoignez le** 💬 [**groupe Discord**](https://discord.gg/hRep4RUj7f) ou le [**groupe telegram**](https://t.me/peass) ou **suivez-nous sur****Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Partagez des astuces de hacking en soumettant des PRs aux** [**HackTricks**](https://github.com/carlospolop/hacktricks) et [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) dépôts github.
Dans cette configuration, un **script de contenu** est implémenté pour instancier un Iframe, incorporant une URL avec des paramètres de requête comme source de l'Iframe :
Une page HTML accessible au public, **`message.html`**, est conçue pour ajouter dynamiquement du contenu au corps du document en fonction des paramètres dans l'URL :
Un script malveillant est exécuté sur la page d'un adversaire, modifiant le paramètre `content` de la source de l'Iframe pour introduire une **charge utile XSS**. Cela est réalisé en mettant à jour la source de l'Iframe pour inclure un script nuisible :
Une approche alternative pour provoquer le XSS consiste à créer un élément Iframe et à définir sa source pour inclure le script nuisible en tant que paramètre `content` :
Cet exemple a été tiré de l'[article original](https://thehackerblog.com/steam-fire-and-paste-a-story-of-uxss-via-dom-xss-clickjacking-in-steam-inventory-helper/).
Le problème principal provient d'une vulnérabilité Cross-site Scripting (XSS) basée sur le DOM située dans **`/html/bookmarks.html`**. Le JavaScript problématique, qui fait partie de **`bookmarks.js`**, est détaillé ci-dessous :
Ce snippet récupère la **valeur** du champ de saisie **`txtName`** et utilise **la concaténation de chaînes pour générer du HTML**, qui est ensuite ajouté au DOM en utilisant la fonction `.append()` de jQuery.
Typiquement, la politique de sécurité du contenu (CSP) de l'extension Chrome empêcherait de telles vulnérabilités. Cependant, en raison de **l'assouplissement de la CSP avec ‘unsafe-eval’** et de l'utilisation des méthodes de manipulation du DOM de jQuery (qui emploient [`globalEval()`](https://api.jquery.com/jquery.globaleval/) pour passer des scripts à [`eval()`](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/eval) lors de l'insertion dans le DOM), l'exploitation est toujours possible.
Bien que cette vulnérabilité soit significative, son exploitation dépend généralement de l'interaction de l'utilisateur : visiter la page, entrer une charge utile XSS et activer le bouton “Ajouter”.
Pour renforcer cette vulnérabilité, une vulnérabilité secondaire de **clickjacking** est exploitée. Le manifeste de l'extension Chrome présente une politique `web_accessible_resources` étendue :
Notamment, la page **`/html/bookmarks.html`** est sujette à l'encadrement, donc vulnérable au **clickjacking**. Cette vulnérabilité est exploitée pour encadrer la page dans le site d'un attaquant, la superposant avec des éléments DOM pour redessiner l'interface de manière trompeuse. Cette manipulation amène les victimes à interagir involontairement avec l'extension sous-jacente.
Learn & practice AWS Hacking:<imgsrc="/.gitbook/assets/arte.png"alt=""data-size="line">[**HackTricks Training AWS Red Team Expert (ARTE)**](https://training.hacktricks.xyz/courses/arte)<imgsrc="/.gitbook/assets/arte.png"alt=""data-size="line">\
Learn & practice GCP Hacking: <imgsrc="/.gitbook/assets/grte.png"alt=""data-size="line">[**HackTricks Training GCP Red Team Expert (GRTE)**<imgsrc="/.gitbook/assets/grte.png"alt=""data-size="line">](https://training.hacktricks.xyz/courses/grte)
* Check the [**subscription plans**](https://github.com/sponsors/carlospolop)!
* **Join the** 💬 [**Discord group**](https://discord.gg/hRep4RUj7f) or the [**telegram group**](https://t.me/peass) or **follow** us on **Twitter** 🐦 [**@hacktricks\_live**](https://twitter.com/hacktricks\_live)**.**
* **Share hacking tricks by submitting PRs to the** [**HackTricks**](https://github.com/carlospolop/hacktricks) and [**HackTricks Cloud**](https://github.com/carlospolop/hacktricks-cloud) github repos.