
Une extension de navigateur Chrome/Firefox pour afficher des alertes pour les paramètres de requête réfléchis, afficher les liens d'archive Wayback pour le chemin actuel, afficher les éléments cachés et activer les éléments désactivés.
Il s'agit d'une extension Chrome/Firefox qui peut faire ce qui suit :
', " et < sont reflétés sans être encodés.Xnl Reveal des DevTools du navigateur.Xnl Reveal des DevTools du navigateur).La possibilité d'afficher une alerte pour les paramètres reflétés s'inspire d'un commentaire de @renniepak sur l'épisode 42 du Critical Thinking - Bug Bounty Podcast, dans lequel il mentionnait qu'il disposait de sa propre extension de navigateur qui l'informait de toute réflexion.
Le nombre de paramètres reflétés trouvés est indiqué par un badge vert sur l'icône de l'extension. Cependant, si l'un des noms de paramètres reflétés fait partie des catégories décrites dans la recherche sur les paramètres « sus » par @Jhaddix et @G0LDEN_infosec, le badge sera rouge. S'il y a des paramètres « sus », les catégories seront également affichées dans la sortie de l'onglet Xnl Reveal des DevTools, dans la boîte d'alerte et dans le presse-papiers, par ex. boringParameter, query [XSS], path [LFI/RFI | SSRF | XSS] (c'est la même chose que l'identification des paramètres « sus » dans mon extension GAP Burp).
La possibilité d'afficher les éléments cachés et d'activer les éléments désactivés s'inspire de ce tweet de Critical Thinking - Bug Bounty Podcast, et je l'ai d'abord créée sous forme de marque-pages du navigateur.
L'icône de l'extension est normalement affichée sur un fond noir
, mais si l'icône apparaît sur un fond rouge
, cela indique que l'API Wayback CDX Server est probablement indisponible. Même si les fonctions principales sont désactivées, l'extension vérifiera l'état de l'API toutes les 10 minutes.
IMPORTANT : lorsque vous utilisez des outils comme waymore, waybackurls ou gau pour obtenir des URL depuis l'archive Wayback, ceux-ci utilisent l'API CDX Server. Si l'API est en panne, vous ne recevrez aucune donnée de la Wayback Machine, uniquement d'autres sources. De plus, seul waymore vous indiquerait qu'il y a un problème.
Clonez ce dépôt sur votre machine puis suivez les instructions ci-dessous, selon que vous souhaitez l'installer sur un navigateur Chrome ou Firefox :
Ouvrez le gestionnaire d'extensions dans Chrome en suivant : Menu kebab (trois points verticaux) -> Extensions -> Gérer les extensions
Si le mode développeur n'est pas activé, activez-le en cliquant sur l'interrupteur en haut à droite.
Cliquez maintenant sur le bouton Charger l'extension non empaquetée en haut à gauche.
Accédez au répertoire où se trouve le dossier Xnl Reveal et sélectionnez-le.
L'extension est maintenant chargée. Vous pouvez cliquer sur l'icône de l'extension dans la barre d'outils, puis sur l'icône d'épingle pour épingler Xnl Reveal à votre barre d'outils.
IMPORTANT : avec les extensions Firefox, vous devrez la charger à chaque ouverture de Firefox. Malheureusement, je ne peux pas l'ajouter au magasin Firefox pour éviter cela, car il faudrait pour cela le Manifest v3. Xnl Reveal doit utiliser le Manifest v2 (à moins que quelqu'un d'autre puisse trouver comment faire, car je n'y suis pas arrivé), qui a moins de restrictions de sécurité et lui permet de fonctionner.
Allez sur about:debugging dans un nouvel onglet du navigateur.
Cliquez sur l'en-tête Ce Firefox à gauche de la page.
Cliquez sur le bouton Charger un module complémentaire temporaire... sous l'en-tête Modules temporaires.
Accédez au dossier Firefox du dépôt téléchargé, sélectionnez n'importe quel fichier, puis cliquez sur Ouvrir.
L'extension est maintenant chargée. Vous pouvez cliquer sur l'icône de l'extension dans la barre d'outils, puis sur l'icône d'engrenage Paramètres, et sélectionner Épingler à la barre d'outils.
Xnl Reveal dans la barre d'outils et sélectionnez Options, vous accéderez à la page des options.Xnl Reveal dans la barre d'outils et sélectionnez Gérer l'extension, cliquez ensuite sur l'onglet Options pour voir la page des options.
Vous disposez des options suivantes :
Canary token - Lorsque des requêtes sont effectuées pour tester la réflexion des paramètres de requête, il s'agit de la valeur du paramètre qui est utilisée et recherchée.Vérifier la réflexion de ' " < - Lorsque des requêtes sont effectuées pour tester la réflexion des paramètres de requête, la chaîne '",xnl est ajoutée à la fin du Canary token. Si l'un de ces caractères est reflété sans être encodé, cela sera également signalé. Si le passage de ces caractères fait que le Canary token n'est pas reflété du tout (peut-être qu'un WAF bloque le <), une autre requête sera effectuée avec uniquement le Canary token.Afficher une boîte d'alerte pour les réflexions - Si cette option est sélectionnée et que Afficher les réflexions des paramètres de requête est sélectionné dans le menu popup (voir ci-dessous), une boîte d'alerte du navigateur s'affichera avec les détails des paramètres de requête reflétés.Copier le texte des réflexions dans le presse-papiers - Si cette option est sélectionnée et que est sélectionné dans le menu popup (voir ci-dessous), lorsque des réflexions de paramètres sont trouvées, les détails sont placés dans le presse-papiers de l'utilisateur en plus d'être écrits dans l'onglet des DevTools (et dans une boîte d'alerte si demandé). Cela signifie que dès que vous voyez une boîte d'alerte ou des détails dans l'onglet DevTools, vous pouvez aller dans vos notes et coller les détails immédiatement. Si vous cliquez sur le logo Xnl Reveal dans la barre d'outils, vous verrez un menu popup.
Vous disposez des paramètres suivants :
ENABLE REVEAL - Si cette case n'est pas cochée, l'extension ne fera rien. Si elle est cochée, elle effectuera certaines actions sur les pages Web visitées (si elles sont dans le périmètre), en fonction des autres options définies.Afficher les réflexions des paramètres de requête - Si cette case est cochée, lorsqu'une page Web visitée comporte des paramètres de requête, une requête en arrière-plan est effectuée pour chaque paramètre, en remplaçant chacun à tour de rôle par le Canary token de la page des options. Si le jeton est trouvé pour l'un des paramètres dans la réponse, un message est écrit dans l'onglet Xnl Reveal des DevTools vous indiquant l'URL et tous les paramètres de cette page qui ont été reflétés. Si les options sont sélectionnées, ces détails peuvent également être affichés dans une boîte d'alerte du navigateur et copiés dans le presse-papiers de l'utilisateur. L'extension affichera également un badge avec le nombre de réflexions trouvées.CHARSET IS NOT SPECIFIED IN RESPONSE! si le jeu de caractères n'est pas explicitement défini pour une page HTML. Cela peut signifier que le XSS est potentiellement plus facile grâce à une astuce expliquée dans ce blog.Écrire les points de terminaison Wayback dans DevTools - Si cette case est cochée, pour chaque emplacement/chemin visité dans le navigateur, jusqu'à 1000 points de terminaison seront récupérés depuis l'archive Wayback et écrits dans l'onglet des DevTools. Une fois qu'un emplacement/chemin a été envoyé à l'API Wayback, il ne sera plus envoyé, sauf si a été cliqué.Si vous faites un clic droit sur une page Web, vous obtiendrez le menu contextuel du navigateur. Par exemple, si vous êtes sur example.com et que vous avez sélectionné Liste blanche dans les Options, vous verrez ceci :
Ces options sont disponibles même si l'option ENABLE REVEAL du menu popup n'est pas sélectionnée. Vous pouvez choisir parmi 3 options :
Obtenir les points de terminaison Wayback - Si vous cliquez dessus, un nouvel onglet s'ouvrira contenant les points de terminaison de l'archive Wayback pour le domaine de la fenêtre sur laquelle vous avez cliqué. Ceci n'est affecté par aucun autre paramètre et peut être exécuté même si l'extension n'est pas activée.Afficher les éléments cachés - Cela affichera tous les éléments cachés de la page actuelle, de la même manière que l'option Afficher les éléments cachés, mais l'extension n'a pas besoin d'être activée.Activer les éléments désactivés - Cela activera tous les éléments désactivés de la page actuelle, de la même manière que l'option Activer les éléments désactivés, mais l'extension n'a pas besoin d'être activée.Afficher la version Google Cache - Si vous cliquez dessus, un nouvel onglet s'ouvrira avec la version Google Cache de la page actuelle. Même si un site Web n'est plus disponible, Google en conserve une copie dans ses archives et vous pouvez toujours accéder à la page en cache.Afficher la recherche de domaine FOFA - Si vous cliquez dessus, un nouvel onglet s'ouvrira avec FOFA affichant les résultats de recherche pour domain="{TARGET}", où {TARGET} est le domaine de l'onglet actif.Les messages concernant les réflexions des paramètres et les points de terminaison Wayback étaient auparavant écrits dans la console, mais ils sont désormais écrits dans un onglet séparé des DevTools du navigateur. À partir de là, vous pouvez :
Filtrer les messages... - Saisissez un texte pour filtrer les messages en temps réel, ce qui facilite la recherche de réflexions ou de résultats Wayback spécifiques parmi les messages stockés.Copier tous les messages - Copiez tous les messages dans le presse-papiers afin de pouvoir les coller dans vos notes !Copier toutes les URL - Extrayez toutes les URL uniques des messages actuellement visibles (en respectant tout filtre actif) et copiez-les dans le presse-papiers, une par ligne. C'est utile pour rassembler rapidement toutes les URL issues des réflexions et des résultats Wayback pour des tests ultérieurs.Effacer les messages et le cache - Efface tous les messages de l'onglet et du stockage local. Cela efface également les points de terminaison Wayback déjà recherchés précédemment.
Cette extension de navigateur ne sera pas parfaite !
Parfois, le changement de code peut casser une page. Si vous rencontrez un problème, désélectionner un paramètre dans le menu popup rechargera la page et tout peut redevenir normal, mais vous ne pourrez simplement plus vérifier.
Il peut également y avoir des erreurs affichées sur la page Gérer l'extension dans certaines situations.
Si vous exécutez manuellement une option depuis le menu contextuel et que rien ne se passe, vous devrez peut-être actualiser la page sur laquelle vous essayez d'exécuter l'option et réessayer.
Créer une liste de mots à la version Firefox.Error copying to clipboard (NotAllowedError: Document is not focused.)true, false, 1, etc., car il y aura beaucoup de faux positifs.Si vous rencontrez le moindre problème ou si vous avez des idées d'amélioration, n'hésitez pas à ouvrir une issue sur Github. En cas de problème, il sera utile de fournir l'URL exacte sur laquelle vous étiez, ainsi que les erreurs de console.
Bonne chance et bonne chasse !
Si vous aimez vraiment l'outil (ou d'autres), ou s'ils vous ont aidé à trouver une superbe prime, pensez à M'OFFRIR UN CAFÉ ! ☕ (j'ai bien besoin de caféine !)
🤘 /XNL-h4ck3r
Afficher les réflexions des paramètres de requêteXnl RevealListe noire des paramètres - Il s'agit d'une liste séparée par des virgules de noms de paramètres (par ex. param1,param2) que vous ne souhaitez pas remplacer par le canary token pour vérifier s'il est reflété. Cela peut être utilisé lorsque le test de certains paramètres pose problème, par ex. vous déconnecte.Délai de vérification - Lorsqu'une page est chargée, selon les paramètres, l'extension essaiera d'afficher les éléments cachés et d'activer les éléments désactivés. Cependant, certaines parties de la page sont parfois chargées dynamiquement et ne sont pas dans la réponse d'origine. L'extension essaiera de les afficher et de les activer à nouveau après ce délai (en secondes) une fois la page initialement chargée.Wayback RegEx - Si le paramètre d'écriture des points de terminaison de l'archive Wayback a été sélectionné, seuls les points de terminaison Wayback correspondant à l'expression régulière saisie seront affichés dans l'onglet DevTools. Si le champ est laissé vide, jusqu'à 1000 points de terminaison Wayback sont renvoyés. IMPORTANT : toute expression régulière saisie sera traitée sans tenir compte de la casse.KNOXSS API Key - Saisissez votre clé API KNOXSS. Si une clé est enregistrée et que Afficher les réflexions des paramètres de requête est activé dans le menu popup, lorsqu'une réflexion est trouvée, l'URL est automatiquement envoyée à l'API KNOXSS. L'en-tête X-API-KEY est défini avec la clé enregistrée, et les cookies de la page actuelle sont transmis comme en-têtes d'authentification. La réponse de l'API KNOXSS est écrite dans l'onglet Xnl Reveal des DevTools. L'appel API est effectué de manière asynchrone afin de ne pas bloquer l'interaction avec la page.Périmètre de l'extension - options :
Liste blanche ou Liste noire - Cela détermine quels sites déclencheront des vérifications de réflexion des paramètres et/ou la récupération des points de terminaison Wayback. Selon l'option choisie, un hôte doit contenir ou ne pas contenir le mot saisi pour être traité.Mot d'hôte à ajouter - Saisissez un mot présent dans le nom d'hôte (ou un nom d'hôte complet) que vous souhaitez ajouter à la liste blanche ou à la liste noire, puis cliquez sur le bouton Ajouter pour l'ajouter à la liste de périmètre. Par exemple, si vous ne voulez traiter que les pages Redbull, ajoutez simplement redbull et définissez-le comme liste blanche.Ajouter - Ajoute un mot saisi à la liste de périmètre.Supprimer la sélection - Supprime le(s) mot(s) sélectionné(s) de la liste de périmètre.Tout effacer - Supprime tous les mots de la liste de périmètre.Enregistrer - Si des options sont modifiées, cliquez sur ce bouton pour les enregistrer pour une utilisation future.Effacer les URL/paramètres enregistrés - Si l'extension recherche des paramètres de requête reflétés, vous ne voulez pas continuer à être alerté pour les mêmes combinaisons URL/paramètre ; celles qui ont été signalées sont donc stockées pour éviter cela. Toutefois, si vous souhaitez effacer la mémoire de celles-ci, vous pouvez cliquer sur ce bouton pour les supprimer. De même, nous ne voulons pas continuer à envoyer les mêmes requêtes à l'archive Wayback, elles sont donc également stockées, mais peuvent être effacées en appuyant sur ce bouton.Xnl RevealEffacer les URL/paramètres enregistrésAfficher les éléments cachés - Si cette case est cochée, tous les éléments (à l'exception de img, span et div) qui sont cachés seront affichés. Ils seront affichés avec une bordure rouge et une étiquette en rouge qui donne quelques détails. Parfois, si la page est dynamique, les éléments peuvent ne pas être affichés.Activer les éléments désactivés - Si cette case est cochée, tous les éléments (à l'exception de img, span et div) qui sont désactivés seront activés. Ils seront affichés avec une bordure rouge et une étiquette en rouge qui donne quelques détails. Parfois, si la page est dynamique, les éléments peuvent ne pas être affichés. Vous pouvez toujours cliquer sur le bouton Exécuter maintenant pour modifier la page actuellement chargée.Créer une liste de mots UNIQUEMENT CHROME POUR LE MOMENT - Si vous cliquez dessus, une liste de mots sera créée à partir du contenu de la page et affichée dans un nouvel onglet.{Ajouter|Supprimer} {HÔTE} {de|vers} {liste blanche|liste noire} - Selon que le nom d'hôte de l'onglet actuel est déjà dans la liste de périmètre et selon que l'option liste blanche ou liste noire est sélectionnée, vous obtiendrez un élément de menu pour l'ajouter ou le supprimer. Par exemple, si vous êtes sur https://www.redbull.com/gb-en/ et que vous avez Blacklist sélectionné dans la page Options, et que redbull.com n'est pas dans la liste de périmètre, vous verrez l'élément de menu contextuel Ajouter redbull.com à la liste noire. IMPORTANT : si l'élément de menu n'affiche pas le bon hôte, vous devrez peut-être actualiser l'onglet.