
Armer les logs CT en direct pour la surveillance automatisée des actifs

Lire le blog ici : https://medium.com/@Asm0d3us/weaponizing-live-ct-logs-for-automated-monitoring-of-assets-39c6973177c7
Dans les Bug Bounties, « Si tu n'es pas le premier, alors tu es le dernier », il n'y a pas de médaille d'argent ou de bronze. La reconnaissance joue un rôle crucial et si vous pouvez détecter/identifier un actif nouvellement ajouté plus tôt que les autres, alors vos chances de trouver/signaler une faille de sécurité sur cet actif et d'être récompensé sont plus élevées que les autres.
Personnellement, je surveille les logs CT pour les domaines/sous-domaines depuis un bon moment déjà, et cela m'a donné de nombreux résultats probants. L'inspiration derrière cela était « Sublert : par yassineaboukir » qui vérifie crt.sh pour les sous-domaines et peut être exécuté périodiquement. Cependant, j'utilise une approche quelque peu différente et au lieu de consulter crt.sh périodiquement, j'extrais les domaines des flux CT en direct. Ainsi, mes chances de trouver un nouvel actif plus tôt sont plus élevées que les autres.
Je suppose que vous avez déjà configuré votre espace de travail Slack.
Créez maintenant un canal nommé « subdomain-monitor » et configurez un webhook entrant
Modifiez le fichier config.yaml et collez-y l'URL de votre webhook Slack. Cela devrait ressembler à ceci

Vous pouvez spécifier les mots-clés et les domaines à faire correspondre dans le fichier domains.yaml. Vous pouvez spécifier des noms
Pour la correspondance des sous-domaines :
Remarque : notez le point précédent [ . ]
Prenons « .facebook.com » comme exemple. Les domaines extraits des logs CT en temps réel seront mis en correspondance avec le mot « .facebook.com ». S'ils correspondent, ils seront enregistrés dans notre fichier de sortie (found-domains.log). Il est important de noter que cela donnera quelques faux positifs comme « test.facebook.com.test.com », « example.facebook.company », mais nous pourrons les filtrer plus tard en utilisant la magie des expressions régulières.
Supposons que vous souhaitiez surveiller et enregistrer les domaines/sous-domaines qui contiennent le mot « hackerone ». Alors, votre fichier domains.yaml ressemblera à ceci
Maintenant, tous les domaines/sous-domaines extraits qui contiennent le mot « hackerone » seront mis en correspondance et enregistrés (et une notification Slack vous sera envoyée pour cela)
Ok, nous avons terminé la configuration initiale. Installons les dépendances requises et exécutons notre outil
$ pip3 install -r requirements.txt
$ python3 certeagle.py

Les domaines correspondants ressembleront à ceci :

Les notifications Slack ressembleront à ceci :

Fichiers de sortie :
Le programme continuera à s'exécuter et tous les domaines correspondants seront sauvegardés dans le répertoire de sortie, dans le fichier found-domains.log

Avertissement strict : Ne surveillez pas les actifs d'une organisation sans consentement préalable
Envoyez-moi un DM : @0xAsm0d3us
Si vous pensez que mon travail a ajouté de la valeur à vos connaissances existantes, vous pouvez m'offrir un café ici (et qui n'aime pas une bonne tasse de café ?)