
Extension Burp pour contourner la prise d'empreinte TLS. Contourne les WAF, usurpe n'importe quel navigateur.
Cette extension détourne la pile HTTP et TLS de Burp, vous permettant d'usurper l'empreinte TLS de n'importe quel navigateur (JA3). Elle renforce la puissance de Burp Suite tout en réduisant la probabilité de fingerprinting par divers WAF tels que CloudFlare, PerimeterX, Akamai, DataDome, etc.
Cette extension fonctionne sans recourir à des bidouilles peu élégantes, à la réflexion ou à du code forké de Burp Suite Community.

La maintenance de ce projet est rendue possible grâce à tous les charmants contributeurs et sponsors. Si vous souhaitez sponsoriser ce projet et voir votre avatar ou le logo de votre entreprise apparaître dans cette section, cliquez ici. 💖

Ceci n'est qu'un exemple. Si vous avez testé avec un autre site dédié à la détection de bots, faites-moi part de vos résultats !
Malheureusement, l'API de Burp est très limitée pour des cas d'utilisation plus avancés comme celui-ci, j'ai donc dû bricoler avec pour que cela fonctionne.
Lorsqu'une requête arrive, l'extension l'intercepte et la transmet à un serveur HTTPS local démarré en arrière-plan (une fois l'extension chargée). Ce serveur fonctionne comme un proxy ; il transmet la requête à la destination, tout en préservant l'ordre original des en-têtes et en appliquant une configuration TLS personnalisable. Ensuite, le serveur local renvoie la réponse à Burp.
Les paramètres de configuration et d'autres informations nécessaires comme l'adresse du serveur de destination et le protocole sont envoyés au serveur local à chaque requête via un en-tête magique. Cet en-tête magique est retiré de la requête avant qu'elle ne soit transmise au serveur de destination.

ℹ️ Une autre option aurait été de coder un serveur proxy en amont et d'y connecter Burp, mais j'avais personnellement besoin d'une extension pour la personnalisation et la portabilité.
Java
comme type d'extension et parcourez jusqu'au fichier jar que vous venez de télécharger. Cliquez sur « Next » en bas,
et l'extension devrait se charger sans aucune erreur.Cette extension est « plug and play » et devrait se suffire à elle-même. Vous pouvez survoler chaque champ de l'onglet « Awesome TLS » avec votre souris pour obtenir plus d'informations sur chacun d'entre eux.
Pour charger votre Client Hello personnalisé depuis WireShark, vous pouvez copier l'enregistrement client hello sous
forme de flux hexadécimal et le coller dans le champ « Hex Client Hello ».

Dans l'onglet « advanced », vous pouvez activer un écouteur proxy supplémentaire qui appliquera automatiquement l'empreinte actuelle de la requête :

Une fois activé, le diagramme devient :

Cette extension a été développée avec l'IDE JetBrains IntelliJ (et GoLand). Les instructions de compilation ci-dessous supposent que vous utilisez les mêmes outils pour compiler. Consultez workflows pour connaître les versions cibles des langages de programmation.
./src-go/. Exécutez
cd ./src-go/server && go build -o ../../src/main/resources/{OS}-{ARCH}/server.{EXT} -buildmode=c-shared ./cmd/main.go,
en remplaçant {OS}-{ARCH} par votre OS et votre architecture CPU et {EXT} par l'extension préférée de votre
plateforme pour les bibliothèques C dynamiques. Par exemple : linux-x86-64/server.so. Consultez
la documentation JNA pour plus
d'informations sur les plateformes prises en charge.SettingsTab.form en code Java via Build > Build project.gradle buildJar.Vous devriez maintenant avoir un fichier jar (généralement situé dans ./build/libs) qui fonctionne avec Burp sur votre système d'exploitation.
Un merci tout particulier aux mainteneurs des dépôts suivants :
Et aux créateurs des sites web suivants :