Android Exploitation SECURILIGHT 2013



Documents pareils
CHEF ATELIER CHEF ATELIER

Atelier Pivoting KHOULOUD GATTOUSSI (RT3) ASMA LAHBIB (RT3) KHAOULA BLEL (RT3) KARIMA MAALAOUI (RT3)

Formation en Sécurité Informatique

SECURIDAY 2013 Cyber War

SECURIDAY 2012 Pro Edition

SECURIDAY 2012 Pro Edition

Sécurité Informatique : Metasploit

LINUX - Sécurité. Déroulé de l'action. - 3 jours - Contenu de formation

Tutoriel Création d une source Cydia et compilation des packages sous Linux

TEST D INTRUISION. Document Technique

Utilisation des ressources informatiques de l N7 à distance

NE PAS INSERER DE CD FAIT POUR WINDOWS LORS DE L'INSTALLATION D'INTERNET NE PAS INSERER LE CD D'INSTALLATION DE VOTRE FOURNISSEUR D'ACCES

Pré-requis installation

L accès à distance du serveur

Installation et prise en main d UBUNTU

Table des matières. Avant-propos... Préface... XIII. Remerciements...

Atelier Le gestionnaire de fichier

Virtual Private Network WAFA GHARBI (RT4) CYRINE MAATOUG (RT4) BOCHRA DARGHOUTH (RT4) SALAH KHEMIRI (RT4) MARWA CHAIEB (RT3) WIEM BADREDDINE (RT3)

Accès aux ressources informatiques de l ENSEEIHT à distance

Assistance à distance sous Windows

Rapport de projet Prise en main, configuration et évaluation des performances d un

Système Principal (hôte) 2008 Enterprise x64

Faille dans Internet Explorer 7

Guide d installation de MySQL

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée Virtual Server de Microsoft

Maintenance et gestion approfondie des Systèmes d exploitation Master 2 SILI. Année universitaire David Genest

«Obad.a» : le malware Android le plus perfectionné à ce jour

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server 3, 3.5

LES TABLETTES : GÉNÉRALITÉS

SERVEUR NAS «Comprendre l'utilité d'un NAS c'est l'adopter!»

Ceci est un Chromebook, ton ordinateur!

Manuel du client de bureau distant de KDE

Service de Virtualisation de la DSI UJF

ACCEDER A SA MESSAGERIE A DISTANCE

Procédure pas à pas de découverte de l offre. Service Cloud Cloudwatt

Tunnels et VPN. 22/01/2009 Formation Permanente Paris6 86

Contrôle de la DreamBox à travers un canal SSH

ACCÉDER A SA MESSAGERIE A DISTANCE

TD séance n 2c Mise à jour des Systèmes

Network Shutdown Module V3 Extension du Manuel Utilisateur pour architecture Virtualisée VMWare ESX Server

ClariLog - Asset View Suite

Preliminary Spec Sheet

Service Informatique et Télématique (SITEL), Emile-Argand 11, 2009 Neuchâtel, Tél ,

WINDOWS Remote Desktop & Application publishing facile!

Administration de systèmes

Point sur les solutions de développement d apps pour les périphériques mobiles

NAS 224 Accès distant - Configuration manuelle

Qu est-ce que le «cloud computing»?

SECURINETS CLUB DE LA SECURITE INFORMATIQUE INSAT. SECURIDAY 2012 Pro Edition [Investigation :Digital Forensics]

Les risques HERVE SCHAUER HSC

Firewall IDS Architecture. Assurer le contrôle des connexions au. Sécurité 1

Prise en main d un poste de travail sous Windows sur le réseau du département MMI de l'upemlv. d après M. Berthet et G.Charpentier

Guide de Démarrage. Introduction... 2 Scénarios pour l utilisation de votre procloud@ocim.ch... 2 Scénarios à venir :... 2

Figure 1a. Réseau intranet avec pare feu et NAT.

UltraVNC, UltraVNC SC réglages et configurations

Lutter contre les virus et les attaques... 15

SÉCURISATION DES CONNEXIONS À DISTANCE SUR LES RÉSEAUX DE CONTRÔLE

Table des matières. Module tablette

Pilote KIP certifié pour AutoCAD. Guide de l utilisateur État de l imprimante KIP

MANUEL D INSTALLATION DE WATCHDOC 2011 (EVALUATION)

Linux. Sécuriser un réseau. 3 e édition. l Admin. Cahiers. Bernard Boutherin Benoit Delaunay. Collection dirigée par Nat Makarévitch

Serveur de messagerie sous Debian 5.0

Protection des protocoles

CONFIGURATION IP. HESTIA FRANCE S.A.S 2, rue du Zécart TEMPLEUVE +33 (0) (0) Site internet:

MANUEL D INSTALLATION D UN PROXY

Utiliser des logiciels Windows sous Linux Ubuntu

Performance et usage. La différence NETGEAR - R7000. Streaming HD illimitée

PPE Installation d un serveur FTP

Comment utiliser mon compte alumni?

Machine virtuelle W4M- Galaxy : Guide d'installation

Dans le cadre de SECURIDAY Et sous le thème de Computer Forensics Investigation SECURINETS. Analyse des fichiers LOG. Tarek LABIDI (RT3)

NOMADES ET SMARTPHONES EN ENTREPRISE EN TOUTE SÉCURITÉ PAR BERTRAND THOMAS ET JULIEN COULET

Firewall. Souvent les routeurs incluent une fonction firewall qui permet une première sécurité pour le réseau.

A Libre Ouvert. Médiathèque Jacques Ellul. le

NAS 109 Utiliser le NAS avec Linux

DenyAll Detect. Documentation technique 27/07/2015

Installation d'une galerie photos Piwigo sous Microsoft Windows.

SmartCaisse, depuis Prise de Commande IPhone, IPad (2, 3 et mini), IPod et tablette Android SmartCaisse

Accéder à ZeCoffre via FTP

COMMENT AUTORISER LES PARTAGES RESEAUX ET IMPRIMANTE SOUS L ANTIVIRUS FIREWALL V3

AUTHENTIFICATION MANAGEMENT

PC, Tablette, Smartphone, comment choisir ce qui me convient le mieux?

THEME : Mise en place d une plateforme d enseignement à distance

Microsoft Windows NT Server

ECOLE POLYTECHNIQUE DSI. Utilisation des serveurs mandataires («proxy») avec les protocoles d usage courant

Manuel du Desktop Sharing

Guide SQL Server 2008 pour HYSAS

VIDEO RECORDING Accès à distance

Table des matières. Date : Version : 29/06/ Objet : OpenVas 6.0

Les cahiers pratiques de Anonymat.org. SocksCap32. Edition du 20 Octobre 2000

Sécuriser un équipement numérique mobile TABLE DES MATIERES

Audits Sécurité. Des architectures complexes

BUREAU VIRTUEL. Utilisation de l application sur ipad. Guide utilisateur. Sciences Po Utilisation du bureau virtuel sur ipad 1 / 6

Tutoriel Drupal version 7 :

Fiche produit. Important: Disponible en mode SaaS et en mode dédié

Pré-requis installation

TP n 2 : Installation et administration du serveur ProFTP. Partie 1 : Fonctionnement du protocole FTP (pas plus de 15min)

Transcription:

Android Exploitation CHEF ATELIER : NEJI MOHAMED OUSSAMA (RT4) KOURAICHI SANA (RT4) BRAIKI RIHAB (RT4) MEJBRI SONIA (RT4) IDRISS IMEN (RT4) GHARBI HATEM (RT3) BEN SIDHOUM TEISSIR (MPI)

Table des matières I. Présentation de l atelier :... 2 II. Présentation des outils utilisés :... 2 1. Ubuntu... 2 a- Les avantages d'ubuntu :... 2 b- Principales différences de fonctionnement entre Windows et Ubuntu :... 3 2. Le Framework Metasploit... 4 3. Smartphone Android... 6 III. Topologie de réseau :... 7 IV. Configuration des outils :... 8 1. Installation Ubuntu :... 8 2. Installation Metasploit :... 9 V. Scenario de test :... 10 VI. Conclusion :... 16 1

I. Présentation de l atelier : L atelier Android Exploitation représente l interception et l exploitation des données d un utilisateur Smartphone, Tablette ou autre a l aide d une application andoid en utilisant un malware, ce qui nous permet de voler des informations se trouvant sur le téléphone ou la tablette de la victime (photos, vidéos, nom de l operateur, contacts.). II. Présentation des outils utilisés : 1. Ubuntu Ubuntu est un système d'exploitation libre commandité par la société Canonical et une marque déposée par cette même société. Fondé sur la distribution Linux Debian, ce système d'exploitation est constitué de logiciels libres, et est disponible gratuitement sur le site http://www.ubuntu-fr.org/telechargement Ubuntu pour postes de travail rassemble le meilleur du logiciel ouvert (open-source) en une plate-forme bien soutenue, mise à jour et totalement gratuite. Il profite de centaines d'améliorations et des nouvelles mises à niveau de logiciels à chacune de ses nouvelles versions stables, attirant de plus en plus d'utilisateurs! a- Les avantages d'ubuntu : Clarté: Lorsque vous chargez Ubuntu pour la première fois, vous découvrez un environnement qui est propre et simple, sans icône superflue sur le bureau et dont le thème est agréable à l'œil. 2

Ubuntu "just works": Les développeurs ont fait tout le gros du travail pour vous. Une fois que Ubuntu est installé, toute la base est en place afin que votre système soit immédiatement utilisable. Vos logiciels sont aussi compatibles avec les divers autres logiciels d'autres éditeurs. Vos documents professionnels peuvent être échangés avec les utilisateurs de Microsoft Office, de Corel WordPerfect Office, de Calligra, de StarOffice, etc. L'accès à une vaste bibliothèque de logiciels gratuits: Besoin d'un logiciel particulier? Il n'est pas besoin d'aller fouiller partout dans des sites Internet parfois douteux afin de trouver ce qu'il vous manque. Choisissez simplement parmi des milliers de paquets logiciels à travers le catalogue d'ubuntu, tous téléchargeables et installables en un minimum de clics de souris. Et le tout, sans débourser le moindre centime (et c'est légal)! b- Principales différences de fonctionnement entre Windows et Ubuntu : Introduction : Ubuntu n'est pas Windows, c est une alternative à Windows qui a pour avantages : Facilité d'utilisation Liberté Gratuité Modularité Sécurité Installation et mise à jour des programmes : Windows : pour installer un programme il suffit généralement de télécharger puis lancer un exécutable <<.exe >>, et pour mettre à jour il faut télécharger sur internet la nouvelle version puis l'installer et enfin redémarrer. Ubuntu: il suffit d'un clic sur les liens que vous trouverez sur la documentation du site Ubuntu-fr. Il existe aussi un annuaire de logiciels intégré (Logithèque Ubuntu) très pratique. Système de fichiers : Windows: ne peut utiliser que deux systèmes de fichiers : FAT ou NTFS. Ubuntu (Linux): peut utiliser quasiment tous les systèmes de fichiers. Le principal étant l'ext4. 3

2. Le Framework Metasploit Metasploit est un outil, open source, pour le développement et l'exécution d exploits (logiciels malveillant) 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, 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. Les étapes basiques pour l'exploitation d'un système sont : 1. Choisir et configurer un exploit (code permettant de pénétrer un système cible en profitant de l'un de ses bogues ; environ 1000 exploits sont disponibles pour les systèmes Windows, Unix/Linux/Mac OS X/BSD/Solaris, et d'autres...). 2. Vérifier si le système cible visé est sensible à l'exploit choisi. 3. Choisir et configurer un payload (code qui s'exécutera après s'être introduit dans la machine cible, par exemple pour avoir accès à un shell distant). 4. Choisir la technique d'encodage pour encoder le payload de sorte que les systèmes de préventions ne le détectent pas. 5. Exécuter l'exploit. Composition Tout d abord définissons quelques termes : - Exploit : C est l attaque mise en œuvre qui va exploiter une vulnérabilité du système cible - Payload : C est le code qui s'exécutera après s'être introduit dans la machine cible, par exemple pour avoir accès à un Shell distant. 4

La très forte modularité de Metasploit vient du fait qu une payload ne fonctionne pas seulement qu avec un seul exploit, et vice-versa. Ainsi pour une même attaque on peut utiliser une payload permettant de rediriger le flux d exécution de l application vulnérable et donc d avoir accès à un Shell distant, ou d avoir un déport d affichage de la machine attaquée. Exploits Il est possible de créer plusieurs exploits permettant d utiliser une même vulnérabilité, ou à l inverse, d utiliser un même exploit afin d exploiter plusieurs vulnérabilités similaires. Le processus afin de créer un exploit est le suivant : on cible tout d abord l OS et/ou le logiciel cible, puis on cherche une vulnérabilité connue sur des sites web tels que www.osvdb.org (Open Source Vulnerability DataBase, qui est un site qui recense toutes les vulnérabilités découvertes à ce jour), à moins que l on en ait trouvé une soi-même. Il suffit ensuite de rédiger l attaque en prenant pour modèle d autres exploits Metasploit. Cette attaque contient l exploitation même de la vulnérabilité (très souvent un buffer overflow), puis une procédure permettant de chercher assez d espace disponible afin d ensuite pouvoir uploader et y placer notre payload. A noter qu il est nécessaire de connaître le fonctionnement du logiciel cible, qui souvent modifie les données avant de les traiter. Ainsi notre payload risque d être modifiée avant son exécution et donc ne plus fonctionner correctement. Les exploits peuvent se classer de plusieurs façons. Cette classification peut se faire suivant leur impact sur la cible, c'est-à-dire si elle provoque une perte de confidentialité, une perte d intégrité, une perte de disponibilité ou autre. On peut aussi les classer par type d attaque : elle peut porter sur la gestion de l authentification, provoquer un déni de service, être de nature cryptographique, malconfigurer la cible, dévoiler des informations de la cible, ou autre. Dans le Framework Metasploit, ces exploits sont tout d abord classées par OS cible. Les plus nombreuses concernent les attaques sur les systèmes Windows (250/330). Le reste concerne les systèmes Unix globalement, alors que certaines sont spécifiques à Linux ou Solaris. Il y en a très peu spécifiques à l OS MAC. Ensuite, au sein d un même OS, ces exploits sont classés par type de protocole utilisé par l application vulnérable. Les plus utilisés sont : ftp, http, imap, misc, smb, ssh, tftp, dcerpc 5

Enfin, au sein d un même protocole utilisé, les noms de différents exploits sont listés et diffèrent selon l OS ciblé, sa version et ses vulnérabilités. Payloads Une payload (charge utile) est une suite d'instructions qui est envoyée via un exploit pour rediriger le flux d exécution d'une application faillible afin d'obtenir une invite de commande après compromission. Il existe plusieurs type de code que l on va insérer une fois la faille ouverte. Les deux principales sortes de payload sont : - Le bind shellcode, qui consiste à exécuter sur la machine distante l équivalent d un serveur : un port (TCP ou UDP) se met alors en écoute de connexions entrantes et redirige les flux vers un shell distant. - Un reverse shellcode permet d obtenir un comportement de client standard sur la machine exploitée, c'est-à-dire qu elle établira une connexion sur une machine définie (par exemple celle de l attaquant) et lancera alors un shell que le «serveur» pourra contrôler. Les reverse shellcodes permettent parfois d outrepasser des règles de filtrage sur des firewalls. Une sorte de shell amélioré est la payload meterpreter (reverse_meterpreter) où en plus de pouvoir disposer d un shell afin de naviguer, exécuter ou lister du contenu sur la machine cible, le meterpreter permet d uploader ou de downloader n importe quel fichier entre la machine attaquante et cible. On peut ainsi facilement récupérer tout le contenu d un ordinateur, ou uploader un exécutable particulier afin de le lancer sur la machine cible. Il permet aussi, en gérant des canaux de communication, de détourner l entrée ou la sortie standard de la machine cible. Enfin il est aussi possible de gérer tous les processus à distance de la machine cible, les lister et aussi les arrêter Les payloads précédentes ne donnent pas d aperçu de l écran de la cible. Avec une payload du type vncinject (reflective_vncinject), un déport d affichage est possible jusqu à l écran de la machine attaquante, avec maîtrise de la souris et clavier. 3. Smartphone Android Un Smartphone, ordi phone, ordinateur de poche ou téléphone intelligent, est un téléphone mobile évolué disposant des fonctions. Selon le principe d'un ordinateur, il peut exécuter divers logiciels/applications grâce à un système d'exploitation spécialement conçu pour mobiles, et donc en particulier fournir des fonctionnalités en plus de celles des téléphones mobiles classiques. 6

Ce système d exploitation spécifique aux Smartphones, tablettes. Est l ANDROID c est un système open source, utilisant le noyau Linux. Il a été lancé par une startup rachetée par Google5 en APK : application package file c est le format de fichier utilisé pour distribuer et installer le logiciel d'application et middleware sur Google système d'exploitation Android. Pour créer un fichier APK, un programme pour Android est d'abord compilé, puis l'ensemble de ses pièces sont emballées dans un seul fichier. III. Topologie de réseau : Un ordinateur disposant d une adresse IP 192.168.1.32 envoi une application malware a un utilisateur Android, et en exécutant l application par la victime, une connexion entre le pirate et la victime s établi sur le port 4444 en envoyant les données du Smartphone vers l adresse 192.168.1.32 7

IV. Configuration des outils : 1. Installation Ubuntu : Télécharger ubuntu : http://www.ubuntu.com/download/desktop Appuyez sur le bouton Start download pour télécharger la dernière version de l image disque de Ubuntu. Lors de cet essai, le fichier au format iso était nommé ubuntu-12.04- desktop-i386.iso. On lance VMware Player et on choisit l option Create a New Virtual Machine : Sélectionner ensuite l option : Installer disc image file (iso): et sélectionner dans Image disque le fichier C:\Users\rehab1\Downloads\ubuntu-12.04.3-desktop-i386.iso : Après avoir fini l installation, votre machine linux «ubunto» est prête. 8

2. Installation Metasploit : Téléchargez Metasploit : http://www.rapid7.com/products/metasploit/download.jsp Le fichier d installation est sur votre bureau, maintenant. Ouvrez le terminal, puis exécutez ces commandes afin d installer le Metasploit sur votre machine : Apres avoir exécuté ces commandes : 9

Pour installer Metasploit sous Linux, nous avons besoin de quelques paquets spécifiques. Ouvrez un terminal en root et lancez la commande suivante : Metasploit est maintenant installé sur votre machine. Pour lancer le logiciel, on utilisera la commande suivante en root : V. Scenario de test : D abord, on exécute la commande «ifconfig» pour trouver l adresse ip de notre machine (machine pirate) : Notre adresse IP : 192.168.31.139 Maintenant, on doit créer l application qu on va envoyer à la victime (Smartphone, Tablette). Ceci est réalisé grâce à la commande suivante : 10

Cette commande doit être exécutée en tant que root. Explication de la commande: - On demande à msfpayload d utiliser le payload «android/meterpreter/reverse_tcp». -On configure LHOST suivant notre adresse IP et le LPORT sur lequel la machine victime va contacter la machine pirate. -On demande de sortir notre payload en format RAW (R), soit non crypté. -Enfin, on précise le chemin où on va récupérer notre application «/home/sana/desktop/app_securinets.apk» L application est enregistrée sur le bureau : Maintenant, 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, les mettre sur facebook... Dans notre cas, on va l envoyer par Bluetooth au téléphone visé, il faut faire alors l installation, puis l exécution de cette dernière. 11

Maintenant, on commence à faire notre exploit : Tout d abord, on tape la commande «msfconsole» pour entrer dans l interface de Metasploit : Pour sélectionner un exploit : Pour voir ses options : La commande show payloads va nous permettre de voir les payloads disponibles pour l exploit : 12

La sélection d un payload se fait avec la commande : Le payload sélectionné consiste à ce que la machine cible ouvre une connexion (reverse_tcp) sur la machine attaquante. Une fois l exploit lancé et le payload envoyé, cette machine va ouvrir une connexion TCP sur notre machine (192.168.1.32), sur le port 4444. On tape la commande «exploit» qui va initier l exploit par l écoute sur le port Puis, on exécute l application dans le téléphone, on remarque alors que l invite de commande se transformer en ceci. Une sorte de shell amélioré est la payload meterpreter (reverse_meterpreter) où en plus de pouvoir disposer d un shell afin de naviguer, exécuter ou lister du contenu sur la machine cible, le meterpreter permet d uploader ou de downloader n importe quel fichier entre la machine attaquante et cible. On peut ainsi facilement récupérer tout le contenu du téléphone, ou uploader un exécutable particulier afin de le lancer sur la machine cible. Il permet aussi, en gérant des canaux de communication, de détourner l entrée ou la sortie standard de la machine cible. Enfin il est aussi possible de gérer tous les processus à distance de la machine cible, les lister et aussi les arrêter Ainsi, on a accès à tous les fichiers de la victime : 13

on peut alors faire différents essais : Télécharger une photo depuis le téléphone (download): Entrer dans le dossier où il y a les photos pour en télécharger une : Le téléchargement : On peut remarquer alors la photo CAM01438 dans le dossier HOME de notre machine pirate : Envoyer une photo au téléphone (upload): On vérifie que l image a été bien enregistrée dans le chemin désigné «/sdcard/download» 14

Prendre des photos à partir du téléphone de la victime (webcam_snap): On peut prendre quelques photos en utilisant l appareil photo du Smartphone ou Tablette a l aide de la commande «webcam_snap i 1 p /home/nagui/bureau/test.jpg v true» -i : l indice de l appareil photo ; si la victime possède 2 cameras, on utilise «webcam_list» pour avoir l indice. -v : L ouverture automatique de l image enregistrée. -p : représente le chemin d enregistrement de l image ainsi que son nom. Enregistrement audio à partir du téléphone de la victime : -d : nombre de seconde a enregistrée. -p : l ouverture automatique de la partie audio enregistrée. 15

On peut voir un fichier audio «GmgNIdZo.wav» dans le dossier HOME : VI. Conclusion : Nous espérons, au travers de ces quelques pages, avoir réussi à vous intéressez à cet outil Metasploit. Cet atelier nous a donc permis d'apprendre en premier lieu le travail d'équipe,la cohésion du groupe mais aussi l étude plus approfondie de Metasploit nous a permis d entrevoir les étapes de la création d un exploit, le fonctionnement et le déroulement d une payload, et les différentes possibilités qui s offrent à l attaquant une fois qu il a la main mise sur la machine cible. Néanmoins, cet atelier nous a permis de confirmer nos «préjugés» concernant l insécurité des systèmes android. Quant à l outil Metasploit, c est un projet open-source sérieux et surtout à jour, ce qui est très important dans le milieu de la sécurité informatique. Concernant les perspectives de cette étude, les exploits étant disponible sur le site officiel de Metasploit dès leur sortie, cela permet d avoir un outil le plus complet possible afin d être le plus efficace possible. De plus, étant donné un nombre d heures prévues assez limité pour ce projet, et le nombre important d exploit de ce Framework, l étendue des investigations reste encore large afin d explorer pleinement cet outil. En effet, l installation de logiciels dans leur version vulnérable afin de pouvoir utiliser de nombreuses autres attaques, ou la création même d un exploit pourraient constituer un projet à part entière faisant suite au notre. 16