Skip to content
KitploitKITPLOIT
OutilsExploitsBlog
Log in
Soumettre
OutilsExploitsBlog
Soumettre

Outils de Hacking, PenTest et Cybersécurité pour votre Arsenal de Sécurité !

Kitploit est un répertoire d'outils de hacking, de cybersécurité et de pentesting. Découvrez les dernières mises à jour des projets pour trouver des vulnérabilités, analyser des systèmes, automatiser les tests et renforcer votre sécurité.

··Flux·Contact·Confidentialité·© 2026 Kitploit

Répertoire d'outils

Catégories

Voir toutes les catégories
Loading categories
HTMLSmuggler — ✉️ Générateur & obfuscateur de HTML Smuggling pour vos opérations Red Team | Kitploit
Outils/GitHubGitHub/d00movenok/htmlsmuggler
Génération de PayloadsÉvasion IDS/IPSExploitation d'Applications WebHameçonnageRed Teaming
GitHubd00movenok/htmlsmuggler

HTMLSmuggler

✉️ Générateur & obfuscateur de HTML Smuggling pour vos opérations Red Team

Voir le dépôt
2002420il y a 2 ansVérifié par Kitploit

Populaires

Voir tout →

Découvrez les outils les plus utilisés par notre communauté.

Explorer tous les outils

Parcourez notre collection d'outils

Voir tous les outils →
Partager

HTMLSmuggler ✉️

License: MIT

HTMLSmuggler - Générateur de payload JS pour contournement IDS et livraison de payload via HTML smuggling.

Description

L'explication complète de ce qu'est le HTML Smuggling peut être trouvée ici.

L'objectif principal du HTML smuggling est de contourner les contrôles de sécurité réseau, tels que les pare-feu et les systèmes de détection d'intrusion, en dissimulant des charges malveillantes (exécutables/archives/etc.) dans un code HTML et JavaScript apparemment inoffensif. En exploitant la nature dynamique des applications web, les attaquants peuvent livrer du contenu malveillant au navigateur d'un utilisateur sans déclencher d'alertes de sécurité ni être détectés par les mécanismes de sécurité traditionnels. Grâce à cette technique, le téléchargement d'un fichier malveillant n'est en aucun cas affiché dans les solutions IDS modernes.

Le principal objectif de l'outil HTMLSmuggler est de créer une bibliothèque JavaScript indépendante avec une charge utile malveillante définie par l'utilisateur intégrée. Cette bibliothèque peut être intégrée dans vos sites de phishing/pièces jointes d'email HTML/etc. pour livrer la charge utile intégrée au système de l'utilisateur cible (en contournant les systèmes IDS et IPS). Un exemple de bibliothèque JavaScript créée peut être trouvé ici.

Fonctionnalités

  • Obfuscateur JavaScript intégré hautement configurable qui cache entièrement votre charge utile, rendant impossible l'extraction manuelle de votre payload à partir du JavaScript.
  • Puissante bibliothèque de détection des bots clients et des crawlers headless qui ne partage pas vos charges utiles avec les passerelles de messagerie sécurisées intelligentes et leurs amis.
  • Délai avant le chargement pour éviter les sandboxes qui sont pressés.
  • Peut être utilisé à la fois comme bibliothèque JS indépendante ou intégré dans des frameworks JS tels que React, Vue.js, etc.
  • La simplicité du modèle permet d'ajouter des gestionnaires de données supplémentaires/compressions/obfuscations.
  • Supporte beaucoup de navigateurs (y compris les anciens IE10).

Installation

  1. Installer le gestionnaire de paquets yarn.

  2. Installer les dépendances :

    yarn
    
  3. Lire le message d'aide.

    yarn build -h
    
    Options:
      -p, --payload <string>   Chemin vers le fichier de payload à smuggler
      -n, --name <string>      Nom du fichier qui sera téléchargé
      -t, --type <string>      Content-Type du fichier téléchargé (par défaut : "application/octet-stream")
      -f, --function <string>  Nom de la fonction exportée (par défaut : "download")
      -c, --compress           Activer la compression du payload (gzip)
      -d, --delay <number>     Délai avant l'antibot et le téléchargement en ms (par défaut : 0)
      -a, --antibot            Activer la détection de bots et les bloquer (recommandé)
      -h, --help               Afficher l'aide pour la commande
    

Utilisation

Étapes de préparation

  1. (Optionnel) Modifier les options de javascript-obfuscator dans obfuscator.js, mon préréglage est bien, mais très lent.

  2. Compiler votre payload JavaScript :

    ⚠️ ÉVITEZ D'UTILISER DES PAYLOADS DE PLUS DE 3 MiB (voir FAQ)

    yarn build -p /path/to/payload -n file.exe -t "application/octet-stream" -c -a -d 3000
    
  3. Obtenez votre payload depuis dist/payload.esm.js ou dist/payload.umd.js. Ensuite, il peut être inséré dans votre page et appelé avec la fonction download() (ou personnalisée avec l'option -f).

    payload.esm.js est utilisé dans les imports import { download } from 'payload.esm'; (norme ECMAScript).

    payload.umd.js est utilisé dans le script HTML via SRC et les imports require('payload.umd'); (CommonJS, AMD et HTML pur).

Exemple HTML pur

Un exemple complet peut être trouvé ici.

  1. Effectuez les étapes de préparation.

  2. Importez le script créé dans le fichier HTML (ou insérez-le en ligne) :

    <head>
      <script src="payload.umd.js"></script>
    </head>
    
  3. Appelez la fonction download() depuis le body :

    <body>
      <button onclick="download()">Un bouton de phishing</button>
    </body>
    
  4. Bon phishing :)

Exemple VueJS

Un exemple complet peut être trouvé ici.

  1. Effectuez les étapes de préparation.

  2. Importez le script créé dans le fichier Vue :

    <script>
      import { download } from './payload.esm';
    </script>
    
  3. Appelez la fonction download() :

    <template>
      <button @click="download()">Un bouton de phishing</button>
    </template>
    
  4. Bon phishing :)

FAQ

Q : J'ai une erreur RangeError: Maximum call stack size exceeded, comment la résoudre ?

R : Ce problème est décrit ici. Pour le corriger, essayez de désactiver splitStrings dans obfuscator.js ou utilisez une charge utile plus petite (il est recommandé d'utiliser des payloads jusqu'à 2 Mo à cause de ce problème).


Q : Pourquoi la construction de mon payload prend-elle autant de temps ?

R : Plus la charge utile est grosse, plus la création du fichier JS prend du temps. Pour réduire le temps de construction, essayez de désactiver splitStrings dans obfuscator.js. Ci-dessous un tableau avec les temps de construction estimés en utilisant le obfuscator.js par défaut.

Taille du payloadTemps de construction
525 Ko53 s
1,25 Mo8 m
3,59 Mo25 m
Télécharger l’outil