SSTIC 2014
Analyse de la sécurité des modems
des terminaux mobiles
Benoit MICHAU (ANSSI)
benoit.michau [à] ssi.gouv.fr
Mission
Mise en place d'un banc de test radio
pour les terminaux mobiles récents.
- USRP et OpenBTS pour la 2G
- Equipement radio 3G commercial
- Station de base LTE logicielle Amarisoft
- Développement d'un coeur de réseau 3G / LTE minimal
- Intégration de scénarios de test
Dans le respect de la réglementation
Pourquoi ?
Historique et évolutions des technologies mobiles,
et de l'évaluation de leur sécurité.
Des centaines de millions de terminaux 2G + 3G
+ LTE pour les plus récents.
GSM, GPRS et EDGE
- Technologies de la fin des années 80 et des années 90
- Cryptographie non publique (54 puis 64 bits)
- Niveau de sécurité théorique faible (en 2014)
- Nombreuses études et évaluations pratiques de sécurité, logiciels en source ouverte
(OpenBTS, Osmocom, Kraken, ...)
Sécurité:
3G
- Technologies de la fin des années 90
- Cryptographie publique (128 bits)
- Niveau de sécurité théorique bon
- Peu d'études de sécurité, aucun système pratique et peu coûteux disponible
Sécurité:
LTE
- Technologies de la fin des années 2000
- Cryptographie publique (128 / 256 bits)
- Niveau de sécurité théorique bon, améliorations par rapport à la 3G
- Peu d'études de sécurité, peu de systèmes pratiques et peu coûteux disponibles
Sécurité:
Quoi ?
Mécanismes de protection des communications radio-mobiles.
Tester les implémentations
- Procédures non sécurisées
- Décodage des canaux de diffusion des antennes (CSN.1, ASN.1)
- Demande d'accès au réseau et établissement des canaux radio duplex
- Gestionnaires protocolaires
- Plusieurs protocoles (RRC, MM, GMM, EMM)
- Procédures d'authentification
- Procédures de mise en oeuvre des algorithmes cryptographiques (chiffrement, contrôle d'intégrité)
- Mécanismes de gestion / allocation mémoire au sein du modem, et du terminal
Tests sur les syntaxes
- Modifications simples sur le format des messages
- Exemple: encapsulation TLV d'un élément de longueur fixée
- Déclencher des corruptions mémoires
Tests sur les protocoles
- Modifications plus avancées sur les machines à états
- Exemples: déséquencement du gestionnaire de mobilité,
abaissement du niveau d'authentification ou de contrôle d'intégrité
- Contourner les procédures de sécurité
Comment ?
Mettre en place un banc de test.
Prérequis
- Disposer d'un budget (matériel radio, cage de Faraday, licences logicielles)
- Etre persuasif (prêt de matériel, équipements radio, terminaux)
- Lire les normes 3GPP
- Développer, interfacer et configurer
- Tester...
- ... persévérer
vidéo 1 : connexion au banc de test LTE
vidéo 2 : scan de messages LTE EMM
Pour quels résultats ?
Les failles existent,
chez de nombreux fabricants et éditeurs ;
nombreux les corrigent ;
certains, non...
Indication de chiffrement du canal radio inexistante
Quel que soit le terminal, fabricant, éditeur ou opérateur
Corruption mémoire lors de l'authentification 3G
- Paramètre AUTN du message AUTHENTICATION CIPHERING REQUEST en mode PS
- Encapsulation TLV, mais longueur fixée à 16 octets : encodage d'un paramètre plus long
- Corruption d'une variable globale du RTOS et écrasement d'autres variables globales du système
- Exception levée par le RTOS et redémarrage du modem
- Bug similaire à celui découvert par Ralf-Philipp Weinmann en 2009
- Corrigé par l'éditeur
Connexion LTE sans contrôle d'intégrité (mode EIA0)
Attachement d'un mobile à un faux réseau LTE
- Mobile précédemment connecté et authentifié à son réseau légitime
- Usurpation des codes réseaux légitimes (MCC, MNC) par le faux réseau
- Demande du faux réseau pour :
- réutiliser le vecteur d'authentification précédent
- utiliser les modes EEA0 (sans chiffrement) et EIA0 (sans contrôle d'intégrité)
- Acceptation du mobile...
- Vulnérabilité corrigée par l'éditeur
Changer les comportements
- Fabricants, éditeurs : analyser leurs systèmes, les corriger, pousser les mises à jour
- Opérateurs, distributeurs : analyser les terminaux, faciliter les mises à jour
- Utilisateurs : guetter les mises à jour, les installer
Merci pour votre attention
Et à mes collègues (cde, en particulier)
Annexe 1 : expérimentation radio "de bureau"
Annexe 2 : expérimentation radio professionelle
Annexe 3 : bibliothèques logicielles open-source
- CryptoMobile : algorithmes cryptographiques 3G et LTE
- libmich : encodage / décodage des messages de signalisation 2G, 3G et LTE