rep+ est une extension légère pour Chrome DevTools, inspirée du Repeater de Burp Suite, désormais boostée à l’IA. J’ai souvent besoin de tester quelques requêtes sans lancer toute la stack Burp, j’ai donc créé cette extension pour garder mon flux de travail rapide, ciblé et intelligent grâce à l’intégration de LLM.
Historique, annuler/rétablir, coloration syntaxique pour les requêtes/réponses.
Aides contextuelles dans l’éditeur de requête :
Conversion du texte sélectionné (Base64, encodage/décodage URL, décodage JWT).
Copier en tant que requête HTTP complète dans plusieurs langages : curl, PowerShell (Invoke-WebRequest), Python (requests), et JavaScript fetch.
Éditeur de captures d’écran pour les paires requête/réponse : capture du contenu intégral, disposition côte à côte ou empilée, zoom, surbrillance et masquage par boîte noire, annotations redimensionnables/déplaçables, suppression par clavier, annuler/rétablir pour toutes les modifications.
Traitement par lots et automatisation
Rejeu par lots avec 4 modes d’attaque : Sniper, Battering Ram, Pitchfork, Cluster Bomb.
Marquage des positions avec §, configuration des charges utiles, pause/reprise des longues exécutions.
Vue de diff des réponses pour repérer les changements entre la ligne de base et les tentatives.
Extracteurs et recherche
Extracteur unifié : secrets, endpoints et paramètres à partir du JS capturé.
Scanner de secrets : entropie + motifs avec scores de confiance ; pagination et filtre par domaine.
Alimenté par les règles de Kingfisher pour une détection complète des secrets.
Prend en charge AWS, GitHub, Google, Slack, Stripe, Twilio, Azure et bien d’autres fournisseurs de services.
Règles stockées localement dans le répertoire rules/ pour une utilisation hors ligne.
Remarque : Le scan de secrets analyse uniquement les fichiers JavaScript de l’onglet inspecté actuellement.
Export : Exporter tous les secrets au format CSV pour analyse et rapports.
Extracteur d’endpoints : URL complètes, chemins relatifs, GraphQL ; détection de méthode ; copie en un clic (reconstruit l’URL de base).
Export : Exporter tous les endpoints au format CSV avec méthode, chemin d’endpoint, confiance et fichier source.
Extracteur de paramètres : découverte passive de paramètres JavaScript avec regroupement intelligent et évaluation des risques.
Types de paramètres : Extrait les paramètres de requête, de corps, d’en-tête et de chemin à partir des fichiers JavaScript.
Regroupés par endpoint : Les paramètres sont organisés par endpoint avec des groupes dépliables/repliables.
Classification des risques : Identifie automatiquement les paramètres à haut risque (auth, admin, flags de débogage, IDOR, flags de fonctionnalité).
Score de confiance : Modèle de confiance plus strict que les endpoints pour réduire les faux positifs.
Copier en tant que cURL : Copie en un clic génère des commandes curl avec tous les paramètres correctement formatés.
Badges de localisation : Indicateurs visuels pour la localisation du paramètre (requête/corps/en-tête/chemin).
Filtrage par domaine : Filtrer les paramètres par domaine source avec des comptes précis.
Tri des colonnes : Trier par nom de paramètre, localisation, endpoint, méthode, niveau de risque ou confiance.
Options d’export :
Export CSV : Exporter tous les paramètres avec localisation, endpoint, méthode, niveau de risque et confiance.
Export de collection Postman : Générer un JSON de collection Postman prêt à importer avec tous les endpoints et paramètres.
Regroupe automatiquement les paramètres par endpoint.
Inclut les paramètres de requête, de corps et d’en-tête.
Utilise la syntaxe de variable Postman ({{paramName}}) pour des tests faciles.
Parfait pour les testeurs de sécurité qui souhaitent importer rapidement des API découvertes dans Postman.
Recherche dans les réponses : support des regex, aperçu des correspondances, pagination, filtre par domaine.
Assistance IA
Rep+ AI Assistance (Chat LLM interactif)
Interface de chat interactive : Conversation en temps réel avec l’IA à propos de vos requêtes et réponses HTTP.
Réponses en streaming avec rendu Markdown en direct.
Coloration syntaxique pour les blocs de code (prend en charge plusieurs langages).
Copie dans le presse-papiers pour les blocs de code avec retour visuel.
Compteur d’utilisation des tokens avec avertissements colorés.
Historique de chat par requête : Chaque requête conserve son propre historique de conversation.
Sauvegarde automatique du chat lors du passage d’une requête à l’autre.
Restaure les conversations précédentes lors du retour à une requête.
Bouton d’effacement du chat qui réinitialise uniquement la conversation de la requête en cours.
Références aux requêtes précédentes : Référencez des investigations d’autres requêtes.
Interface utilisateur « Référencer les requêtes précédentes » avec liste repliable/dépliable.
Sélectionnez les requêtes précédentes à inclure dans le contexte.
L’IA reçoit des résumés des investigations précédentes pour les requêtes référencées.
Idéal pour les scénarios de test en plusieurs étapes (par exemple, connexion → requête authentifiée).
Modification de requête : L’IA peut modifier les requêtes directement dans l’éditeur.
Bouton « Appliquer les modifications » qui apparaît lorsque l’IA suggère des changements.
Détection intelligente : ne s’affiche que lorsque des modifications sont réellement suggérées.
Préserve la structure de la requête (en-têtes, formatage, version HTTP).
Application animée avec retour visuel.
Prend en charge les mises à jour des en-têtes, les modifications du corps et l’ajout de nouveaux en-têtes.
Suivi de l’historique des réponses : Garde une trace des multiples réponses issues des renvois.
Maintient un historique chronologique de toutes les réponses (originale + renvois).
L’IA dispose du contexte sur toutes les réponses lorsqu’elle analyse les changements.
Inclusion conditionnelle : n’inclut l’historique complet que lorsque cela est pertinent (optimisation des tokens).
Gestion intelligente du contexte : Optimisation intelligente des tokens.
Troncature des réponses volumineuses (~1 500 tokens max).
Compression de l’historique des conversations (résume les messages plus anciens).
Inclusion conditionnelle des réponses (uniquement lorsque demandé).
Limite l’historique des réponses aux 2-3 dernières réponses.
Conserve les 15 derniers messages dans l’historique de la conversation.
Support multi-fournisseur : Fonctionne avec Claude, Gemini et les modèles Ollama locaux.
Détection automatique du modèle pour les API Anthropic et Gemini.
Configuration manuelle de l’URL/du modèle pour les modèles locaux.
Support du streaming pour tous les fournisseurs.
Cas d’utilisation :
Tests de sécurité et conseils de tests d’intrusion.
Explication et débogage des requêtes/réponses.
Modification automatisée des requêtes pour les tests.
Génération de rapports de bug bounty.
Identification des vulnérabilités et suggestions de vecteurs d’attaque.
Planification de chaînes d’attaque en plusieurs étapes avec contexte inter-requêtes.
Autres fonctionnalités IA
Expliquer la requête (Claude/Gemini) avec réponses en streaming.
Suggérer des vecteurs d’attaque : analyse de la requête + réponse ; envoi automatique si aucune réponse ; suggestions de charges utiles ; réflexions/erreurs/chaînes multi-étapes ; repli sur la seule requête avec avertissement.
Menu contextuel « Expliquer avec l’IA » pour le texte sélectionné.
Analyse de la surface d’attaque par domaine : catégorisation (Auth/Paiements/Admin/etc.), icônes colorées, basculement entre vue liste et vue surface d’attaque.
Export des sorties IA au format Markdown ou PDF pour économiser les RPD/TPM.
Productivité et thèmes
7 magnifiques thèmes : Choisissez parmi une variété de thèmes modernes et soigneusement conçus :
🌙 Sombre (par défaut) : Thème sombre classique optimisé pour les longues sessions.
☀️ Clair : Thème clair et net pour les environnements lumineux.
🎨 Moderne Sombre : Thème inspiré de VS Code Dark+ avec un contraste renforcé.
✨ Moderne Clair : Thème clair de style GitHub avec des couleurs vives.
💙 Bleu : Palette de couleurs bleu/cyan rafraîchissante.
🔆 Haut contraste : Thème axé sur l’accessibilité avec un contraste maximal.
🖥️ Terminal : Esthétique terminal vert sur noir pour une ambiance rétro.
Sélecteur de thème : Menu déroulant facile pour changer de thème instantanément.
Transitions fluides : Changement de thème animé pour une expérience soignée.
Coloration syntaxique optimisée : Tous les thèmes incluent des couleurs soigneusement réglées pour :
Méthodes HTTP, chemins, en-têtes et versions.
Clés JSON, chaînes, nombres, booléens et valeurs nulles.
Paramètres et cookies.
Badges de méthode de requête (GET, POST, PUT, DELETE, PATCH).
Persistance du thème : Votre préférence de thème est sauvegardée et restaurée automatiquement.
Étiquettes de couleur et filtres pour les requêtes.
Coloration syntaxique pour JSON/XML/HTML.
Démarrage rapide
Ouvrez Chrome DevTools → onglet « rep+ ».
Naviguez : les requêtes sont capturées automatiquement.
Cliquez sur une requête : voyez immédiatement la requête/réponse brute.
Modifiez et « Envoyer » pour rejouer ; utilisez les boutons IA pour les suggestions d’explication/d’attaque.
Utilisez la chronologie, les filtres et le rejeu par lots pour des tests plus poussés.
Installation
Clonez le dépôt :
root@kitploit:~
git clone https://github.com/bscript/rep.git
Ouvrez les extensions Chrome :
Accédez à chrome://extensions/ dans votre navigateur.
Activez le mode développeur (interrupteur en haut à droite).
Chargez l’extension :
Cliquez sur Charger l’extension non empaquetée.
Sélectionnez le dossier rep que vous venez de cloner.
Ouvrez DevTools :
Appuyez sur F12 ou faites un clic droit → Inspecter.
Recherchez l’onglet rep+ (vous devrez peut-être cliquer sur le menu >>).
Cette combinaison rend rep+ pratique pour les chasseurs de bug bounty et les chercheurs en vulnérabilités qui souhaitent une itération à la Burp sans l’interface lourde. Installez l’extension, ouvrez DevTools, dirigez-vous vers le panneau rep+ et commencez à hacker. 😎
Configuration du modèle local (Ollama)
Si vous utilisez un modèle local (par exemple, Ollama), vous devez autoriser les extensions Chrome à l’appeler, sinon vous obtiendrez des erreurs 403/CORS.
Arrêtez toute instance Ollama en cours d’exécution.
Démarrez Ollama avec CORS activé (choisissez une option) :
Tout autoriser (plus simple pour le développement local) :
root@kitploit:~
OLLAMA_ORIGINS="*" ollama serve
Vérifiez que votre modèle existe (par exemple, gemma3:4b) avec ollama list.
Rechargez l’extension et réessayez. Si vous voyez toujours une erreur 403, consultez les logs d’Ollama pour plus de détails.
Autorisations & confidentialité
Optionnel : webRequest + <all_urls> uniquement lorsque vous activez la capture multi-onglets.
Données : stockées localement ; pas de suivi/analytique.
IA : vos clés API restent locales ; le contenu des requêtes/réponses n’est envoyé qu’au fournisseur que vous choisissez (Claude/Gemini) lorsque vous invoquez les fonctionnalités IA.
⚠️ Limitations
rep+ s’exécute dans Chrome DevTools, donc :
Pas de requêtes HTTP/1 brutes ou malformées (limitation de fetch()).
Certains en-têtes ne peuvent pas être modifiés (bac à sable du navigateur).
Pas de sockets TCP bruts (pas de tests de smuggling/pipelining).
Les contraintes du panneau DevTools limitent certaines configurations UI.
rep+ est idéal pour les tests rapides, le rejeu et l’expérimentation — pas pour un travail HTTP bas niveau complet.
Historique des étoiles
Vous avez trouvé un bogue ou un problème ?
Si vous rencontrez des bogues, des comportements inattendus ou si vous avez des demandes de fonctionnalités, aidez-moi à améliorer rep+ en ouvrant un problème ici.
Je ferai de mon mieux pour y répondre aussi rapidement que possible ! 🙏
❤️ Soutenir le projet
Je maintiens rep+ seul, sur mon temps libre.
Le parrainage m’aide à continuer d’améliorer l’extension, d’ajouter de nouvelles fonctionnalités et de répondre rapidement aux problèmes.
Si rep+ vous a fait gagner du temps lors de tests, de développement ou de chasse aux bugs, pensez à soutenir le projet.
Chaque dollar compte. ❤️