Mobile Exploitation - Securinets · 2015-02-06 · Metasploit. Ce tutoriel vous montrera les...
Transcript of Mobile Exploitation - Securinets · 2015-02-06 · Metasploit. Ce tutoriel vous montrera les...
Mobile Exploitation
CHEF ATELIERSARAH
OUSSEMA BEN GHROBEL
ALY
TARAK
Mobile Exploitation
CHEF ATELIER : MERIEM MEMMICHE (RT3)SARAH LOUSSAIEF(RT3)
OUSSEMA BEN GHROBELEMNA MANNAI (RT3)ALY MESSAOUDI (RT3)
TARAK CHAABOUNI (RT3)
Table des matières
1. Présentation de l’atelier ................................
2. Présentation des outils utilisés
3. Topologie du réseau ................................
4. Configuration des outils ................................
5. Un scénario de test ................................
6. Conclusion ................................
Mobile Exploitation | SECURILIGHT 2014
1
Table des matières
................................................................................................
Présentation des outils utilisés..........................................................................................
................................................................................................
................................................................................................
................................................................................................
.........................................................................Error! Bookmark not defined.
SECURILIGHT 2014
.................................... 2
.......................... 2
.......................................... 7
.................................... 8
......................................... 10
Error! Bookmark not defined.0
I. Présentation de l’atelierBonjour et bienvenue dans ce tutoriel pour vous initier aux bases de l’exploitation Mobile avec Metasploit. Ce tutoriel vous montrera les fonctionnementsutilisateur Smartphone, Tablette ou a
II. Présentation des outils utilisésCe tutoriel se déroulera sur un réseau local avec un laboratoire de hacking constitué
de :
1. Une machine Kali Kali est une reconstruction complète de
de développementrévisés et reconstruits. Il se caractérise par
Plus de 300 outils de tests d’intrusion:
BackTrack, ils ont éliminé
remplacés par de nouveaux qui produisent des résultats similaires.
Gratuit pour toujours: Kali Linux, comme son prédécesseur, sera entière
le sera toujours
Arborescence Git Open Source:
de développement est disponible à tous. Téléchargement des codes sources
tout le monde puissent modifier et refaire les paquets selon ses besoin.
Conforme au FHS: Le développement de Kali adhère au standard FHS (
Hierarchy Standard), ce qui permet aux utilisateurs de facilement naviguer le système
et de rapidement trouver les fichiers de librairie, binaires, fichiers de support etc.
Vaste support pour appareils sans
d’appareils possible, lui permettant de fonctionner sans problèmes sur une grande
variété de matériel, dispositifs USB et autres machins sans
Noyau patché pour injection:
aussi du réseau sans-fils, le
Mobile Exploitation | SECURILIGHT 2014
2
Présentation de l’atelierBonjour et bienvenue dans ce tutoriel pour vous initier aux bases de l’exploitation Mobile avec
Ce tutoriel vous montrera les fonctionnements basiques d’une interception et exploitation d’un utilisateur Smartphone, Tablette ou autre à l’aide d’une application Android.
Présentation des outils
Ce tutoriel se déroulera sur un réseau local avec un laboratoire de hacking constitué
machine Kali-Linux :ali est une reconstruction complète de BackTrack Linux, qui adhère aux standards
développement Debian. Une toute nouvelle infrastructure, tous les outils Il se caractérise par :
Plus de 300 outils de tests d’intrusion: Après une révision des outils disponibles sur
ils ont éliminé plusieurs qui étaient soit non- fonctionnels, soit qui ont été
remplacés par de nouveaux qui produisent des résultats similaires.
Kali Linux, comme son prédécesseur, sera entièrement gratuit et
Arborescence Git Open Source: Promoteurs du mouvement Open Source, la structure
est disponible à tous. Téléchargement des codes sources
tout le monde puissent modifier et refaire les paquets selon ses besoin.
Le développement de Kali adhère au standard FHS (Filesystem
), ce qui permet aux utilisateurs de facilement naviguer le système
et de rapidement trouver les fichiers de librairie, binaires, fichiers de support etc.
Vaste support pour appareils sans-fils: Kali Linux est bâti pour supporter le plus
reils possible, lui permettant de fonctionner sans problèmes sur une grande
variété de matériel, dispositifs USB et autres machins sans-fils.
Noyau patché pour injection: Étant donné que les tests d’intrusions peuvent inclure
fils, le noyau est conçu et patché pour rendre la tâche possible.
SECURILIGHT 2014
Bonjour et bienvenue dans ce tutoriel pour vous initier aux bases de l’exploitation Mobile avec
basiques d’une interception et exploitation d’un
Ce tutoriel se déroulera sur un réseau local avec un laboratoire de hacking constitué
, qui adhère aux standards . Une toute nouvelle infrastructure, tous les outils
des outils disponibles sur
fonctionnels, soit qui ont été
ment gratuit et
structure
est disponible à tous. Téléchargement des codes sources pour que
Filesystem
), ce qui permet aux utilisateurs de facilement naviguer le système
et de rapidement trouver les fichiers de librairie, binaires, fichiers de support etc.
Kali Linux est bâti pour supporter le plus
reils possible, lui permettant de fonctionner sans problèmes sur une grande
Étant donné que les tests d’intrusions peuvent inclure
noyau est conçu et patché pour rendre la tâche possible.
Environnement de développement sécuritaire:
formé d’une petite équipe en confiance qui peut seulement interagir avec les
répertoires de distribution via le biais de
Paquets signés GPG: Tous les paquets Kali Linux sont signés par chaque auteur
individuel quand ils sont const
Multi-langues: Tous les paquets Kali Linux sont signés par chaque
quand ils sont construits et livrés aux
Personnalisation Complète:
Linux comme bon leur semble, jusqu’au noyau.
Support ARMEL et ARMHF:ARMHF. Les répertoires de Kali Linux pour ARM sont intégrés aux autres distributions et les outils sont mis à jour en même temps que les autres outils. Kali est présentement disponible sur les systèmes suivants:
o rk3306 mk/ss808
o Raspberry Pi
o ODROID U2/X2
Kali est spécifiquement conçu pour les tests d’intrusion et audit de sécurité
Pour télécharger la bêtehttp://www.kali.org/downloads/
Nb : L’inscription n’est pas obligatoire
2. Le Framework Metasploit
a. Définition :
Metsploit est un outil pour le développement et l’exécution d’exploits contre une machine distante, il permet de réaliser des audits en sécurité, de tester et développer ses propres exploits. Créé à l’origine en langage de programmation Perl, Metasploit Framework a été complètement réécrit en langage Ruby.Il est utilisé souvent par les administrateurs ssystèmes informatiques afin de les protéger
b. Qu’est ce qu’on peutLe Framework permet de faire énormément de chose comme :
Le scan et collecte l’ensemble d’informations sur une machine Repérage et l’exploitation des vulnérabilités Escalade de privilèges et vol de données
Mobile Exploitation | SECURILIGHT 2014
3
Environnement de développement sécuritaire: L’équipe de développement Kali est
formé d’une petite équipe en confiance qui peut seulement interagir avec les
répertoires de distribution via le biais de protocoles sécurisés.
Tous les paquets Kali Linux sont signés par chaque auteur
sont construits et livrés aux répertoires de distributions de kali
Tous les paquets Kali Linux sont signés par chaque auteur individuel
sont construits et livrés aux répertoires de distributions.
Personnalisation Complète: Les utilisateurs plus aventuriers peuvent personnaliser Kali
comme bon leur semble, jusqu’au noyau.
Support ARMEL et ARMHF: une version fonctionnelle de Kali sur les systèmesres de Kali Linux pour ARM sont intégrés aux autres distributions
les outils sont mis à jour en même temps que les autres outils. Kali est présentement disponible sur les systèmes suivants:
Kali est spécifiquement conçu pour les tests d’intrusion et audit de sécurité
en version 32/64 bits et ARM, vous pouvez vous rendre surhttp://www.kali.org/downloads/
: L’inscription n’est pas obligatoire.
Le Framework Metasploit :
Metsploit est un outil pour le développement et l’exécution d’exploits contre une il permet de réaliser des audits en sécurité, de tester et développer
ses propres exploits. Créé à l’origine en langage de programmation Perl, Metasploit Framework a été complètement réécrit en langage Ruby.Il est utilisé souvent par les administrateurs systèmes pour tester les vulnérabilités des systèmes informatiques afin de les protéger, ou par les hackers à des fins de piratage.
peut faire avec MetasploitLe Framework permet de faire énormément de chose comme :
l’ensemble d’informations sur une machineRepérage et l’exploitation des vulnérabilitésEscalade de privilèges et vol de données
SECURILIGHT 2014
L’équipe de développement Kali est
formé d’une petite équipe en confiance qui peut seulement interagir avec les
Tous les paquets Kali Linux sont signés par chaque auteur
de kali.
auteur individuel
naliser Kali
systèmes ARMEL et res de Kali Linux pour ARM sont intégrés aux autres distributions
ous rendre sur :
Metsploit est un outil pour le développement et l’exécution d’exploits contre une il permet de réaliser des audits en sécurité, de tester et développer
ses propres exploits. Créé à l’origine en langage de programmation Perl, Metasploit
ystèmes pour tester les vulnérabilités des hackers à des fins de piratage.
Installation d’une porte dérobée Fuzzing Echapper à l’antivirus Suppression des logs et des traces
c. Architecture du FrameworkLe Framework est structuré de la manière suivante :
A première vu de l’image, on constate que l’architecture est modulaire et qu’il fonctionne sous diverses interfaces (Graphique, WEB, CLI et Console).
On s’intéresse dans ce tutoriel à
L’avantage majeur du Framework : c’est cette modularité qui permet de combiner n’importe quel exploit avec n’importe quel payload. Il facilite la tâche de l’attaquant, des développeurs d’exploits, et des développeurs de payloads.
On va définir ci-dessous quelques termes utilisés dans Metasploit
Exploit :Un exploit est le moyen par lequel un hacker ou un testeur de pénétration prend avantage sur une faille dans un système, une application ou un service. Un attaquant utilise un exploit pour attaquer un système et le résultat de cette attaque entraîne exécution des codes de cet exploit comme son auteur (le développeur de cet exploit) l’avait programmé. La majorité des Exploits exploite les failles du type overflows (dépassement de mémoire), les vque l'injection SQL), et les erreurs de la configuration
Mobile Exploitation | SECURILIGHT 2014
4
Installation d’une porte dérobée
Suppression des logs et des traces
Framework Metasploit :Le Framework est structuré de la manière suivante :
vu de l’image, on constate que l’architecture est modulaire et qu’il fonctionne sous diverses interfaces (Graphique, WEB, CLI et Console).
dans ce tutoriel à l’interface graphique.
L’avantage majeur du Framework : c’est cette modularité qui permet de combiner n’importe quel exploit avec n’importe quel payload. Il facilite la tâche de l’attaquant, des développeurs d’exploits, et des développeurs de payloads.
dessous quelques termes utilisés dans Metasploit :
Un exploit est le moyen par lequel un hacker ou un testeur de pénétration prend avantage sur une faille dans un système, une application ou un service. Un attaquant utilise un exploit pour attaquer un système et le résultat de cette attaque entraîne
ion des codes de cet exploit comme son auteur (le développeur de cet exploit) l’avait programmé. La majorité des Exploits exploite les failles du type : Buffer
(dépassement de mémoire), les vulnérabilités des applications Webles erreurs de la configuration dans les applications.
SECURILIGHT 2014
vu de l’image, on constate que l’architecture est modulaire et qu’il
L’avantage majeur du Framework : c’est cette modularité qui permet de combiner n’importe quel exploit avec n’importe quel payload. Il facilite la tâche de l’attaquant,
Un exploit est le moyen par lequel un hacker ou un testeur de pénétration prend avantage sur une faille dans un système, une application ou un service. Un attaquant utilise un exploit pour attaquer un système et le résultat de cette attaque entraîne
ion des codes de cet exploit comme son auteur (le développeur de cet exploit) Buffer
ulnérabilités des applications Web (telles
Payload :Un Payload (charge utile) est le morceau du code que nous voulons que le système exécute, les payloads sont livrées par le Framework, vous sesélectionner.Par exemple, reverse shellcible à celle de l'attaquant a renvoya à celleque bind shell est un payload qui «Lie» une invite de commande à un port d'écoute sur la machine cible, elle reste là à l’écoute pour attendre patiemment que le pirate se connecter dessus.Un Payload peut aussi être quelque chose aussi simple que qexécuter sur le système d'exploitation cible.
Shellcode :Le Shellcode est constitué l'exploitation. Shellcode est généralement écrit ensi le shellcode est bien exécuté, une invite de commandeune Meterpreter sera fourni à l’attaquant.
Module :Les modules sont des parties d’application qu’on importe et on peut utiliser dans le Framework Metasploit. Dans certains cas on est obligé soit d’utiliser unmodule: il s’agit d’un composant logiciel pour le module auxiliaire pour augmenter la performance des actions comme le scannage, énumération de système. Avec ce système des modules interchangeables MSF est très dynamique.
Modules AxillairesC’est des modules utilisés pour diverses taches comme le scan de port, sniffing, scan de services.Une fois l’exploit et le Payload sont exécutés sur une machine vulnérable, on peut faire ce qu’on veut sur le système comme télécharger les données de la cible, mise en place d’un malware, capture d’ecran, etc.
Listener :Un listener est un composant de Metasploit qui attend une connexion entrante sur la machine de l’attaquant. Par exemple, après que la machine cible a été exploitée, elle peut appeler la machine attaquante par ces genres d’affaire, le Listener entend sur la machine d'attaquant pour être contacté automatiquement sur le système exploité quand celle
d. Comment utiliser MetasploitOn passe maintenant à la partie la plus intéressant, c’est l’utilisation de Metasploit.Voici les étapes basiques pour l’exploitation d’un système avec
1. Collecter des informations sur la cibleet les services réseaux installés. Ces informations peuvent être récupérées grâce à des outils de scan de port et de
2. Choisir et configurer un exploit;3. Vérifier si le système cibl
Mobile Exploitation | SECURILIGHT 2014
5
Un Payload (charge utile) est le morceau du code que nous voulons que le système exécute, les payloads sont livrées par le Framework, vous serez là juste pour le
reverse shell c’est un payload qui crée une connexion entre la machine cible à celle de l'attaquant a renvoya à celle-ci une invite de commande DOS ,
est un payload qui «Lie» une invite de commande à un port d'écoute la machine cible, elle reste là à l’écoute pour attendre patiemment que le pirate se
Un Payload peut aussi être quelque chose aussi simple que quelques commandesexécuter sur le système d'exploitation cible.
Le Shellcode est constitué d’un ensemble des instructions utilisées par Payload lors de l'exploitation. Shellcode est généralement écrit en assembleur dans la plupart des cas, si le shellcode est bien exécuté, une invite de commande shell ou
sera fourni à l’attaquant.
Les modules sont des parties d’application qu’on importe et on peut utiliser dans le Framework Metasploit. Dans certains cas on est obligé soit d’utiliser un exploit
un composant logiciel pour effectuer l'attaque et par fois on utilise pour augmenter la performance des actions comme le scannage,
énumération de système. Avec ce système des modules interchangeables MSF est très
utilisés pour diverses taches comme le scan de port, sniffing, scan
Une fois l’exploit et le Payload sont exécutés sur une machine vulnérable, on peut faire ce qu’on veut sur le système comme télécharger les données de la cible, mise en
d’un malware, capture d’ecran, etc.
Un listener est un composant de Metasploit qui attend une connexion entrante sur la machine de l’attaquant. Par exemple, après que la machine cible a été exploitée, elle peut appeler la machine attaquante par le baie de l’Internet. C’est le Listerner qui gère ces genres d’affaire, le Listener entend sur la machine d'attaquant pour être contacté automatiquement sur le système exploité quand celle-ci se met en ligne .
Metasploit ?maintenant à la partie la plus intéressant, c’est l’utilisation de Metasploit.
Voici les étapes basiques pour l’exploitation d’un système avec Metasploit:
Collecter des informations sur la cible telle que la version du système d’exploitation, es réseaux installés. Ces informations peuvent être récupérées grâce à des
outils de scan de port et de Footprinting comme Nmap, Maltego et Nessus;Choisir et configurer un exploit;
e visée est sensible à l’exploit choisi;
SECURILIGHT 2014
Un Payload (charge utile) est le morceau du code que nous voulons que le système rez là juste pour le
c’est un payload qui crée une connexion entre la machine e invite de commande DOS , tandis
est un payload qui «Lie» une invite de commande à un port d'écoute la machine cible, elle reste là à l’écoute pour attendre patiemment que le pirate se
uelques commandes à
un ensemble des instructions utilisées par Payload lors de dans la plupart des cas,
Les modules sont des parties d’application qu’on importe et on peut utiliser dans le exploit
effectuer l'attaque et par fois on utilise pour augmenter la performance des actions comme le scannage,
énumération de système. Avec ce système des modules interchangeables MSF est très
utilisés pour diverses taches comme le scan de port, sniffing, scan
Une fois l’exploit et le Payload sont exécutés sur une machine vulnérable, on peut faire ce qu’on veut sur le système comme télécharger les données de la cible, mise en
Un listener est un composant de Metasploit qui attend une connexion entrante sur la machine de l’attaquant. Par exemple, après que la machine cible a été exploitée, elle
le baie de l’Internet. C’est le Listerner qui gère ces genres d’affaire, le Listener entend sur la machine d'attaquant pour être contacté
.
maintenant à la partie la plus intéressant, c’est l’utilisation de Metasploit.
telle que la version du système d’exploitation, es réseaux installés. Ces informations peuvent être récupérées grâce à des
4. Choisir et configurer un payload ;5. Exécuter l’exploit.
Pour l’instant nous allons commencer par quelques commandes de base.Coté Exploit :
Comment afficher tous les exploits disponibles sur Metasploit : Pour chercher un exploit : Pour sélectionner un exploit : Avoir des informations sur un exploit : Voir les options d’un exploit :
Coté Payload : Afficher tous les payloads disponibl Choisir le payload que l’on va utiliser : Voir les options du payload pour une configuration :
En général : Pour obtenir de l’aide : help Si vous voulez connaître la version de Si l’on veut lister l’intégralité des exploits, modules, Pour quitter Metasploit : quit
3. Smartphone Android
Un Smartphone, ordi phon
téléphone mobile évolué d
peut exécuter divers logiciel
spécialement conçu pour mo
plus de celles des téléphon
Ce système d’exploitation
un système open source, util
par Google5 en
APK : application package
le logiciel d'application et m
créer un fichier APK, un pr
de ses pièces sont emballé
Mobile Exploitation | SECURILIGHT 2014
6
Choisir et configurer un payload ;
Pour l’instant nous allons commencer par quelques commandes de base.
Comment afficher tous les exploits disponibles sur Metasploit : Show exploitsPour chercher un exploit : Search nom_exploitPour sélectionner un exploit : Use nom_exploitAvoir des informations sur un exploit : Info nom_exploitVoir les options d’un exploit : Show options
Afficher tous les payloads disponibles sur Metasploit : Show payloadChoisir le payload que l’on va utiliser : set PAYLOAD nom_payloadVoir les options du payload pour une configuration : Show options
helpSi vous voulez connaître la version de Metasploit : versionSi l’on veut lister l’intégralité des exploits, modules, payloads : search
quit
Smartphone Android :
ne, ordinateur de poche ou téléphone intelligent, es
disposant des fonctions. Selon le principe d'un ordin
iciels/applications grâce à un système d'exploitation
mobiles, et donc en particulier fournir des fonctionn
nes mobiles classiques.
n spécifique aux Smartphones, tablettes…. Est l’ANDROID
utilisant le noyau Linux. Il a été lancé par une startup
file c’est le format de fichier utilisé pour distribuer et
middleware sur Google système d'exploitation Andr
rogramme pour Android est d'abord compilé, puis l'ens
ées dans un seul fichier.
SECURILIGHT 2014
exploits
st un
nateur, il
nnalités en
ROID c’est
startup rachetée
et installer
roid. Pour
ensemble
III. Architecture/Topologie du
réseau
Durant cet atelier on va essayer deux types d’attaques :
Attaque en locale :La victime (mobile utilisant un Al’attaquant
Attaque Over Internet (Distante):La victime est connectée
Mobile Exploitation | SECURILIGHT 2014
7
Architecture/Topologie du
réseau :
Durant cet atelier on va essayer deux types d’attaques :
a victime (mobile utilisant un Android comme OS) est dans le même réseau local que
Internet (Distante):connectée sur Internet (Pas nécessairement dans le même réseau local)
SECURILIGHT 2014
Architecture/Topologie du
ndroid comme OS) est dans le même réseau local que
sur Internet (Pas nécessairement dans le même réseau local)
IV. Configuration des outils Etape1 :
Tout d’abord, on installe Kali soit sur une partition soit sur une machine virtuelle.
Une fois Kali est installé sur le Pc, On démarrer le service PostgreSQL sur Kali en suivant ces étapes :
Remarque :
PostgreSQL est un système(SGBDRO). C’est un outil libre disponible selon les termes d’une
Ce système est concurrent d'autres systèmes de gestion de base de données, qu'ils soient libres (comme MariaDB(comme Oracle,Sybase, DB2
Comme les projets libresentreprise, mais est fondé sur une communauté mondiale de développeurs et d'entreprises.
Vérifiez que PostgreSQL est bien en fonction en utilisant la commandeant et assurez-vous que le port 5432 soit bien ouvert et à l’écoute.
Mobile Exploitation | SECURILIGHT 2014
8
IV. Configuration des outils
Tout d’abord, on installe Kali soit sur une partition soit sur une machine virtuelle.
installé sur le Pc, On démarrer le service PostgreSQL sur Kali en
système de gestion de base de données relationnelle et objet (SGBDRO). C’est un outil libre disponible selon les termes d’une licence de type BSD.
Ce système est concurrent d'autres systèmes de gestion de base de données, qu'ils MariaDB, MySQL et Firebird), ou propriétaires
DB2, Informix et Microsoft SQL Server).
Apache et Linux, PostgreSQL n'est pas contrôlé par une seule entreprise, mais est fondé sur une communauté mondiale de développeurs et
Vérifiez que PostgreSQL est bien en fonction en utilisant la commandevous que le port 5432 soit bien ouvert et à l’écoute.
SECURILIGHT 2014
Tout d’abord, on installe Kali soit sur une partition soit sur une machine virtuelle.
installé sur le Pc, On démarrer le service PostgreSQL sur Kali en
de gestion de base de données relationnelle et objet type BSD.
Ce système est concurrent d'autres systèmes de gestion de base de données, qu'ils
ar une seule entreprise, mais est fondé sur une communauté mondiale de développeurs et
Vérifiez que PostgreSQL est bien en fonction en utilisant la commande ss –
Etape 2 :
Démarrer le Service Metasploit sur Kali
Avec PostgreSQL démarré, nous lançons le service Metasploit. Lors du premier
démarrage, le service construira et populera une base de données “msf3” ainsi qu’un
utilisateur “msf3”. Ce service va aussi lancer le
dont il a besoin.
Etape 3 :
Maintenant, que le service PostgreSQL et Metasploit sont en marche, vous pouvez
lancer la commande msfconsole
Une fois dans la console, vérifiez la connectivité avec la base de données à
commande db_status.
Remarque :
Configurer Metasploit au démarrage
Si vous préférez avoir Prosutilisez la commande update
Mobile Exploitation | SECURILIGHT 2014
9
Démarrer le Service Metasploit sur Kali
Avec PostgreSQL démarré, nous lançons le service Metasploit. Lors du premier
démarrage, le service construira et populera une base de données “msf3” ainsi qu’un
utilisateur “msf3”. Ce service va aussi lancer le RPC de Metasploit et les serveurs Web
Maintenant, que le service PostgreSQL et Metasploit sont en marche, vous pouvez
msfconsole.
Une fois dans la console, vérifiez la connectivité avec la base de données à l’aide la
Configurer Metasploit au démarrage :
Si vous préférez avoir ProstgreSQL et Metasploit disponibles lors du démarrage de Kali, update-rcd pour activer ces services.
SECURILIGHT 2014
Avec PostgreSQL démarré, nous lançons le service Metasploit. Lors du premier
démarrage, le service construira et populera une base de données “msf3” ainsi qu’un
RPC de Metasploit et les serveurs Web
Maintenant, que le service PostgreSQL et Metasploit sont en marche, vous pouvez
l’aide la
greSQL et Metasploit disponibles lors du démarrage de Kali,
V. Un scénario de testPour commencer, il faut connaître l’
commande ifconfig qui permet
On remarque que l’adresse
On commence maintenant notre attaque
Etape1 :
Au préalable n'oubliez pas de mettre la liste des exploits à jours en utilisant la commande msfupdate.
Maintenant, vous aurez tous les derniers Meterpreter / reverse_tcp Android / shell / reverse_tcp.
Etape2 :
Msfpayload est une instance de ligne de commande de Metasploit qui est utilisé pour générer et sortir tous les différents types de SMetasploit. L'utilisation la plus courante de cet outil est pour la génération de shellcode pour un exploit qui n’pour tester différents types de shellcode et les options avant de f
Mobile Exploitation | SECURILIGHT 2014
10
Un scénario de test :commencer, il faut connaître l’adresse IP de notre machine, pour cela on tape la
qui permet d'afficher les informations des interfaces réseau
arque que l’adresse IP de la machine est 192.168.44.137.
mmence maintenant notre attaque
Au préalable n'oubliez pas de mettre la liste des exploits à jours en utilisant la
Maintenant, vous aurez tous les derniers exploits de Metasploit, y compris Android / Meterpreter / reverse_tcp Android / shell / reverse_tcp.
est une instance de ligne de commande de Metasploit qui est utilisé pour r tous les différents types de Shellcode qui sont disponibles dans
Metasploit. L'utilisation la plus courante de cet outil est pour la génération de ode pour un exploit qui n’est pas actuellement dans le Framework Metasploit ou
pour tester différents types de shellcode et les options avant de finaliser un module.
SECURILIGHT 2014
de notre machine, pour cela on tape la
d'afficher les informations des interfaces réseau IP
Au préalable n'oubliez pas de mettre la liste des exploits à jours en utilisant la
exploits de Metasploit, y compris Android /
est une instance de ligne de commande de Metasploit qui est utilisé pour sont disponibles dans
Metasploit. L'utilisation la plus courante de cet outil est pour la génération de est pas actuellement dans le Framework Metasploit ou
inaliser un module.
Il faut donc choisir un Payload qui marche avec Pour lister les Payloads disponibles on tape la commande
Une fois que vous avez sélectionné utilisés le plus souvent lors de l'élaboration Dans la figure ci-dessous, nous avons sélectionné un simple shell nous ajoutons la ligne de commande argument "O" avec cette charge, nous obtenons toutes les options configurables disponibles pour
Comme nous pouvons le voir à partir de la sortie, nous pouvons configurer quatre options différentes avec cette charge spécifique, si elles sont nécessaires, s’ils viennent avec des paramètre
AutoLoadAndroid
Requis
Réglage par défaut : true
Description : charger automatiquement l'extension A
LHOST
Requis
Réglage par défaut : 192.168.44.137
Description : l’adresse d’écoute
LPORT
Requis
Mobile Exploitation | SECURILIGHT 2014
11
Il faut donc choisir un Payload qui marche avec une attaque d’une interface Android. Pour lister les Payloads disponibles on tape la commande msfpayload –l.
Une fois que vous avez sélectionné un Payload, il ya deux interrupteurs qui soutilisés le plus souvent lors de l'élaboration du Payload pour l'exploit que vous créez.
dessous, nous avons sélectionné un simple shell Android. Lorsque nous ajoutons la ligne de commande argument "O" avec cette charge, nous obtenons toutes les options configurables disponibles pour ce Payload.
Comme nous pouvons le voir à partir de la sortie, nous pouvons configurer quatre options différentes avec cette charge spécifique, si elles sont nécessaires, s’ils viennent avec des paramètres par défaut, et une courte description:
: true
er automatiquement l'extension Android.
: 192.168.44.137
: l’adresse d’écoute
SECURILIGHT 2014
attaque d’une interface Android.
, il ya deux interrupteurs qui sont pour l'exploit que vous créez.
. Lorsque nous ajoutons la ligne de commande argument "O" avec cette charge, nous obtenons
Comme nous pouvons le voir à partir de la sortie, nous pouvons configurer quatre options différentes avec cette charge spécifique, si elles sont nécessaires, s’ils
Réglage par défaut: 4444
Description : le port d’écoute
RetryCount
Requis
Réglage par défaut: 10
Description : nombre d'essais à effectuer si la connexion a échoué
En cas ou on veut changer le réglage des oexemple est présenté ci-dessous qui permet de changer le port
A propos de notre attaque on laisse les paramètres par défaut sans rien changer.
Maintenant que tout cela est configuré, la seule option qui reste est de spécifier le type de sorties telles que C, Perl, Raw, etc.
Ce qui suit est le format d'options que la commande msfpayload accepte:
Types de sortie:
S: Résumé et les options de la charge utile
C: langage C
P : Perl
Y : Ruby
R : Raw, permet à Pyload à être
J: JavaScript
X: executable Windows
Mobile Exploitation | SECURILIGHT 2014
12
défaut: 4444
: le port d’écoute
nombre d'essais à effectuer si la connexion a échoué
En cas ou on veut changer le réglage des options de msfpayload, c’est très simple. Un dessous qui permet de changer le port d'écoute du shell
notre attaque on laisse les paramètres par défaut sans rien changer.
Maintenant que tout cela est configuré, la seule option qui reste est de spécifier le que C, Perl, Raw, etc.
Ce qui suit est le format d'options que la commande msfpayload accepte:
S: Résumé et les options de la charge utile
: Raw, permet à Pyload à être canalisé dans msfencode et d'autres outils.
Windows
SECURILIGHT 2014
est très simple. Un du shell:
notre attaque on laisse les paramètres par défaut sans rien changer.
Maintenant que tout cela est configuré, la seule option qui reste est de spécifier le
canalisé dans msfencode et d'autres outils.
V: VBA
Pour cette attaque, nous allons
En résumant, on va taper cette commande
La commande ci-dessus va c"security.apk" et sera enregistré sur votre
Ce fichier doit être installé sur l’appareil android de test.
Etape 3:
Maintenant commencer Metasploit et commencer un gestionnaire multiple sur votre machine pour obtenir une connexion TCP inverse de victime en utilisant les commandes suivantes :
Mobile Exploitation | SECURILIGHT 2014
13
Pour cette attaque, nous allons output notre Shellcode à R.
En résumant, on va taper cette commande :
dessus va créer un fichier exécutable Android avec le nom " et sera enregistré sur votre dossier personnel.
Ce fichier doit être installé sur l’appareil android de test.
Maintenant commencer Metasploit et commencer un gestionnaire multiple sur votre machine pour obtenir une connexion TCP inverse de victime en utilisant les
SECURILIGHT 2014
Maintenant commencer Metasploit et commencer un gestionnaire multiple sur votre
On tape tout d’abord la commande «metasploit.
Le msfconsole est probablement l'interface la plus populaire àconsole centralisée « toutdes options disponibles dans le Framework Metasploit. Msfconsole peut sembler intimidant au début, mais une fois que vous apprendre la syntaxe devous apprendrez à apprécier la puissance de l'utilisation de cette interface.
o Les avantages :
-C’est la seule façon soutenue pour accéder à la plupart des fonctions au sein de Metasploit.
-Fournit une interface basée sur la console au cadre
-Contient le plus de fonctionnalités et est l'interface de MSF le plus stable
-Plein readline soutien, tabulation et la complétion des commandes
-Exécution de commandes externes dans msfconsole est possible.
Maintenant, on va utiliser le metasploit handler comme exploit. Puis sélectionner un payload parmi les payloads disponibles pour l’exploit. Ce dernier sert à ouvrir une connexion (reverse_tcp) entre la machine attaquante et la machine cible. l’exploit lancé et le payload envoyé, cette machine va ouvrir une connexion TCP sur notre machine (192.168.44tapant « exploit ».
Mobile Exploitation | SECURILIGHT 2014
14
On tape tout d’abord la commande « msfconsole » pour accéder à l’interface de
est probablement l'interface la plus populaire à la MSF. Il fournit une tout-en-un» et vous permet un accès efficace à la quasi
des options disponibles dans le Framework Metasploit. Msfconsole peut sembler intimidant au début, mais une fois que vous apprendre la syntaxe des commandes vous apprendrez à apprécier la puissance de l'utilisation de cette interface.
C’est la seule façon soutenue pour accéder à la plupart des fonctions au sein de
Fournit une interface basée sur la console au cadre.
Contient le plus de fonctionnalités et est l'interface de MSF le plus stable
Plein readline soutien, tabulation et la complétion des commandes
Exécution de commandes externes dans msfconsole est possible.
va utiliser le metasploit handler comme exploit. Puis sélectionner un payload parmi les payloads disponibles pour l’exploit. Ce dernier sert à ouvrir une connexion (reverse_tcp) entre la machine attaquante et la machine cible. Une fois
t le payload envoyé, cette machine va ouvrir une connexion TCP sur e (192.168.44.137), sur le port 4444. Enfin, commence le handler en
SECURILIGHT 2014
» pour accéder à l’interface de
ournit une un» et vous permet un accès efficace à la quasi-totalité
des options disponibles dans le Framework Metasploit. Msfconsole peut sembler s commandes
C’est la seule façon soutenue pour accéder à la plupart des fonctions au sein de
va utiliser le metasploit handler comme exploit. Puis sélectionner un payload parmi les payloads disponibles pour l’exploit. Ce dernier sert à ouvrir une
Une fois t le payload envoyé, cette machine va ouvrir une connexion TCP sur
commence le handler en
Maintenant nous allons voir ce que l’on peut faire avec ce meterpreter.
Vous êtes maintenant en train de l’utiliser. Mais exploiter une machine ne suffit pas, il
faut en faire quelque chose, exécuter un code, nous donner un shell, installer un
backdoor, ces actions sont
En exécutant l’application dans le téléphone,
concernant le système d’exploitation
Le meterpreter est un payload amélioré qui permet d’uploader ou de downloader
n’importe quel fichier entre la machine
tous les fichiers de la machine victime.
On va essayer de télécharger une photo depuis le téléphone. On commence par se
déplacer vers le dossier qui contient des photos à l’aide de la commande «
, on affiche son contenu «
courant :
Mobile Exploitation | SECURILIGHT 2014
15
Maintenant nous allons voir ce que l’on peut faire avec ce meterpreter.
êtes maintenant en train de l’utiliser. Mais exploiter une machine ne suffit pas, il
faut en faire quelque chose, exécuter un code, nous donner un shell, installer un
backdoor, ces actions sont appelées charges, ou payloads en anglais.
ication dans le téléphone, on peut obtenir des informations
le système d’exploitation utilisé par la victime en tapant :
Le meterpreter est un payload amélioré qui permet d’uploader ou de downloader
n’importe quel fichier entre la machine attaquante et cible. Ainsi on peut accéder à
tous les fichiers de la machine victime.
On va essayer de télécharger une photo depuis le téléphone. On commence par se
déplacer vers le dossier qui contient des photos à l’aide de la commande «
on affiche son contenu « ls ». on observe ainsi une liste du contenu du dossier
SECURILIGHT 2014
êtes maintenant en train de l’utiliser. Mais exploiter une machine ne suffit pas, il
faut en faire quelque chose, exécuter un code, nous donner un shell, installer un
on peut obtenir des informations
Le meterpreter est un payload amélioré qui permet d’uploader ou de downloader
Ainsi on peut accéder à
On va essayer de télécharger une photo depuis le téléphone. On commence par se
cd ». Puis
». on observe ainsi une liste du contenu du dossier
On choisit, par exemple, de télécharger la photo 20140928_225838.jpg
On sait que l’opération s’est effectuée avec succès lorsqu’on obtient le message
suivant :
On peut aussi vérifier l’existence de cette photo dans le dossier HOME de notre
machine pirate.
D’autres opérations sont possibles à savoir
Mobile Exploitation | SECURILIGHT 2014
16
par exemple, de télécharger la photo 20140928_225838.jpg
On sait que l’opération s’est effectuée avec succès lorsqu’on obtient le message
On peut aussi vérifier l’existence de cette photo dans le dossier HOME de notre
D’autres opérations sont possibles à savoir :
SECURILIGHT 2014
On sait que l’opération s’est effectuée avec succès lorsqu’on obtient le message
On peut aussi vérifier l’existence de cette photo dans le dossier HOME de notre
Connaitre son emplacement :
victime)
Supprimer des fichiers/dossiers : fichiers =>
Trouver un fichier : find -
Créer un dossier : mkdir <nomdudossier>
Envoyer des fichiers a la cible :
Lire un fichier : cat <fichier>
Editer un fichier : edit <fichier>
Prendre une photo avec la webcam :
Prendre un screenshot de l’ecran :
Etape 4:
Maintenant, on veut aller plus loin. On va exploiter un mobile android qui n’est pas connecté à notre réseaux local, l’attaque se passera plutôt via internet.
Il faut comprendre tout d’abord la
Notion d’adressage privé et publiqu
L'adresse IP est attribuée à chaqueinformatique (routeur, ordinateurun réseau informatiquecommunication entre ses nœuds. Cette adresse est assignée soit individuellement par l'administrateur du réseau local dans leautomatiquement via le protocoleinterfaces, chacune dispose d'une adresse IP spécifique, une idisposer de plusieurs adresses IP
Les adresses IPv4 sont ditesInternet, elles sont donc uniquessont utilisables que dans un réseau local, et ne doivent être uniques que dans ce réseau. La traduction d'adresse réseauprivées en adresses publiquesprivé.
D’une façon plus simple, une
une adresse privée c’est celle de tes ordinateurs sur un réseaux et qui ne sont pas accessible depuis internet
L’équipement qui va faire la frontière entre l’adressage IP privé et publique,routeur. le routeur va intercepter
Mobile Exploitation | SECURILIGHT 2014
17
Connaitre son emplacement : getlwd (Machine de l’attaquant) getwd (Machine
fichiers/dossiers : fichiers => rm <fichier> dossier => rmdir <dossier>
-f <fichier>
<nomdudossier>
Envoyer des fichiers a la cible : upload <nomdufichier>
<fichier>
<fichier>
Prendre une photo avec la webcam : webcam_snap <Webcam>
Prendre un screenshot de l’ecran : screenshoot
Maintenant, on veut aller plus loin. On va dans cette partie expliquer comment exploiter un mobile android qui n’est pas connecté à notre réseaux local, l’attaque se passera plutôt via internet.
Il faut comprendre tout d’abord la notion d’adressage privé et publique.
otion d’adressage privé et publique :
L'adresse IP est attribuée à chaque interface avec le réseau de toutordinateur, modem ADSL, imprimante réseau, etc.) co
réseau informatique utilisant l’Internet Protocol comme protocole de entre ses nœuds. Cette adresse est assignée soit individuellement par
l'administrateur du réseau local dans le sous-réseau correspondant, soit tomatiquement via le protocole DHCP. Si l'ordinateur dispose de plusieurs
interfaces, chacune dispose d'une adresse IP spécifique, une interface peut également disposer de plusieurs adresses IP
Les adresses IPv4 sont dites publiques si elles sont enregistrées et routables sur Internet, elles sont donc uniques mondialement. À l'inverse, les adressessont utilisables que dans un réseau local, et ne doivent être uniques que dans ce
ction d'adresse réseau permet de transformer desadresses publiques et d’accéder à Internet à partir d'un poste d'un réseau
D’une façon plus simple, une adresse publique c’est celle visible par tous sur internet,
vée c’est celle de tes ordinateurs sur un réseaux et qui ne sont pas accessible depuis internet .
’équipement qui va faire la frontière entre l’adressage IP privé et publique,va intercepter les paquets IP qui aimeraient sortir sur Internet. Par
SECURILIGHT 2014
(Machine
<dossier>
cette partie expliquer comment exploiter un mobile android qui n’est pas connecté à notre réseaux local, l’attaque se
de tout matériel , etc.) connecté à
protocole de entre ses nœuds. Cette adresse est assignée soit individuellement par
correspondant, soit . Si l'ordinateur dispose de plusieurs
nterface peut également
si elles sont enregistrées et routables sur privées ne
sont utilisables que dans un réseau local, et ne doivent être uniques que dans ce permet de transformer des adresses
et d’accéder à Internet à partir d'un poste d'un réseau
adresse publique c’est celle visible par tous sur internet,
vée c’est celle de tes ordinateurs sur un réseaux et qui ne sont pas
’équipement qui va faire la frontière entre l’adressage IP privé et publique, c’est le ir sur Internet. Par
exemple en ouvrant un browser avec http://www.googlechamp « adresse IP sourceest publique et donc unique
1. Premièrement, l’opérateur ne supprimera pas publique et non privée
2. Deuxièmement le destinataire (dans mon exemple Google) pourra vous répondre car cette adresse IP est unique car publique. On s
Lorsque le paquet retour arriinverse en remplaçant dans le paquet IP son adresse IP publique par votre adresse IP privée.
La question qui se pose donc comment une machine victime connecté sur internet va-t-elle être directement liée à votre machine
Port forward :
Heureusement pour nous, nous pouvons configurer notre routeur pour rediriger les ports. Cela signifie que, selon le numéro de port que la requête est envoyée sur, le routeur peut transmettre à des adresses IP différentes.
Mobile Exploitation | SECURILIGHT 2014
18
un browser avec http://www.google.tn , le routeur va modifier le adresse IP source » de votre paquet IP en mettant son adresse IP
publique et donc unique!
Premièrement, l’opérateur ne supprimera pas le paquet car il contient une adresse
Deuxièmement le destinataire (dans mon exemple Google) pourra vous répondre car cette adresse IP est unique car publique. On saura retrouver l’émetteur (le routeur
Lorsque le paquet retour arrivera à votre routeur, le dernier va faire l’opération dans le paquet IP son adresse IP publique par votre adresse IP
La question qui se pose donc comment une machine victime connecté sur internet directement liée à votre machine situé à un réseau local quelconque?
Heureusement pour nous, nous pouvons configurer notre routeur pour rediriger les ports. Cela signifie que, selon le numéro de port que la requête est envoyée sur, le routeur peut transmettre à des adresses IP différentes.
SECURILIGHT 2014
va modifier le son adresse IP, qui
le paquet car il contient une adresse
Deuxièmement le destinataire (dans mon exemple Google) pourra vous répondre car aura retrouver l’émetteur (le routeur)!
va faire l’opération dans le paquet IP son adresse IP publique par votre adresse IP
La question qui se pose donc comment une machine victime connecté sur internet situé à un réseau local quelconque?
Heureusement pour nous, nous pouvons configurer notre routeur pour rediriger les ports. Cela signifie que, selon le numéro de port que la requête est envoyée sur, le
Passons maintenant à la réalisation
Configuration du routeur
Nous allons configurer dans notre exemple un routeur Huawei E5151.
Nous allons acceder à l’interface de notre routeur > par
Mobile Exploitation | SECURILIGHT 2014
19
Passons maintenant à la réalisation !
Configuration du routeur :
Nous allons configurer dans notre exemple un routeur Huawei E5151.
Nous allons acceder à l’interface de notre routeur > par amértre > serveur virtuel
SECURILIGHT 2014
> serveur virtuel
Nous allons ajouter une ligne dans la table qui redirigera les paquets reçus par le routeur sur le port 4444 vers l’adresse IP de notre machine connecté (192.168.1.106).
De cette manière le routeur assurera, en tant qu’intermédiaire entre la machine attaquante et l’internet, la redirection de tous les paquets reçus de la machine victime vers la première.
Lors de l’ouverture de session entre la machine attaquante et la macallons recevoir l’adresse publique utilisé par le routeur lié à la machine victime et non pas son adresse privée bien sûr. La connexion s’établie entre la machine attaquante el le mobile Android attaqué et nous aurons un accès total à tocontient le mobile.
VI. CONCLUSIONTout d’abord, nous vous remercions pour votre attention
tutoriel est destiné aux vrais débutants qui veulent avoir une petite introduction à
Metasploit, les choses sont simplifiées, n’allez pas croire qu’un exploit se passe ainsi
sur les serveurs d’une banque nationale
Il ne faut pas oublier qu’
d’une autre ; on peut mettre ce genre d’application sur un site web ou l’envoyer
directement via Bluetooth...
Mobile Exploitation | SECURILIGHT 2014
20
Nous allons ajouter une ligne dans la table qui redirigera les paquets reçus par le routeur sur le port 4444 vers l’adresse IP de notre machine connecté
De cette manière le routeur assurera, en tant qu’intermédiaire entre la machine attaquante et l’internet, la redirection de tous les paquets reçus de la machine victime
Lors de l’ouverture de session entre la machine attaquante et la machine victime nous allons recevoir l’adresse publique utilisé par le routeur lié à la machine victime et non pas son adresse privée bien sûr. La connexion s’établie entre la machine attaquante el le mobile Android attaqué et nous aurons un accès total à tous les données que
VI. CONCLUSION :nous vous remercions pour votre attention. On souhaite préciser que ce
aux vrais débutants qui veulent avoir une petite introduction à
Metasploit, les choses sont simplifiées, n’allez pas croire qu’un exploit se passe ainsi
sur les serveurs d’une banque nationale !
Il ne faut pas oublier qu’on doit envoyer l’application à la victime d’une façon ou
d’une autre ; on peut mettre ce genre d’application sur un site web ou l’envoyer
directement via Bluetooth...
SECURILIGHT 2014
Nous allons ajouter une ligne dans la table qui redirigera les paquets reçus par le
De cette manière le routeur assurera, en tant qu’intermédiaire entre la machine attaquante et l’internet, la redirection de tous les paquets reçus de la machine victime
hine victime nous allons recevoir l’adresse publique utilisé par le routeur lié à la machine victime et non pas son adresse privée bien sûr. La connexion s’établie entre la machine attaquante el
us les données que
On souhaite préciser que ce
aux vrais débutants qui veulent avoir une petite introduction à
Metasploit, les choses sont simplifiées, n’allez pas croire qu’un exploit se passe ainsi
la victime d’une façon ou
d’une autre ; on peut mettre ce genre d’application sur un site web ou l’envoyer
Pour éviter de se faire casser son petit Windows mais en gardant Java il faut prendre
quelques dispositions.
Installer un bon antivirus, par exemple j’utilise Kaspersky qui est assez bon contre ce
type d’attaques. Et surtout ne pas cliquer sur des liens suspicieux et arrêter de cliquer
sur « oui » ou « suivant » sans prendre la peine de lire la pop up !
Mobile Exploitation | SECURILIGHT 2014
21
Pour éviter de se faire casser son petit Windows mais en gardant Java il faut prendre
un bon antivirus, par exemple j’utilise Kaspersky qui est assez bon contre ce
type d’attaques. Et surtout ne pas cliquer sur des liens suspicieux et arrêter de cliquer
» sans prendre la peine de lire la pop up !
SECURILIGHT 2014
Pour éviter de se faire casser son petit Windows mais en gardant Java il faut prendre
un bon antivirus, par exemple j’utilise Kaspersky qui est assez bon contre ce
type d’attaques. Et surtout ne pas cliquer sur des liens suspicieux et arrêter de cliquer