|
 |
|
 |
|
Les enjeux sécuritaires de la 3G
|
|
 |
|
 |
Avant-propos
Du fait des nombreuses technologies et de la multitude de standards
existants dans le domaine des télécoms, rappelons que le but de cet article
n'est en aucun cas d'être exhaustif mais bien de concentrer l'étude sur un
sous-ensemble de protocoles et infrastructures. Il ne sera donc pas fait mention
de technologies telles que CDMA (xCDMA, CDMA2000, etc...) ou de modèles
propriétaires tels que I-Mode...
Introduction
Force est de constater que la convergence des technologies de
communication est actuellement en accélération constante. La téléphonie filaire
est en pleine transition d'un mode circuit vers un mode paquet, que ce soit via
la voix sur IP (VoIP) proposée aux utilisateurs finaux privés ou professionnels,
ou via la migration des infrastructures vers IP (backbones, etc). De son côté,
le "sans-fil" n'est pas en reste puisque la technologie GSM en mode circuit est
elle aussi en phase de transition vers un mode paquet (appelé "paquet
switching"). Pour se faire une idée, plus de 60% des communications des
particuliers en 2010 seront de nature sans-fil ou VoIP (source: Analysys).
Plusieurs technologies potentielles sont en course pour offrir les
meilleurs débits et les meilleurs services associés. D'une part les technologies
de 3ème Génération (3G) telles que l'UMTS proposent des débits intéressants mais
souffrent encore d'un coût élevé, au niveau de l'infrastructure ainsi que pour
les services proposés à l'utilisateur. D'autre part, les technologies dites de
transition ou 2.5G évoluent et viennent à concurrencer les débits offerts par la
3G. Sur la base du GPRS, précurseur du transfert de données sans-fil (mis à part
le WAP ou d'autres solutions isolées), d'autres technologies sont maintenant
proposées. C'est la famille des GERAN (GSM Edge Radio Access Network), avec des
protocoles comme EDGE.
Le point commun des ces technologies réside notamment dans leur
infrastructure: si GPRS et GSM partagent le même protocole radio pour la
communication entre le mobile et le point d'accès au réseau, GPRS au contraire a
introduit une infrastructure et une topologie de réseau qui est reprise par les
technologies de la 3G.
Les enjeux
D'un point de vue sécuritaire, GPRS se présente bien comme une
technologie de transition; les exigences d'interopérabilité avec les réseaux 2G
existants sont cruciales même si derrière une infrastructure double (circuit et
paquet) est mise en place. C'est un environnement hétérogène qui concentre les
atouts en terme de services mais cumule les faiblesses en terme de
sécurité.
D'un point de vue plus général, n'oublions pas que l'univers de la
téléphonie et des télécommunications a toujours été relativement épargné par les
menaces habituellement rencontrées par les systèmes d'informations. Sans entrer
dans les détails, ceci est dû au contexte politique, à l'architecture même des
réseaux et aux protocoles utilisés.
Mais aujourd'hui, l'introduction des
technologies sur IP a quelque peu changé la donne; si la continuité est un
service requis, elle a ouvert les portes des réseaux opérateurs à d'autres
réseaux, privés et publiques, opérateurs ou Internet. Inutile de préciser que
cela a beaucoup d'impact en termes de sécurité.
L'infrastructure
Avant d'aborder les aspects sécuritaires de la 3G, et comme beaucoup
d'acronymes vont être utilisés pour simplifier les explications, il est bon de
rappeler les principaux éléments de l'infrastructure des réseaux GPRS et 3G.
- 2G : GSM (Global System for Mobile communications) (~ 10 kbit/s)
- 2.5G : GPRS (General Packet Radio Service) (~ 128 kbit/s)
- 3 G : UMTS (Universal Mobile Telecommunication System) (~ 384 kbit/s, max 2 Mbit/s )
- USIM : UMTS Subscriber Identity
- GGSN : Gateway GPRS Support Node
- SGSN : Serving GPRS Support Node
- VLR : Visited Location Register
- MS : Mobile Station (cellulaire)
- HLR : Home Location Register
- RNC : Radio Node Controller
- MSC : Mobile Switching Center
- EIR : Equipment Identity Register
- SIM : Subscriber Identity
- IMSI : International Mobile Station Identity
- BTS : Base Transceiver Station
- BSC : Base Station Controller
Le schéma ci-dessus montre une topologie hybride simplifiée des réseaux
GPRS. L'infrastructure radio reste celle de la 2G, avec des stations de base sur
lesquelles se connectent les cellulaires, reliées de manière pyramidale à des
stations de contrôle elles-mêmes centralisées autour de passerelles qui forment
le coeur du réseau. Ces passerelles, ou SGSN ci-dessus, concentrent une partie
de la sécurité en supportant notamment le service d'authentification de
l'utilisateur (via sa carte SIM); elles s'interfacent pour cela avec les bases
de données centrales contenant les informations client (HLR pour le réseau
d'origine, VLR pour les réseaux visités par l'utilisateur).
Dans le cas plus particulier du GPRS, les passerelles sont reliées à 2
réseaux distincts; l'un, historique, pour les communications voix permet
d'accéder aux autres réseaux filaires comme celui de l'opérateur historique pour
le routage des appels. Le deuxième est de nature IP et permet les échanges de
données avec notamment d'autres réseaux tel qu'Internet ou ceux d'autres
opérateurs. Dans les 2 cas, voix ou données, des passerelles spécifiques gèrent
les flux entrants et sortants du réseau de l'opérateur; c'est le cas des GGSN
pour le réseau de données. Que ce soit les passerelles SGSN ou les GGSN, ces
passerelles sont des cibles de choix puisqu'elles représentent des portes
d'accès au réseau de l'opérateur ou aux autres réseux.
L'overbilling
Cette attaque a été l'une des premières à être décrite et réellement
considérée par les opérateurs, du fait de l'impact financier évident qui en
découle. L'objectif premier de l'attaque est d'envoyer du trafic non-sollicité à
des utilisateurs choisis de manière aléatoire; le système de facturation actuel
étant basé sur le volume des données échangées par un utilisateur, ce dernier
voit donc sa facture augmenter de manière dramatique. Il faut noter que les
bénéfices pour l'attaquant sont nuls, mis à part l'exploit individuel et la
renommée qui peut en découler (la reconnaissance de la communauté). Enfin, il
est clair que l'attaque dépend essentiellement de l'architecture réelle du
réseau; la modélisation présentée ici ne peut pas tenir compte de spécificités;
2 variantes vont cependant être présentées.
Overbilling par UDP
Cette variante se base sur le protocol UDP, non-connecté par définition.
Cela signifie notamment que les paquets ne sont pas gérés dans le cadre d'une
session entre 2 parties (comme TCP), ni comptés, etc...
Dans la phase 1, l'attaquant initie une communication avec un serveur situé
quelquepart sur Internet. En réponse, phase 2, ce serveur commence à envoyer des
données à l'attaquant. Celui-ci se déconnecte alors de son opérateur (3) et
libère l'adresse IP qui lui était assignée par DHCP (protocole de gestion
d'adresses IP dynamiques et temporaires). Pendant ce temps (4), le serveur
distant continue à envoyer des données même si le destinataire s'est déconnecté.
Enfin, en 5, un utilisateur régulier se connecte au réseau de l'opérateur; s'il
se voit assigner l'adresse IP préalablement utilisée par l'attaquant, il reçoit
alors tout le trafic émis par le serveur distant sans avoir sollicité quoique ce
soit. Cet utilisateur voit donc sa facture augmenter pour un service qu'il n'a
pas demandé.
Overbilling par TCP
Cette variante se base sur le protocole TCP, connecté par définition. Cela
signifie qu'une notion de session est établie entre les 2 parties, permettant
d'assurer à chacun que l'intégralité des données ont été reçues et ré-ordonnées.
Dans le scénario de l'attaque, cette session n'est pas terminée
explicitement.
Comme précédemment, la phase 1 consiste à établir une connexion (TCP) avec
le serveur distant situé sur Internet. Ce serveur doit être controllé par
l'attaquant également pour mener à bien cette attaque. Le serveur répond donc au
mobile au travers de cette session TCP (2). L'attaquant se déconnecte alors
sans terminer sa session TCP (3). En parallèle, le serveur envoie des paquets
TCP FIN afin de clore la session, mais le client s'étant déjà déconnecté, il ne
reçoit pas de réponse. A ce moment là, une technique veut que le serveur
continue à envoyer un peu de données comme si la session était toujours active;
cela permet notamment de maintenir "la porte" ouverte dans le cas où un pare-feu
est installé en amont de la passerelle GGSN (même avec de la "stateful
inspection", où l'état des connexions actives est gardé en mémoire, cette
technique fonctionne); il suffit de connaître le time-out appliqué par ce
pare-feu sur les connexions inactives. Cependant, comme il n'y a plus de
client actif sur l'adresse IP de l'attaquant, la passerelle GGSN stoppe le
trafic entrant (4). Le processus est maintenu jusqu'à ce qu'un client régulier
se connecte et se voit assigné l'adresse IP préalablement utilisée par
l'attaquant. A ce moment là (5), le trafic est rétablit par la passerelle GGSN
qui transmet les paquets au client. Ce dernier se voit facturé toutes les
données que lui envoie le serveur distant; il lui suffirait d'envoyer un paquet
TCP RST pour clore réellement la connexion au niveau du pare-feu, mais cela ne
correspond pas au comportement normal du client.
Conclusion
Il existe de nombreuses autres variantes de l'attaque, mettant en oeuvre un
comportement particulier de l'utilisateur (s'il se connecte à un serveur
agressif par exemple) ou des techniques de flooding particulières. La
majorité des attaques sont rendues possibles par un manque de synchronisation
entre les différents noeuds et éléments du réseau opérateur: pare-feu, SGSN,
GGSN, etc... Tous possèdent une partie des informations nécessaires à la gestion
des communications d'un utilisateur. Il suffirait de les partager pour éviter
des situations telles que décrites précédemment, où un client se déconnecte mais
son IP reste valable au niveau du pare-feu par exemple.
Man-in-the-middle
Cette attaque, beaucoup plus récente, illustre les problèmes de sécurité
issus de l'interopérabilité entre des technologies de nature et d'age
différents; le cas ci-dessous implique d'une part une infrastructure de données
type 3G ou 2.5G, et une interface radio type 2G qui est de conception plus
ancienne et n'implémente pas le niveau de sécurité des réseaux 3G.
Contexte
L'attaque a été publiée il y a peu, et relayée par la communauté
scientifique; l'article original est " A Man-in-the-Middle Attacks on UMTS ", U.
Meyer & S. Wetzel, conference WiSe'04, 10/2004, ACM Publications. Elle
concerne les téléphones 3G (interface radio UTRAN) compatibles avec l'interface
radio 2G ou GERAN, utilisée notamment pour le GPRS. Pour mémoire, le systeme GSM
s'est révélé à de nombreuses reprises très faible et facilement attaquable, que
ce soit au niveau du chiffrement des communication (A5/2) ou de la
diversification des clés de session (COMP128). Il est clair que le niveau de
sécurité des 2 architectures n'est pas en phase et que l'interopérabilité entre
les 2 est source de faiblesses; cependant, cela reste une fonctionnalité
essentielle et requise tant que les 2 systèmes cohabiteront et que le réseau 3G
n'offrira pas une couverture suffisante.
Dans la pratique, il est donc possible pour un téléphone 3G de se connecter
à des réseaux 2G afin d'offrir une continuité sur les services minimaux, la voix
et éventuellement les données pour le GPRS. Ce cas se présente obligatoirement
lorsque l'utilisateur sort de la zone de couverture de son réseau d'origine
(Home network), c'est-à-dire qu'il est dans une situation dite de "roaming".
C'est la situation illustrée ci-dessous.
Dans ce cas où le réseau visité est différent du réseau d'origine de
l'abonné, des échanges supplémentaires sont nécessaires pour authentifier
l'utilisateur. Nous ne ferons pas la distinction entre la carte SIM et le
téléphone, car cela n'apporte pas d'information pertinente dans le cas présent.
De plus, les notations et explications seront simplifiées pour permettre au plus
grand nombre de comprendre les principes majeurs de l'attaque.
Dans le cas normal du roaming, les étapes suivantes sont réalisées:
L'utilisateur transmet son identifiant unique, sous forme temporaire (TMSI)
ou persistante (IMSI). Il indique également la liste des méchanismes de sécurité
qu'il supporte pour permettre au réseau de dialoguer avec lui.
Le réseau visité transmet cette information au réseau d'origine; celui-ci
identifie l'utilisateur et la clé associée (Ki, partagée par l'utilisateur). Il
en dérive des informations secrètes qui sont rasemblées en quintuplets
(ensembles de 5 éléments nécessaires à la connexion d'un utilisateur sur le
réseau 3G) et envoyés au réseau visité. Ce dernier va utiliser ces informations
pour authentifier l'utilisateur et l'autoriser à accéder au réseau.
Notamment, le réseau visité va:
- envoyer un nombre aléatoire RAND et un cryptogramme AUTN permettant à
l'utilisateur d'authentifier le réseau au préalable (ce qui n'est pas possible
dans le cadre du GSM par exemple)
- recevoir un cryptogramme de l'utilisateur lui permettant de l'authentifier
- établir une communication protégée en confidentialité (chiffrée) et en
intégrité (MACée), entre lui et l'utilisateur.
Dans le contexte de la 2G/GERAN, seuls des triplets sont nécessaires à la
phase d'initialisation (3 éléments au lieu de 5). Le réseau n'a pas à
s'authentifier auprès de l'utilisateur, ce qui est une première source
d'attaques. Les communications sont chiffrées mais non protégées en intégrité
(une clé en moins par rapport à la 3G); de plus les algorithmes de chiffrement
sont faibles et facilement cassables pour certains.
Il existe bien entendu des méthodes de conversion entre le mode à 5
éléments (3G) et celui à 3 éléments (2G). Cela permet une interopérabilité
3G->2G mais aussi 2G->3G.
L'attaque
Cette attaque concerne donc un utilisateur 3G dans une situation de
roaming sur un réseau 2G.
Phase 1 - identification de la victime
L'attaquant force le téléphone à se connecter à une fausse station de base;
en effet, un mobile se connecte prioritairement au signal le plus puissant. Il
l'interroge ensuite pour obtenir son IMSI et ses capacités sécuritaires
(algorithmes supportés, etc).
Phase 2 - interrogation du réseau
L'attaquant se fait ensuite passer pour la victime auprès du réseau visité,
en envoyant l'IMSI et les capacités sécuritaires récupérées précédemment auprès
de la victime. Il reçoit en retour le nombre aléatoire RAND et le cryptogramme
réseau AUTN; il se déconnecte à ce moment là puisqu'il ne connait pas les
secrets de la victime, juste ses informations publiques. Il ne peut donc pas
répondre au challenge du réseau.
Phase 3 - rejeu des données du réseau
L'attaquant force à nouveau la connexion entre la victime et sa fausse
station de base. Il reçoit bien entendu des données qu'il connaissait déjà, à
savoir l'IMSI et les capacités sécuritaires, mais cette fois-ci il y répond par
le nombre aléatoire et le cryptogramme reçus pendant la phase 2 du réseau.
Phase 4 - attaque de la connexion
A ce moment là, la victime pense communiquer avec le réseau légitime,
puisqu'ayant reçu un cryptogramme correct. L'attaquant communique alors ses
capacités sécuritaires propres; c'est là le coeur de l'attaque puisque
l'attaquant n'a toujours connaissance d'aucun secret. Il doit donc forcer la
victime à utiliser un algorithme de chiffrement faible, cassable voire même
aucun chiffrement pour pouvoir l'attaquer et récupérer les données en clair
émises par la victime. Ces algorithmes faibles ne sont justement disponibles que
dans les réseaux 2G, et ne peuvent être demandés à un utilisateur 3G que lors de
ses déplacements (cas de roaming). L'attaquant applique donc les techniques
d'attaques bien connues, selon l'algorithme consenti par la victime.
Phase 5 - man in the middle
Une fois le chiffrement cassé, l'attaquant n'a plus qu'à relayer les
données de la victime au réseau visité.
Le cas GTP
Reliquat du monde des télécommunications, la notion de liaison spécialisée
ou dédiée a été transposée aux réseaux interconnectés via des protocoles
d'encapsulation ou de tunneling (voir fiche) permettant d'émuler une liaison
dédiée au travers de réseaux hétérogènes. Au-delà de l'utilité de tels
protocoles, l'argument de la sécurité s'est bien souvent rajouté. Il existe en
effet de nombreux précédents où le protocole de tunneling propose également des
services de sécurité avancés, comme IPSec (voir fiche).
Cependant, la réciproque n'est pas toujours vraie. GPRS Tunnelling Protocol
(GTP) est défini dans le standard ETSI 3GPP TS 29.060: "3rd Generation
Partnership Project; Technical Specification Group Core Network; General Packet
Radio Service (GPRS); GPRS Tunnelling Protocol (GTP) across the Gn and Gp
Interface". Ce protocole est très utilisé, notamment pour les liaisons entre les
noeuds, les passerelles et les serveurs du réseau GPRS, pour les liaisons entre
réseaux opérateurs, pour les liaisons vers d'autres réseaux comme Internet, pour
les liaisons vers les systèmes de facturation de l'opérateur, etc...
Explicitement, ce protocole ne supporte pas de service de sécurité
particulier, propre à le sécuriser lui ou les données qu'il transporte. Il
référence pour cela la norme ETSI 3GPP TS 33.210: "3G security; Network Domain
Security (NDS); IP network layer security". Cependant, il est important de
souligner que GTP ne propose pas d'authentification entre les noeuds du réseau
(passerelles ou autres), ni de confidentialité pour les données qui transitent.
Ainsi, on peut imaginer des problèmes potentiels liés à de fausses passerelles
sur le réseau de l'opérateur, à de l'écoute de trafic sur les communications
transitant par le réseau public, etc... Quoiqu'il en soit, GTP n'est
certainement pas un argument en matière de sécurité des échanges
d'informations.
Conclusion
Les télécommunications et la 3G en particulier sont des mondes où les
standards, technologies et fonctions d'interopérabilité sont très nombreuses; il
reste très difficile d'avoir une vision claire du niveau de sécurité que l'on
peut en espérer. Ce niveau est d'autant plus faillible que les infrastructures
des opérateurs ne sont pas connues du public; impossible dans ces conditions de
connaître réellement la qualité du service que l'on reçoit. Impossible également
de ne pas faire appel à des méchanismes de sécurité de bout en bout...
|
|