Mobile Exploitation
CHEF ATELIER SARAH
OUSSEMA BEN GHROBEL
ALY TARAK
Mobile Exploitation
CHEF ATELIER : MERIEM MEMMICHE (RT3) SARAH LOUSSAIEF(RT3)
OUSSEMA BEN GHROBEL EMNA 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 ...
Table des matières
...
Présentation des outils utilisés...
...
...
...
...Error! Bookmark not defined.
... 2
... 2
... 7
... 8
... 10 Error! Bookmark not defined.0
I. Présentation de l’atelier
Bonjour et bienvenue dans ce tutoriel pour vous initier aux bases de l’exploitation Mobile avec Metasploit.
Ce tutoriel vous montrera les fonctionnements utilisateur Smartphone, Tablette ou a
II. Présentation des outils utilisés
Ce 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éveloppement
ré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
Présentation de l’atelier
Bonjour et bienvenue dans ce tutoriel pour vous initier aux bases de l’exploitation Mobile avec Ce tutoriel vous montrera les fonctionnementsbasiques 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.
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ête
http://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 s systèmes informatiques afin de les protéger
b. Qu’est ce qu’on peut
Le 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
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èmes
res 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 sur http://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 Metasploit
Le Framework permet de faire énormément de chose comme : 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
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 Framework
Le 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 v
que l'injection SQL), et les erreurs de la configuration 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 Web les erreurs de la configuration dans les applications.
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 se
sélectionner.
Par exemple, reverse shell
cible à celle de l'attaquant a renvoya à celle
que 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 q exécuter sur le système d'exploitation cible.
Shellcode :
Le Shellcode est constitué
l'exploitation. Shellcode est généralement écrit en si le shellcode est bien exécuté, une invite de commande une 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 un
module: 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 Axillaires
C’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 Metasploit
On 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 cible
et 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
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 commandes exé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;
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é
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 exploits Pour chercher un exploit : Search nom_exploit
Pour sélectionner un exploit : Use nom_exploit
Avoir des informations sur un exploit : Info nom_exploit Voir les options d’un exploit : Show options
Afficher tous les payloads disponibles sur Metasploit : Show payload Choisir le payload que l’on va utiliser : set PAYLOAD nom_payload Voir les options du payload pour une configuration : Show options
help
Si vous voulez connaître la version de Metasploit : version
Si 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.
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 A l’attaquant
Attaque Over Internet (Distante):
La victime est connectée
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)
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 libres
entreprise, mais est fondé sur une communauté mondiale de développeurs et d'entreprises.
Vérifiez que PostgreSQL est bien en fonction en utilisant la commande ant et assurez-vous que le port 5432 soit bien ouvert et à l’écoute.
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 commande vous que le port 5432 soit bien ouvert et à l’écoute.
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 Pros
utilisez la commande update
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.
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 test
Pour 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 S
Metasploit. 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
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.
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
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 so utilisé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
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 o
exemple 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 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
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 :
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
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 « tout
des options disponibles dans le Framework Metasploit. Msfconsole peut sembler intimidant au début, mais une fois que vous apprendre la syntaxe de
vous 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.44
tapant « exploit ».
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
» 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 :
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 ê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
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 :
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 à chaque informatique (routeur, ordinateur un réseau informatique
communication entre ses nœuds. Cette adresse est assignée soit individuellement par l'administrateur du réseau local dans le
automatiquement via le protocole
interfaces, chacune dispose d'une adresse IP spécifique, une i disposer de plusieurs adresses IP
Les adresses IPv4 sont dites Internet, elles sont donc uniques
sont utilisables que dans un réseau local, et ne doivent être uniques que dans ce réseau. La traduction d'adresse réseau
privées en adresses publiques privé.
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
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 tout ordinateur, 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 adresses
sont utilisables que dans un réseau local, et ne doivent être uniques que dans ce ction d'adresse réseau permet de transformer des
adresses 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 (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.google champ « adresse IP source
est 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 arri
inverse 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.
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.
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 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> 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 mac
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 à to
contient le mobile.
VI. CONCLUSION
Tout 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...
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...
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 !
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 !
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