
A fast, simple scanner for detecting CVE-2025-66470 - XSS vulnerability in NiceGUI's ui.interactive_image component.

Un scanner rapide et simple pour détecter CVE-2025-66470 - vulnérabilité XSS dans le composant ui.interactive_image de NiceGUI.
| Champ | Valeur |
|---|---|
| CVE | CVE-2025-66470 |
| GHSA | GHSA-2m4f-cg75-76w2 |
| Composant | ui.interactive_image |
| Affecté | NiceGUI ≤ 3.3.1 |
| Corrigé | NiceGUI 3.4.0+ |
| Type | XSS stocké/réfléchi |
Le composant ui.interactive_image affiche le contenu SVG en utilisant la directive v-html de Vue sans assainissement, permettant une XSS via la balise <foreignObject>.
Code vulnérable :
<g v-html="content"></g>
| Fichier | Description |
|---|---|
nicegui_scanner.py | Scanner simple - Sortie propre d'une ligne par cible |
nicegui_xss_scanner.py | Scanner complet - Analyse détaillée avec rapports |
git clone https://github.com/yourusername/nicegui-xss-scanner.git
cd nicegui-xss-scanner
pip install requests
Cible unique :
python nicegui_scanner.py http://target.com/
Scan par lot (depuis fichier) :
python nicegui_scanner.py -l targets.txt
Analyse complète :
python nicegui_xss_scanner.py http://target.com/
usage: nicegui_scanner.py [-h] [-l LIST] [--timeout TIMEOUT] [target]
NiceGUI XSS Scanner - CVE-2025-66470
positional arguments:
target Target URL
options:
-h, --help Show help message
-l, --list LIST File with URLs (one per line)
--timeout TIMEOUT Request timeout (default: 10)
╔══════════════════════════════════════════════════════════════╗
║ NiceGUI XSS Scanner - CVE-2025-66470 ║
╚══════════════════════════════════════════════════════════════╝
[*] Scanning 3 target(s)...
──────────────────────────────────────────────────────────────────────
[1/3] http://192.168.1.10:8080/... 🚨 CONFIRMED (v2.1.0)
[2/3] http://192.168.1.20:5000/... ⚠ VULN_VER (v3.3.0)
[3/3] http://example.com/... ✓ NOT_NICEGUI
──────────────────────────────────────────────────────────────────────
SUMMARY:
Total scanned: 3
XSS CONFIRMED: 1
✓ Saved: nicegui_CONFIRMED_174530.txt
| Statut | Signification |
|---|---|
| 🚨 CONFIRMÉ | Vulnérabilité XSS confirmée (3 vérifications réussies) |
| ⚠ VERSION_VULN | Version vulnérable détectée, nécessite un test manuel |
| ✓ PAS_NICEGUI | Ce n'est pas une application NiceGUI |
Pour qu'une XSS soit marquée comme CONFIRMÉE, les 3 vérifications doivent réussir :
<foreignObject>
<body xmlns="http://www.w3.org/1999/xhtml">
</body>
</foreignObject>
# Comments start with #
http://target1.com/
http://target2.com:8080/
https://target3.com/login
requestspip install requests
Cet outil est destiné uniquement aux tests de sécurité autorisés. Utilisez-le de manière responsable et uniquement sur des systèmes pour lesquels vous avez l'autorisation de tester.
Licence MIT - Voir LICENSE pour les détails.
targets.txt |
| Exemple de fichier de cibles pour scan par lot |