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
blindxss-lite — Un collecteur et serveur de payload Blind XSS (Cross-Site Scripting) léger construit avec Flask | Kitploit
Outils/GitHubGitHub/yuyudhn/blindxss-lite
Outils de PhishingGénération de PayloadsExploitation d'Applications WebExfiltration de DonnéesCollecte d'InformationsSécurité WebTests d'IntrusionCommandement et ContrôleUtilitaires et FrameworksRed Teaming
GitHub
133il y a 29 joursPas encore vérifié

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
yuyudhn/blindxss-lite

blindxss-lite

Un collecteur et serveur de payload Blind XSS (Cross-Site Scripting) léger construit avec Flask

Voir le dépôt

blindxss-lite

Un collecteur Blind XSS (Cross-Site Scripting) léger et un serveur de payload construit avec Flask. Il sert un payload JavaScript qui capture les données du navigateur de la victime (cookies, localStorage, extraits DOM, etc.) et les transmet à un tableau de bord adossé à SQLite, protégé par HTTP Basic Auth.

Fonctionnalités

  • Distribution du payload — /p.js sert un payload JS autonome utilisant sendBeacon ou fetch
  • Points de collecte — POST /c (JSON/FormData) et GET /c.gif (balise pixel compatible CSP)
  • Tableau de bord d'administration — /events liste les événements capturés, /events/<id>/view affiche les détails complets
  • Générateur de payload — /payloads propose 14 variantes de payload XSS ainsi qu'un éditeur JS personnalisé
  • HTTP Basic Auth — routes d'administration protégées par ADMIN_USER / ADMIN_PASSWORD
  • Persistance SQLite — base de données créée automatiquement au premier lancement ; supprimer bxss.db la reconstruit à neuf
  • Prêt pour Docker — Dockerfile et docker-compose.yml inclus
  • Limitation de débit — limiteur à fenêtre glissante adossé à SQLite pour les points de collecte (partagé entre les workers)

Démarrage rapide

Docker Compose

# Set credentials
echo "ADMIN_USER=admin" > .env
echo "ADMIN_PASSWORD=your-admin-password" >> .env

# Build and run
docker compose up -d --build

Tableau de bord : http://127.0.0.1:8089/events (le navigateur demandera l'authentification Basic)

Sans Docker

pip install -r requirements.txt
export ADMIN_USER="admin"
export ADMIN_PASSWORD="your-admin-password"
gunicorn -b 127.0.0.1:8080 --workers 2 --threads 4 wsgi:app

Utilisation

  1. Rendez-vous sur /payloads (après authentification) pour copier un payload XSS.
  2. Injectez le payload dans un champ de saisie cible suspecté de Blind XSS.
  3. Lorsqu'une victime charge la page, le payload s'exécute et envoie ses données à votre serveur.
  4. Consultez les événements capturés sur /events.

Points d'accès

Collecteur (public, sans authentification)

MéthodeCheminDescription
GET/p.jsJavaScript du payload XSS
POST/cReçoit du JSON/FormData depuis le payload
GET/c.gifBalise pixel (compatible CSP)

Administration (HTTP Basic Auth)

MéthodeCheminDescription
GET/eventsLes 500 derniers événements
GET/events/<id>Détail de l'événement en JSON
GET/events/<id>/viewDétail de l'événement en HTML
GET/POST/payloadsGénérateur de payload + éditeur JS personnalisé

Utilitaire

MéthodeCheminDescription
GET/_healthzVérification de l'état

Configuration

VariableValeur par défautDescription
ADMIN_USERadminNom d'utilisateur du tableau de bord
ADMIN_PASSWORDchangemeMot de passe du tableau de bord
DB_PATH./bxss.dbChemin de la base de données SQLite
MAX_BODY524288Taille maximale du corps du collecteur (octets)
RATE_LIMIT_COUNT60Nombre maximal de requêtes collecteur par fenêtre (par IP)
RATE_LIMIT_WINDOW60Fenêtre de limitation de débit en secondes
LOG_LEVELINFONiveau de journalisation Python

Le JS personnalisé est édité et stocké via la page d'administration /payloads (persisté dans la table SQLite settings) et ajouté à /p.js. Il n'est plus lu depuis un fichier.

Structure du projet

blindxss-lite/
├── wsgi.py              # WSGI entry point
├── requirements.txt     # Python dependencies
├── Dockerfile           # Container image
├── docker-compose.yml   # Compose config
├── .env                 # Credentials (don't commit)
└── app/
    ├── __init__.py      # App factory, CORS, health check
    ├── config.py        # Config + .env loader
    ├── db.py            # SQLite layer
    ├── collectors.py    # /p.js, /c, /c.gif
    ├── events.py        # /events admin
    ├── payloads.py      # /payloads admin
    ├── utils.py         # Helpers + Basic Auth decorator
    ├── static/
    │   └── style.css
    └── templates/
        ├── events.html
        ├── event.html
        └── payloads.html

Données collectées par le payload

  • Titre et URL du document
  • Origine et référent
  • document.cookie
  • User agent
  • localStorage et sessionStorage (toutes les clés)
  • Extrait DOM (200 premiers Ko, compressé en zlib+base64)

Démonstration

Payloads : Payload Page

Résultat :

Détail du résultat :

Notes de sécurité

  • Les routes d'administration nécessitent HTTP Basic Auth. Utilisez un mot de passe fort en production.
  • Les points de collecte sont intentionnellement non authentifiés.
  • Toutes les origines sont autorisées pour CORS afin que les payloads puissent envoyer des données depuis n'importe quel site.
  • La limitation de débit adossée à SQLite aide à atténuer les abus du collecteur et est partagée entre les workers.
  • .env ne doit jamais être commité dans le contrôle de version.
Télécharger l’outil