Blog ENI : Toute la veille numérique !
Accès illimité 24h/24 à tous nos livres & vidéos ! 
Découvrez la Bibliothèque Numérique ENI. Cliquez ici
💥 Les 22 & 23 novembre : Accès 100% GRATUIT
à la Bibliothèque Numérique ENI. Je m'inscris !

Les appareils mobiles : failles et investigations

Généralités

Les objets connectés sont de plus en plus nombreux. À l’heure actuelle, on en dénombre trente milliards. Ceux-ci sont de natures diverses et variées, présents dans de multiples domaines, qu’il s’agisse d’objets du quotidien proposant davantage de fonctionnalités, ou d’autres conçus de toutes pièces, créant ainsi l’offre et la demande. Parmi cet ensemble, on retrouve les terminaux mobiles.

Les précurseurs des smartphones sont apparus à la fin des années 1990, mais il faut attendre 2007, année de commercialisation de l’iPhone, pour que ce marché s’étende considérablement.

Le smartphone est un téléphone multifonction composé d’une multitude de capteurs, de l’appareil photo au gyroscope. Ses usages sont variés et il en est de même, si ce n’est plus, sur la partie software.

En effet, c’est également un véritable ordinateur de poche, doté d’un système d’exploitation spécialement conçu permettant d’exécuter des applications. On y retrouve les classiques pour passer des appels ou envoyer des SMS, mais également beaucoup d’autres disponibles depuis les magasins d’applications pour réaliser des actions qu’on qualifierait d’indispensables aujourd’hui, comme la navigation sur le Web, la télévision, la géolocalisation…

Certains pirates ont bien compris la portée de l’omniprésence des smartphones dans notre vie quotidienne et c’est en ce sens qu’ils peuvent être une cible privilégiée.

En effet, ceux-ci contiennent des informations personnelles telles que celles qu’on peut trouver sur les réseaux sociaux, mais aussi des plus sensibles...

Les vecteurs d’attaque

1. Introduction

Les attaques envers les smartphones sont semblables à celles abordées précédemment dans ce livre, notamment contre les systèmes d’exploitation (exploitation de CVE). On peut retrouver également l’ensemble du panel des attaques web qui sera appliqué à nos applications, mais aussi celles en matière de protocoles de communication réseau tels que le Wi-Fi, le Bluetooth…

2. Anatomie des attaques mobiles

Comme illustré ci-dessous, une attaque mobile peut impliquer la couche périphérique, la couche réseau, le centre de données ou une combinaison de ceux-ci.

images/p704.png

Anatomie des attaques mobiles

Il ne s’agit pas de se répéter, comme mentionné dans l’introduction. Ici, nous allons voir les autres facteurs d’opportunités offerts aux cyberattaquants qui convoitent nos données.

3. Les données ciblées

Les smartphones, véritables cartes d’identité numérique du fait des nombreux capteurs et informations qu’ils contiennent et de leur utilisation intensive au quotidien, font que ceux-ci sont une mine d’or en termes de données.

  • SMS

  • Appels

  • Localisation

  • Caméra

  • Microphone

  • Contacts

  • Comptes (bancaire, sites marchands, santé, divertissement, sociaux, entreprises…)

  • Photos

  • Etc.

En cas de compromission, ils pourraient également être utilisés au sein d’un botnet afin de mener des attaques DDoS…

Top 10 des vulnérabilités des mobiles

L’OWASP (Open Web Application Security Project) est une nouvelle fois à l’honneur dans ce livre, afin de vous faire partager ce document, disponible sur leur site. Celui-ci a pour but de sensibiliser les développeurs à la sécurité des applications mobiles en présentant les vulnérabilités les plus communément retrouvées dans celles-ci. Il s’agit ici de présenter brièvement les points ; les vulnérabilités derrière ceux-ci seront expliquées ultérieurement dans ce chapitre.

1. Utilisation incorrecte de la plateforme

En somme, le titre est assez explicite : certains utilisateurs utilisent mal leur smartphone. Cela passe par différents facteurs, comme la non-utilisation des contrôles de sécurité (méthode d’authentification, installation d’applications intrusives ou provenant de sources inconnues…), ou, à l’inverse, une utilisation abusive de certaines fonctionnalités. On pourra citer par exemple l’obtention des droits administrateur, entraînant divers problèmes de sécurité que nous aborderons par la suite.

2. Stockage de données non sécurisé

Comme mentionné dans l’introduction, ainsi que dans la partie concernant les vecteurs d’attaque, nos smartphones contiennent énormément de données pouvant intéresser des personnes malveillantes ; cela est d’autant plus vrai dans le cas où ils seraient utilisés dans un contexte de BYOD.

Lors d’un vol ou bien d’une compromission de malware, les pirates vont investiguer celui-ci à la recherche de données stockées de manière non sécurisée par les applications comme des bases...

Réseau cellulaire

Depuis les années 1980, le réseau cellulaire a connu son nombre de vulnérabilités. De par l’exploitation de la carte SIM à l’aide des commandes AT, aux attaques sur le réseau SS7, ou encore sur le réseau LTE lui-même avec les attaques aLTEr et reVoLTE, tout y est passé. L’apparition de la 5G nous fait entrer dans une nouvelle aire, avec une bande passante semblable à celle de la fibre, mais elle est aussi censée venir balayer les erreurs du passé en termes de sécurité.

1. Définitions

images/13EP02.png

Réseau cellulaire

Comme vous pouvez le constater, il est très compliqué de faire un schéma clair de l’ensemble du réseau de télécommunications. Pour synthétiser, nous allons nous appuyer sur le réseau BSS (2G), qui nous servira par la suite pour notre démonstration.

Un BSC (Base Station Controller) est un élément qui contrôle les transmissions radio des stations de base BTS (Base Transceiver Station). Il est également en charge du transfert des données avant l’envoi au téléphone mobile (ME) identifié par la carte SIM (MS). Pour ce faire, il s’interface avec le cœur du réseau (CN) de l’opérateur mobile : d’une part, avec le SGSN (Serving GPRS Support Node) pour la transmission des services multimédias proposés par le réseau IMS (IP Multimedia Subsystem) ; d’autre part, avec le MSC (Mobile service Switching Center) pour le transfert de la voix et de la signalisation reçues par le réseau SS7 en charge du traitement des appels, ou le SMSC (Short Message Service Center) pour le traitement des SMS.

Tout cela après vérification de l’identité du terminal d’après...

Android

Android est un système d’exploitation open source basé sur le noyau Linux. Il est conçu en 2003 par Andy Rubin, Chris White, Nick Sears et Rich Miner. Le projet est racheté en 2005 par Google, qui commercialise la première version publique du système d’exploitation préinstallé sur le HTC Dream en septembre 2008.

1. Introduction

En 2010, comme le souligne le graphique suivant, le système d’exploitation de Google commence déjà à prendre ses marques, avec 23,3 % des parts de marché de la téléphonie mobile en sa possession.

images/13EP07.png

Part de marché d’Android en 2010

Lors de la conférence annuelle "Google I/O" de 2019, il est annoncé que le seuil de 2,5 milliards de terminaux Android actifs a été atteint, en plus de la présentation des nouveautés du système d’exploitation. Ce chiffre fait de lui le système d’exploitation le plus utilisé au monde avec notamment 85 % de parts de marché à son actif sur la partie mobile.

images/13EP08.png

Part de marché d’Android en 2019

2. Les différentes versions

a. Introduction

Depuis 2008, le système d’exploitation a fortement évolué, notamment afin de répondre à une communauté de plus en plus importante. Ces évolutions portent tant en termes d’apparence que de fonctionnalités. En effet, à chaque nouvelle version on en retrouve quatre ou cinq supplémentaires aussi bien sur la partie software que hardware, notamment avec les nouveautés apportées par les divers constructeurs s’appropriant celui-ci (caméra rétractable, support de diverses tailles d’écran...).

images/13EP09.png

Versions d’Android

b. Problématique

Avec un panel aussi important, divers problèmes...

Vulnérabilités des applications

De par la structure des applications et leur fonctionnement, on peut en déduire que celles-ci sont similaires aux applications web. Des millions d’applications sont disponibles sur le marché ; parmi elles, il en existe des vulnérables. En effet, il est difficile de concevoir une application sans vulnérabilités, d’autant plus quand le développeur n’a pas de formation en sécurité. Dans cette partie, nous allons voir comment exploiter les vulnérabilités de ces applications.

Pour ce faire, nous adopterons les mêmes raisonnements que lors d’un audit web (vu dans les chapitres précédents). Nous pouvons également utiliser les méthodologies de l’OWASP. Nous aurons également besoin d’outils, et pour cela plusieurs distributions sont disponibles.

1. Distribution

En tant que pentester, la phase d’armement est importante, il ne faut pas perdre de temps en audit à découvrir, mettre à jour, déboguer ces outils. La distribution Kali Linux, qu’on ne présente plus, est assez fiable en la matière mais ne possède que quelques outils pour l’audit d’applications mobiles. Il existe bien des distributions dédiées comme Santoku Linux (https://santoku-linux.com/) ou Android Tamer (https://androidtamer.com/), mais celles-ci ne sont plus trop maintenues et leurs outils se font vieillissants. Nous avons donc entrepris de créer notre propre image Docker, mais étant soumis à quelques limitations et le suivi des mises à jour d’outils se faisant lourd, nous nous sommes penchés vers la distribution Mobexler (https://mobexler.com/). Cette dernière est dédiée à l’audit d’applications mobiles et a le mérite d’être...

Conclusion

Dans ce chapitre, nous avons tâché de vous informer quant aux vulnérabilités du réseau de télécommunications. Nous sommes restés en surface afin que vous puissiez les explorer par vous-même tout en restant dans un contexte légal.

Concernant Android, les fonctionnalités ainsi que sa sécurité n’ont cessé de croître ces dernières années. De même, l’écart quant aux différences de versions actives semble se réduire et parvient à rattraper le retard sur iOS, le système de la firme Apple. Cependant, des vulnérabilités subsistent, principalement dues à une mauvaise utilisation des périphériques par les utilisateurs. Google semble durcir de plus en plus son système d’exploitation vis-à-vis de ce point, en augmentant ainsi la confidentialité des données, même si au passage cela risque d’entraîner le découragement de jeunes bidouilleurs. Afin de veiller au respect des bonnes pratiques d’utilisation dans les entreprises, des solutions de Mobile Device Management existent et elles doivent être mises en place. Pour ce qui est de la sécurité des applications, la conclusion à en tirer est semblable à celle concernant le chapitre Les failles web, c’est-à-dire qu’il est conseillé de suivre le guide de l’OWASP ainsi que les recommandations de Google, et d’avoir recours à des audits réguliers afin de limiter les vulnérabilités et leur exploitation.