Uncovering CloudFlare
Techniques courantes pour découvrir Cloudflare
Vous pouvez utiliser un service qui vous donne les enregistrements DNS historiques du domaine. Peut-être que la page web est hébergée sur une adresse IP utilisée précédemment.
Il est possible d'obtenir le même résultat en vérifiant les certificats SSL historiques qui pourraient pointer vers l'adresse IP d'origine.
Vérifiez également les enregistrements DNS d'autres sous-domaines pointant directement vers des adresses IP, car il est possible que d'autres sous-domaines pointent vers le même serveur (peut-être pour offrir FTP, mail ou tout autre service).
Si vous trouvez un SSRF à l'intérieur de l'application web, vous pouvez l'exploiter pour obtenir l'adresse IP du serveur.
Recherchez une chaîne de caractères unique de la page web dans des navigateurs tels que shodan (et peut-être google et similaires ?). Vous pourriez trouver une adresse IP avec ce contenu.
De manière similaire, au lieu de rechercher une chaîne de caractères unique, vous pourriez rechercher l'icône favicon avec l'outil : https://github.com/karma9874/CloudFlare-IP ou avec https://github.com/pielco11/fav-up
Cela ne fonctionnera pas très fréquemment car le serveur doit envoyer la même réponse lorsqu'il est accédé par l'adresse IP, mais on ne sait jamais.
Outils pour découvrir Cloudflare
Recherchez le domaine dans http://www.crimeflare.org:82/cfs.html ou https://crimeflare.herokuapp.com. Ou utilisez l'outil CloudPeler (qui utilise cette API)
Recherchez le domaine dans https://leaked.site/index.php?resolver/cloudflare.0/
CloudFlair est un outil qui recherchera en utilisant les certificats Censys contenant le nom de domaine, puis recherchera les adresses IPv4 à l'intérieur de ces certificats et enfin tentera d'accéder à la page web sur ces adresses IP.
Si vous avez un ensemble d'adresses IP potentielles où se trouve la page web, vous pourriez utiliser https://github.com/hakluke/hakoriginfinder
Découverte de Cloudflare à partir de machines Cloud
Notez que même si cela a été fait pour des machines AWS, cela pourrait être fait pour tout autre fournisseur de cloud.
Pour une meilleure description de ce processus, consultez :
Contourner Cloudflare via Cloudflare
Tirs de l'origine authentifiés
Ce mécanisme repose sur les certificats SSL du client pour authentifier les connexions entre les serveurs reverse-proxy de Cloudflare et le serveur d'origine, appelé mTLS.
Au lieu de configurer son propre certificat, les clients peuvent simplement utiliser le certificat de Cloudflare pour autoriser toute connexion en provenance de Cloudflare, indépendamment du locataire.
Par conséquent, un attaquant pourrait simplement définir un domaine dans Cloudflare en utilisant le certificat de Cloudflare et le pointer vers l'adresse IP du domaine de la victime. De cette manière, en laissant son domaine complètement non protégé, Cloudflare ne protégera pas les requêtes envoyées.
Plus d'informations ici.
Autoriser les adresses IP de Cloudflare
Cela rejettera les connexions qui ne proviennent pas des plages d'adresses IP de Cloudflare. Cela est également vulnérable à la configuration précédente où un attaquant pointe simplement son propre domaine dans Cloudflare vers l'adresse IP de la victime et l'attaque.
Plus d'informations ici.
Contourner Cloudflare pour le scraping
Cache
Parfois, vous voulez simplement contourner Cloudflare pour scraper la page web. Voici quelques options :
Utilisez le cache Google :
https://webcache.googleusercontent.com/search?q=cache:https://www.petsathome.com/shop/en/pets/dog
Utilisez d'autres services de cache tels que https://archive.org/web/
Solveurs Cloudflare
Plusieurs solveurs Cloudflare ont été développés :
cloudflare-bypass [Archivé]
Navigateurs sans tête renforcés
Utilisez un navigateur sans tête qui n'est pas détecté comme un navigateur automatisé (vous devrez peut-être le personnaliser pour cela). Voici quelques options :
Puppeteer : Le plugin stealth pour puppeteer.
Playwright : Le plugin stealth arrive bientôt sur Playwright. Suivez les développements ici et ici.
Selenium : Le undetected-chromedriver est un correctif optimisé pour Selenium Chromedriver.
Proxy intelligent avec contournement intégré de Cloudflare
Les proxies intelligents sont continuellement mis à jour par des entreprises spécialisées, visant à contourner les mesures de sécurité de Cloudflare (car c'est leur métier).
Certains d'entre eux sont :
Smartproxy sont connus pour leurs mécanismes de contournement Cloudflare propriétaires.
Pour ceux qui recherchent une solution optimisée, l'agrégateur de proxy ScrapeOps se distingue. Ce service intègre plus de 20 fournisseurs de proxy dans une seule API, sélectionnant automatiquement le proxy le meilleur et le plus rentable pour vos domaines cibles, offrant ainsi une option supérieure pour contourner les défenses de Cloudflare.
Rétro-ingénierie de la protection anti-bot de Cloudflare
La rétro-ingénierie des mesures anti-bot de Cloudflare est une tactique utilisée par les fournisseurs de proxy intelligents, adaptée au scraping web étendu sans les coûts élevés de l'exécution de nombreux navigateurs sans tête.
Avantages : Cette méthode permet de créer un contournement extrêmement efficace qui cible spécifiquement les vérifications de Cloudflare, idéal pour les opérations à grande échelle.
Inconvénients : L'inconvénient réside dans la complexité de comprendre et de tromper le système anti-bot délibérément obscur de Cloudflare, nécessitant des efforts continus pour tester différentes stratégies et mettre à jour le contournement à mesure que Cloudflare renforce ses protections.
Trouvez plus d'informations sur la façon de faire cela dans l'article original.
Références
Last updated