Tutoriel : Mise en place reverse proxy Nginx pour Gophish
Créer un reverse proxy Nginx pour un serveur de phishing Gophish : guide complet
Dans ce tutoriel, nous allons explorer la mise en place d’un reverse proxy Nginx pour un serveur de phishing Gophish. Cette démarche s’inscrit dans la continuité de notre série de tutoriels sur Gophish, où nous avons précédemment établi les fondations nécessaires pour le déploiement d’une campagne de phishing à des fins de sensibilisation.
Créer et enregistrer les sous-domaines
Le but de créer des sous-domaines est de remplacer l’utilisation d’adresses IP dans notre campagne de phishing pour induire en erreur vos utilisateurs (le nom de domaine étant plus trompeur que l’adresse IP), ainsi que pour faciliter l’accès à votre CMS administrateur Gophish.
Depuis votre hébergeur, vous allez créer un nouvel enregistrement DNS pour votre “phish_server”. Utilisez un champ de pointage de type « A » et un nom de sous-domaine crédible pour piéger vos utilisateurs ; ici, ce sera « microsoft.kvrcybertechno.fr ». Dans la section « Cible », indiquez l’adresse de l’interface WAN de votre pfSense si vous en utilisez un, ou l’adresse IP du serveur hébergeant votre DNS forwarder, qui est « 96.122.153.201 ».
Configurer Pfsense pour une propagation DNS
Si vous n’utilisez pas pfSense ou OPNsense comme “DNS Forwarder”, appliquez la même procédure avec votre solution alternative.
Accédez successivement aux sections suivantes dans votre pfSense :
Dans la section “Host Overrides”, vous devez ajouter deux entrées. Voici l’exemple de configuration pour le “phish_server” :
Mise en place du reverse proxy Nginx
Vous allez maintenant installer NGINX après avoir mis à jour votre serveur, il sera utilisé comme reverse proxy.
Debian
sudo apt -y update && sudo apt upgrade && sudo apt full-upgrade && sudo apt autoclean && sudo apt clean
sudo apt install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
AlmaLinux
sudo dnf update -y && sudo dnf upgrade -y && sudo dnf autoremove -y && sudo dnf clean all
sudo dnf install nginx -y
sudo systemctl start nginx
sudo systemctl enable nginx
Création des fichiers de configuration Nginx
Maintenant que NGINX est installé, vous allez procéder à la création des fichiers de configuration pour vos deux reverse proxy. Commençons par le phish_server :
Vous pouvez copier la configuration initiale ci-dessous en modifiant les parties où j’ai ajouté exprès des commentaires. Voici la configuration pour le phish_server :
Installer Certbot et générer les certificats
Vos fichiers de configuration NGINX étant créés, nous allons désormais pouvoir générer des certificats Let’s Encrypt valides pour une durée de trois mois. Pour cela, nous allons utiliser l’outil Certbot. Tout d’abord, commencez par installer Certbot :
Debian
sudo apt install certbot python3-certbot-nginx
AlmaLinux
sudo yum install -y epel-release
sudo yum install -y certbot python3-certbot-nginx
Une fois Certbot installé, générez les certificats en utilisant la commande suivante :
Vérifier la configuration de Nginx
Les certificats étant générés et les fichiers de configuration ayant été mis à jour par Certbot, ils devraient maintenant ressembler à cela :
Modifier le fichier de configuration de Gophish
Maintenant que vous êtes censé avoir un reverse proxy fonctionnel, rendez-vous sur votre serveur Gophish et modifiez son fichier de configurations :
Vous allez devoir modifier vos adresses IP pour changer l’écoute de toutes vos interfaces à l’adresse IP de votre interface principale. Ensuite, ajoutez une ligne pour préciser chaque sous-domaine :
Redémarrez le démon et relancez Gophish :
Première campagne Gophish avec un reverse proxy
Vous pouvez normalement accéder sans problème à votre Gophish depuis le sous-domaine configuré. Cependant, pour tirer pleinement profit de ce tutoriel, vous allez créer une nouvelle campagne en modifiant l’adresse IP habituellement utilisée par votre sous-domaine piège.
Puis, rendez-vous sur l’URL piège contenu dans l’e-mail envoyé par Gophish :
Si vous accédez, comme moi, à votre page de destination piège, c’est que votre configuration fonctionne parfaitement !
Conclusion
En suivant ce tutoriel, vous avez appris à déployer et à configurer un reverse proxy Nginx pour un serveur de phishing Gophish. Dans le cadre de vos opérations de sensibilisation, cette configuration va rendre encore plus réaliste vos campagnes de phishing.
L’intégration d’un reverse proxy Nginx est une étape importante pour masquer les détails internes de votre réseau tout en fournissant un point d’accès sécurisé et contrôlé pour vos simulations. Cela contribue non seulement à la crédibilité de vos campagnes, mais renforce également la protection contre les accès indésirables.
Si vous rencontrez des difficultés lors de la mise en place de Nginx ou de Gophish, n’hésitez pas à poser vos questions ou à partager vos expériences en commentant cet article. Vous pouvez aussi vous connecter sur le Discord IT-Connect. Nous sommes là pour vous aider.
Source : www.it-connect.fr