
Un outil Python pour ingérer du HTML et produire du code source HTML adapté aux campagnes de phishing.
(C'est une blague de "poisson dans un tonneau". J'aime les jeux de mots !)
Un outil Python pour ingérer du HTML et produire une source HTML adaptée aux campagnes de phishing.
Cooper simplifie le processus de clonage d'un site web ou d'un email cible pour une utilisation dans une campagne de phishing. Trouvez simplement une URL ou téléchargez le contenu brut d'un email que vous souhaitez utiliser et passez-le à Cooper. Cooper clonera le contenu puis le préparera automatiquement pour votre campagne. Les scripts, images et CSS peuvent être modifiés pour utiliser des liens directs au lieu de liens relatifs, les liens sont changés pour pointer vers votre serveur de phishing, et les formulaires sont mis à jour pour vous envoyer les données – le tout en quelques secondes. Cooper est multiplateforme et devrait fonctionner avec macOS, Linux et Windows.
Fini l'édition manuelle des liens et des formulaires après avoir utilisé wget pour récupérer un site. Vous pouvez vous concentrer sur les détails.
Cooper propose plusieurs modules avec des objectifs différents :
Page est le module principal de Cooper. Le seul argument requis est -t pour spécifier une URL cible. Vous pouvez ensuite ajouter --selenium pour utiliser éventuellement Selenium au lieu de Requests. En gros, si le résultat semble erroné ou incomplet (peut-être juste un fond et du style, par exemple), essayez d'utiliser --selenium.
Certains sites web nécessitent JavaScript pour générer le contenu HTML. Si le résultat semble erroné ou incomplet, essayez d'utiliser --selenium.
De plus, vous pouvez ajouter -u avec une URL à utiliser comme URL de base pour les images, les scripts et les feuilles de style. Cooper remplacera les liens relatifs (par exemple /wp-content/images/foo.bar) par l'URL complète pour vous.
Fournissez toujours des URL valides avec le protocole correct pour -t et -u (c'est-à-dire http://www.example.com).
Une liste complète des paramètres est ci-dessous :
Le module email est pratique lorsque vous souhaitez utiliser un email que vous possédez comme base pour un nouveau phish. Gérer l'encodage et les messages MIME multiparties peut être pénible à faire manuellement, alors laissez Cooper le faire pour vous. Ce module analysera le contenu du message, supprimera les parties inutiles comme les pièces jointes, et vous obtiendrez une version entièrement décodée du corps de l'email principal, les parties texte brut ou texte/html qui vous intéressent.
Une liste complète des paramètres est ci-dessous :
Comme mentionné précédemment, ce module est ponctuel. L'argument requis, et unique, est -i pour fournir le fichier image à encoder. Il est pratique si vous construisez votre propre page d'atterrissage ou modifiez une page et avez besoin d'ajouter une image. Si vous décidez de l'intégrer, essayez ce module. Il encodera en Base64 le fichier fourni et produira le texte nécessaire pour intégrer l'image.
Cooper nécessite plusieurs bibliothèques pour le scraping de sites web et l'analyse du HTML. Utilisez pip ou pipenv pour tout installer. Il y a un fichier requirements.txt pour pip et un Pipfile pour les environnements virtuels pipenv. Si vous utilisez pip, assurez-vous d'utiliser la version appropriée sur votre système pour Python 3.9 (par exemple, pip3 ou pip3.9).
Pour être sûr d'utiliser la bonne version, appelez pip avec votre version de Python :
python3 -m pip install -r requirements.txt
Un environnement virtuel est encore plus simple à utiliser :
pipenv installpipenv shellL'utilisation de Selenium pour un navigateur sans tête nécessite que Google Chrome soit installé et de télécharger un fichier Chromewebdriver correspondant depuis : https://chromedriver.chromium.org/downloads
Téléchargez et extrayez le webdriver à la racine de ce projet. Vous pouvez le placer ailleurs, mais assurez-vous de mettre à jour la configuration (voir la section suivante).
Ensuite, vous devez configurer votre fichier de configuration. Le fichier cooper.config fourni avec ce dépôt est préconfiguré pour une utilisation avec GoPhish (les URL sont définies pour être changées en {{.URL}}). La configuration par défaut suppose également que vous placerez un webdriver Chrome à la racine du répertoire.
Le fichier de configuration ressemble à ceci :
[Replacement URLs]
landing_page_url_replacement: {{.URL}}
landing_page_form_action: {{.URL}}
email_replacement_url: {{.URL}}
[Browser]
driver_path: ./chromedriver
user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.87 Safari/537.36
Apportez les modifications nécessaires. Vous pouvez créer plusieurs fichiers de configuration pour différentes plateformes de phishing que vous utilisez, des serveurs d'attaque supplémentaires ou des user-agents alternatifs. Différents fichiers de configuration peuvent être utilisés en incluant les arguments -c ou --config avec votre fichier alternatif. Sinon, le fichier cooper.config sera utilisé par défaut.
La section [Replacement URLs] contient toutes les URL que Cooper utilisera lors du remplacement des liens et des actions de formulaire.