Vous êtes sur la page 1sur 10

Scurit Mobile 2G, 3G et 4G:

Concepts, Principes et Architectures


EFORT
http://www.efort.com
Ce tutoriel prsente la scurit dans les rseaux mobiles 2G (scurit dans les domaines
circuit et paquet), 3G (scurit dans les domaines circuit et paquet) et 4G (Scurit
uniquement dans le domaine paquet). Trois aspects de la scurit sont traits :
lauthentification, la confidentialit et la protection de lintgrit de la signalisation.
L'authentification consiste vrifier l'identit d'un usager. La confidentialit consiste rendre
l'information inintelligible d'autres personnes que les seuls acteurs de la transaction, en la
chiffrant. Protger l'intgrit des donnes de signalisation consiste dterminer si les
donnes de signalisation changes n'ont pas t altres (de manire fortuite ou
intentionnelle).
Le premier chapitre traite de la scurit 2G. Le deuxime chapitre prsente la scurit 3G.
Le troisime chapitre introduit la scurit dans le futur rseau mobile appel EPS (Evolved
Packet System) ou 4G.

1 Scurit 2G
1.1

Cls et algorithmes pour la scurit 2G

Lorsqu un abonn souscrit un abonnement mobile auprs d un oprateur, il reoit un


identifiant unique appel IMSI (International Mobile Subscriber Identity). Ce numro d IMSI
est stock sur la carte SIM. Un tlphone mobile ne peut tre utilis que si une carte SIM
valide a t insre dans l quipement mobile.
Une cl Ki est attribue lusager, lors de labonnement, avec lIMSI. (Figure 1) Elle est
stocke dans la carte SIM de labonn et dans lAUC (Authentication Center qui fait
gnralement partie du HLR) au niveau du rseau. Afin dviter toute possibilit de lecture
de la cl Ki, celle-ci nest jamais transmise, ni sur linterface radio, ni sur le rseau.

GSM SIM
Ki = 14324567
Abonn 1 : Ki = 14324567

HLR
(AuC)

Abonn 2 : Ki = 32324567
Abonn 3 : Ki = 65324598

GSM SIM
Ki = 32324567

GSM SIM
Ki = 65324598

Longueur Ki = 128 bits

Figure 1 : Cl dauthentification Ki

Copyright EFORT 2010

Le centre dauthentification AuC dispose de lalgorithme dauthentification A3, de lalgorithme


de gnration de la cl de chiffrement A8 et des cls Ki des clients du rseau GSM.
Le BTS dispose de lalgorithme de chiffrement A5 pour le chiffrement des donnes usager et
des donnes de signalisation.
La carte SIM du mobile dispose de lalgorithme dauthentification A3, de lalgorithme de
gnration des cls de chiffrements A8, de la cl dauthentification individuelle de lutilisateur
Ki.
L algorithme de chiffrement A5 est contenu dans l quipement mobile.
Les algorithmes A3 et A8 sont quant eux les mmes pour tous les clients dun mme
rseau GSM.

1.2

Authentification et Chiffrement 2G

La scurit GSM est adresse sur deux plans (Figure 2) : authentification et chiffrement.
Lauthentification empche laccs frauduleux par une station mobile clone. Le chiffrement
empche lcoute par un usager non autoris.
Aprs que l'usager se soit identifi au rseau laide de son IMSI ou de son TMSI
(Temporary IMSI), il doit tre authentifi. Pour ce faire, une cl d'authentification individuelle
Ki et un algorithme d'authentification A3 sont utiliss. LAuC (fonction du HLR physique) et la
carte SIM contiennent la mme cl Ki et l algorithme A3. Pour initier le processus
dauthentification, lAuC gnre un nombre alatoire, RAND, dune longueur de 128 bits. Ce
nombre RAND ainsi que la cl Ki de lusager mobile servent de paramtres dentre
lalgorithme dauthentification A3. Le rsultat est appel SRES. Il sagit du rsultat
dauthentification attendu. Les mme paramtres RAND et Ki sont passs en paramtres de
lalgorithme A8 qui produit un rsultat Kc. Cette cl Kc sert de cl de chiffrement pour le trafic
de lusager et le trafic de signalisation entre le mobile et le BTS.
Le HLR retourne au MSC/VLR plusieurs triplets (RAND, SRES, Kc).
Le MSC/VLR utilise le premier triplet et demande au mobile de sauthentifier partir de la
valeur RAND.
Le mobile ralise la mme procdure que lAuC et produit un rsultat dauthentification RES
et une cl de chiffrement Kc partir de la valeur RAND reue du rseau, de la cl Ki
prsente sur la SIM et des algorithmes A3 et A8 aussi prsents sur la SIM.
Le mobile soumet le rsultat RES au rseau (i.e., MSC/VLR) qui le compare au SRES
soumis pas le HLR. Sils sont gaux, lauthentification du mobile a russi.

MS

AuC

Longueur RAND = 128 bits

RAND
Ki

Ki
A8

A3
SRES
Longueur SRES =
32 bits

Reject

A3

Longueur Ki = 128 bits

A8

No

SRES

Equal?
Yes
Accept

Kc

Longueur Kc =
64 bits

Authentification
Chiffrement
Kc

Longueur Kc =
64 bits

Frame Number

Data A5

Ciphering
Data

Deciphering

Copyright EFORT 2010

Ciphered
information

A5
Deciphering
Ciphering

Systme
Visit

Kc
Data
Data

Figure 2 : Scurit 2G
Un algorithme de chiffrement A5 prsent sur la station mobile et la BTS est alors utilis pour
chiffrer / dchiffrer les donnes de signalisation et de trafic en utilisant Kc. Cet algorithme A5
est normalis et est le mme pour tous les oprateurs mobiles.
La carte SIM contient les informations Ki, A3, A8. L'AuC/HLR contient les informations A3,
A8, IMSI/Ki. La station mobile et la BTS contiennent l'algorithme A5.
Cest COMP128-2, lalgorithme de base utilis par les oprateurs GSM pour la procdure
dauthentification et dchange de cls (Figure 3).
COMP-128 gnre le SRES en utilisant lalgorithme A3 et Kc en utilisant lalgorithme A8 en
une seule tape. Il prend en entre les paramtres Ki et RAND et produit un rsultat sur 128
bits. Les 32 premiers bits de ce rsultat forment le SRES et les 54 derniers bits de ce rsultat
de ce rsultat forment la cl secrte Kc. Les derniers 10 bits du Kc sont positionns 0 pour
bourrage.

Ki (128 bits), RAND (128 bits)

Rsultat : 128 bits


COMP128-2
SRES (32 bits)
Kc (54 bits)
Figure 3 : Algorithmes A3/A8
L authentification 2G circuit est ralise lorsque :
Le mobile se rattache au rseau
Le mobile tablit un appel sortant
Le mobile reoit un appel entrant
Le mobile envoie un SMS
Le mobile reoit un SMS
Le mobile met jour sa localisation (Location Area)
L authentification est ralise entre le mobile et le VLR.
Le chiffrement a lieu entre le mobile et la BTS.
Lauthentification 2G paquet est similaire lauthentification 2G circuit. Elle induit des
interactions entre le SGSN et le HLR.
Il existe des diffrences notables entre le chiffrement GSM et le chiffrement GPRS.
En GSM, le chiffrement est ralis entre le mobile et la BTS et utilise trois version de
l algorithmes A5 (A5-0, A5-1 ou A5-2), en fonction du niveau de chiffrement permis. En
GPRS, le chiffrement a lieu entre le mobile et le SGSN et utilise une nouvelle version de
l algorithme A5 conue spcialement pour la transmission de paquets (A5-3).
L authentification 2G paquet est ralise lorsque :
Le mobile se rattache au rseau
Le mobile tablit un contexte PDP
Le mobile envoie un SMS
Le mobile reoit un SMS
Le mobile met jour sa localisation (Routing Area)
L authentification est ralise entre le mobile et le SGSN.
Le chiffrement a lieu entre le mobile et le SGSN.

Copyright EFORT 2010

1.3

Limites de la scurit 2G

L'authentification 2G est base sur un protocole de type challenge/response ainsi que


sur des algorithmes de cryptographie cl secrte. La 2G ne fournit pas
d authentification mutuelle. Seule une authentification du client est ralise. La carte SIM
du mobile nest pas en mesure de vrifier lidentit et la validit du rseau auquel le
mobile est rattach. Ceci laisse en thorie la porte ouverte des attaques de l'homme du
milieu. Cependant, de part le cot lev des stations de base GSM (Base Transceiver
Station, BTS) ou de solutions commerciales ddies a l'interception, l'attaque n'est
possible qu'avec des moyens financiers assez consquents.
GSM ne fournit pas de protection de la signalisation (mis part le chiffrement GSM qui
protge les donnes de lusager ou la signalisation sur linterface radio). Cela signifie que
les messages de signalisation peuvent tre altrs par les quipements radios. Cest ce
que la protection de lintgrit (integrity protection) cherche prvenir.
Le chiffrement (2G circuit) s arrte la BTS, donc vulnrabilit de l interface BTS-BSC.

2 Scurit 3G
Le protocole AKA (Authentication and Key Agreement) a t conu afin de scuriser l accs
aux rseaux mobiles, plus prcisment les rseaux UMTS/3G et LTE/EPS. Il est aussi utilis
pour l authentification du client IMS (cf tutoriel EFORT sur lauthentification IMS).
La partie authentication du protocole AKA permet de vrifier l identit de l usager alors
que la partie Key Agreement permet de gnrer des cls qui sont ensuite utilises pour le
chiffrement du trafic de l usager dans le rseau d accs et aussi pour la protection de
l intgrit des messages de signalisation.
LAKA 3G se diffrencie de son homologue en 2G appel A3 par deux points importants:
AKA permet une authentification du rseau auprs du mobile grce un jeton
dauthentification appel AUTN soumis par le rseau la carte USIM qui le valide.
AKA permet la protection de l intgrit de la signalisation.

2.1

Authentification 3G

Lauthentification 3G (AKA, Authentication and Key Agreement) est base sur une cl
partage qui est uniquement prsente dans le HLR et la carte USIM de l UE. Comme le
HLR ne communique jamais directement avec l UE, le MSC Server ralise la procdure
d authentification.
1 5 vecteurs d authentification (AV, Authentication Vector) sont tlchargs par le MSC
Server partir du HLR travers l interface D lorsque le MSC Server reoit de l UE le
message Attach Request (Figure 4).
Les paramtres prsents dans l AV sont :
RAND le challenge qui sert en tant quun des paramtres dentre pour gnrer les 4
autres paramtres de l AV (128 bits)
XRES Le rsultat attendu, utilis par le rseau pour l authentification de l USIM de
l UE (32-128 bits)
AUTN Le jeton d authentification utilis par l USIM pour l authentification rseau (128
bits)
CK La cl de chiffrement (128 bits). Cette cl permet le chiffrement du trafic de lusager
et du trafic de signalisation entre lUE et le RNC.
IK La cl d intgrit (128 bits). Cette cl permet la protection de lintgrit de la
signalisation entre lUE et le RNC.
Copyright EFORT 2010

MSC Server
VLR

UE
1. MM Attach Request

HLR/AuC

2. Send Authentication Info (IMSI)


3. Send Authentication Info Ack (Vector)

Authentication Vector
(RAND, XRES, CK, IK, AUTN)
4. MM Authentication and ciphering request (RAND, AUTN)

Vrifie AUTN
Calcule RES
5. MM Authentication and ciphering response (RES)

Calcule CK et IK

Compare RES et XRES

Figure 4 : Scurit 3G
Le centre dauthentification gnre un vecteur d authentification partir de la cl Ki quil
partage avec la carte USIM du terminal ainsi que deux autres paramtres qui sont : un
numro de squence et un nombre pseudo alatoire.
Le vecteur dauthentification gnr comporte cinq parties : un rsultat qui sera demand
dans la procdure challenge/response avec le terminal (XRES), un nombre (AUTN) qui
permet l authentification du rseau auprs de l UE, une cl de session (CK) qui servira pour
le chiffrement et une cl de contrle dintgrit qui servira la protection de lintgrit des
messages de signalisation.
Le VLR/SGSN la rception du quintupl (RAND, AUTN, XRES, CK, IK), transmet le
challenge RAND et le nombre AUTN quil a reu du HLR lUE et attend une rponse RES
ce dernier. La procdure challenge/response peut tre reprsente comme suit :
Le mobile est authentifi si le rsultat RES transmis est identique XRES reu du centre
dauthentification. Le nombre AUTN permet au module USIM de vrifier si le centre
dauthentification est authentique et quil ne sagit pas dune attaque de type man in the
middle par le rseau d accs.

Copyright EFORT 2010

AUTN : Authentication Token


AMF : Authentication Management Field
MAC : Message Authentication Code
CK : Ciphering Key
IK : Integrity Key
AK : Anonymity Key
RAND : Random Challenge
XRES : Expected Response
SQN : Sequence Number

Figure 5 : Gnration du vecteur d authentification du ct HLR


K : Cl d authentification, sur 128 bits
RAND: nombre alatoire, sur 128 bits
XRES : Rsultat d authentification attendu partir du RAND, sur 32 bits (peut avoir une
taille variable de 4 16 octets).
CK : Cl de chiffrement sur 128 bits
IK : Cl d intgrit sur 128 bits
AUTN : Jeton d authentification rseau sur 128 bits
AMF : Authentication Management Field sur 16 bits
SQN: Numro de squence sur 48 bits
AK : Anonymity Key sur 48 bits.
Lorsque le HLR reoit du VLR ou du SGSN une demande de vecteurs d authentification, il
commence par gnrer une valeur RAND et une valeur SQN.
Les valeurs RAND, SQN, Ki et AMF (Authentication Management Field) servent d entres
5 fonctions (f1 f5) qui gnrent le quintupl (Figure 5).
Le premier composant est le message authentication code (MAC). Il est obtenu par : MAC =
f1(K, SQN, RAND, AMF); f1 est une fonction d authentification, et AMF fournit une nouvelle
cl d authentification stocke dans l USIM.
Le second composant est le rsultat attendu appel Expected RESult XRES obtenu par :
f2(K,RAND)); f2 est une fonction d authentification
Les trois composants suivants sont la cipher key (CK), l integrity key (IK), et l anonymity key
(AK). Ils sont obtenus par : CK = f3(K, RAND), IK = f4(K, RAND), and AK = f5(K, RAND); f3,
f4 et f5 sont des fonctions de gnration de cls spcifiques.
Le dernier composant est l authentication token AUTN. Il est calcul en utilisant
l expression: AUTN= <SQNAK, AMF, MAC>
Le choix des algorithmes f1, f2, f3, f4 et f5 est spcifique l oprateur. Cependant un choix
d algorithme appel MILENAGE a t propos par 3GPP (TS 35.206).

2.2

Confidentialit 3G

Une fois que l usager et le rseau se soient authentifis mutuellement, il peuvent initier une
communication scurise. Nous avons tudi que la cl CK tait partage entre l UE et le
rseau aprs que l authentification ait russi. Il s agit d une cl de longueur 128 bits.
Avant que le chiffrement ne commence les parties en communication doivent aussi ngocier
un algorithme de chiffrement. La 3G n a dfini qu un seul algorithme, appel f8.

Copyright EFORT 2010

Le chiffrement et le dchiffrement prennent place dans le terminal et dans le RNC (Radio


Network Controller) du rseau 3G, ce qui signifie que la cl CK doit tre transfre du VLR
au RNC. Ceci est ralis par la commande du protocole RANAP (Radio Access Network
Application Part) appele security mode command . Aprs que le RNC ait obtenu le CK, il
peut activer le chiffrement en mettant un message RRC (Radio Resource Control) l UE
appel security mode command .
La figure 6 illustre l utilisation de l algorithme f8 afin de chiffrer le plaintext en appliquant un
keystream en utilisant une opration XOR.
Les paramtres en entre de f8 sont la cl de chiffrement (CK), l entre dpendante du
temps (COUNT-C) sur 32 bits, l identit du bearer radio (BEARER) sur 5 bits, la direction de
la transmission (DIRECTION) et la longueur du bloc de donnes chiffrer (LENGTH).
La direction a deux valeurs possibles. 0 = uplinks (UE RNC) et 1= downlink (RNC UE)
La cl CK est renouvele chaque processus d authentification. COUNT-C, BEARER et
DIRECTION peuvent tre considrs comme des paramtres d initialisation puisqu ils sont
renouvels pour chaque Keystream block.
La longueur des donnes de l usager (plaintext block) est comprise entre 1 et 20000 bits.
LENGTH est donc un paramtre de longueur 16 bits afin d indiquer la longueur des donnes
de l usager. Pour un bearer donn et une direction donne, le plaintext block transmis dans
une trame de la couche physique peut varier (couche RLC). Cette donne est d ailleurs la
partie donne utile de la PDU RLC.
La longueur du keystream block est gale la valeur du paramtre LENGTH.
Sur la base de ces paramtres, l algorithme f8 gnre un rsultat appel keystream block
(KEYSTREAM), qui est utilis afin de chiffrer l entre appele plaintext block (PLAINTEXT)
et ainsi produire le rsultat ciphertext block (CIPHERTEXT).

Emetteur : UE ou RNC

Rcepteur : UE ou RNC

Figure 6 : Chiffrement 3G

2.3

Protection de lIntgrit 3G

L algorithme f9 gnre un code d authentification de message (MAC, Message


Authentication Code) de longueur fixe partir d un message de longueur variable sous le
contrle de la cl secrte IK et un ensemble de valeurs d initialisation. La cl IK a une
longueur de 128 bits.
L metteur et le rcepteur gnre le code MAC en utilisant la mme fonction. L metteur
envoie son rsultat MAC au rcepteur, qui compare la valeur du code MAC reu avec la
valeur attendue qui est celle calcule par le rcepteur.
Le rcepteur accepte le code MAC si la valeur calcule et celle reue sont gales.
La figure ci-dessus illustre comment f9 est utilis pour driver un MAC-I (MAC-Integrity of
signaling data) sur un message de signalisation.

Copyright EFORT 2010

Les paramtres en entre de l algorithme d intgrit sont la cl d intgrit (IK), une entre
dpendant du temps (COUNT-I), une valeur alatoire gnre par le rseau (FRESH), le bit
de direction (DIRECTION) et le message de signalisation (MESSAGE).
COUNT-I a une longueur de 32 bits ainsi que FRESH. DIRECTION a une longueur de 1 bit
La taille maximum d un message de signalisation n est pas spcifie mais en thorie la
limite est la mme que celle des messages de donne de l usager, savoir 20000 bits.
Sur la base de ces paramtres d entre, l usager utilise la fonction f9 pour calculer MAC-I
pour l intgrit des donnes (Figure 7). MAC-I est ensuite ajout au message lors de la
transmission sur le canal radio. Le rcepteur calcule la valeur de MAC attendue (XMAC-I)
sur le message reu de la mme faon que l metteur a calcul MAC-I sur le message
envoy.
MAC-I a une longueur de 32 bits.

MESSAGE
MAC-I
Emetteur : UE ou RNC

Rcepteur : UE ou RNC

MAC-I : Message Authentication Code Integrity


IK : Integrity Key
Figure 7 : Protection de lintgrit 3G

L authentification 3G circuit est ralise lorsque :


Le mobile se rattache au rseau
Le mobile met jour sa localisation (Location Area)
Le mobile tablit un appel tlphonie ou visiophonie sortant
Le mobile reoit un appel tlphonie ou visiophonie entrant
Le mobile envoie un SMS
Le mobile reoit un SMS
L authentification est ralise entre le mobile et le VLR.
Le chiffrement a lieu entre le mobile et le RNC.
La protection de l intgrit de la signalisation a lieu entre le mobile et le RNC.
L authentification 3G paquet est ralise lorsque :
Le mobile se rattache au rseau
Le mobile tablit un contexte PDP
Le mobile envoie un SMS
Le mobile reoit un SMS
Le mobile met jour sa localisation (Routing Area)
L authentification est ralise entre le mobile et le SGSN.
Le chiffrement a lieu entre le mobile et le RNC.
La protection de l intgrit de la signalisation a lieu entre le mobile et le RNC.

Copyright EFORT 2010

3 Scurit 4G
La LTE (Long Term Evolution of 3G) est un projet men par l'organisme de standardisation
3GPP visant rdiger les normes techniques de la future quatrime gnration en
tlphonie mobile. Elle permet le transfert de donnes trs haut dbit. Tous les services
incluant les services de tlphonie sont offert par un domaine paquet. Le domaine circuit est
mul par lIMS. Pour les oprateurs, la LTE implique de modifier le coeur du rseau et les
metteurs radio. En terme de vocabulaire, le futur rseau mobile sappelle EPS (Evolved
Packet System). Il est constitu dun nouveau rseau daccs appel LTE (Long Term
Evolution) et dun nouveau rseau coeur appel ePC (Evolved Packet Core). Le mobile doit
dabord se rattacher et sauthentifier au rseau EPS avant de pouvoir transrer ou recevoir
des paquets IP. Llment qui permet lauthentification est appel MME (Mobility
Management Entity) (Cif tutoriel EFORT sur le thme LTE+SAE = EPS). Le HLR/AuC est
caractris par un HSS dans larchitecture EPS.
Des vecteurs d authentification (AV, Authentication Vector) sont tlchargs par le MME
partir du HSS (Figure 8) travers l interface S6 (base sur DIAMETER) lorsque le MME
reoit de l UE les messages Attach Request ou Service Request.
Les paramtres prsents dans le vecteur dauthentification (quadrupl) sont :
RAND le challenge (non alatoire gnr par le HSS) qui sert en tant quun des
paramtres dentre pour gnrer les autres paramtres de l AV.
XRES Le rsultat attendu, utilis par le rseau pour l authentification de l USIM de
l UE.
AUTN Le jeton d authentification utilis par l USIM pour l authentification rseau.
KASME La cl permettant de driver les cls de chiffrement et d intgrit.

UE

HSS

eNodeB

MME

1. EMM Attach Request

2. Authentication-Information-Request (IMSI)
3. Authentication-Information-Answer (Vector)

Authentication Vector
(RAND, XRES, AUTN, KASME)
4. EMM Authentication and ciphering request (RAND, AUTN, KeNB )

UE reoit RAND, AUTN


UE gnre KASME
UE gnre KNASenc
UE gnre KNASint
UE gnre KeNB
UE gnre KUPenc
UE gnre KRRCenc
UE gnre KRRCint

eNodeB reoit KeNB


eNodB gnre KUPenc
eNodeB nre KRRCenc
eNodeB gnre KRRCint

MME reoit le quadrupl


MME gnre KNASenc
MME gnre KNASint
MME gnre KeNB

5. EMM Authentication and ciphering response (RES)

Figure 8 : Scurit EPS


Copyright EFORT 2010

KNASenc est calcul par le terminal et le MME partir de KASME. Il est utilis pour
protection du trafic NAS avec un algorithme de chiffrement particulier.
KNASint est calcul par le terminal et le MME partir de KASME. Il est utilis pour
protection du trafic NAS avec un algorithme d intgrit particulier.
KUPenc est calcul par le terminal et l eNodeB partir de KeNB. Il est utilis pour
protection du trafic usager avec un algorithme de chiffrement particulier.
KRRCenc est calcul par le terminal et l eNodeB partir de KeNB. Il est utilis pour
protection du trafic de signalisation RRC avec un algorithme de chiffrement particulier.
KRRCint est calcul par le terminal et l eNodeB partir de KeNB. Il est utilis pour
protection du trafic de signalisation RRC avec un algorithme d intgrit particulier.

la
la
la
la
la

L authentification EPS est ralise lorsque :


Le mobile se rattache au rseau
Le mobile tablit un default bearer
Le mobile tablit un dedicated bearer
Le mobile met jour sa localisation (Tracking Area)
L authentification est ralise entre le mobile et le MME.
Le chiffrement a lieu deux niveaux :
entre le mobile et l eNodeB (trafic usager et trafic de signalisation)
entre le mobile et le MME (trafic de signalisation)
La protection de l intgrit de la signalisation a lieu :
entre le mobile et l eNode B pour la signalisation RRC
entre le mobile et le MME pour la signalisation NAS (Non-Access Stratum)
La formation Scurit Mobile pour les services Mobiles, Wireless et Internet dEFORT
dcrit les procdures dauthentification 2G, 3G et 4G ainsi que lusage de ces techniques
pour lauthentification de lusager lors de son accs aux services IP depuis son mobile (e.g.,
UMA, WLAN, IMS, etc).

Copyright EFORT 2010

Vous aimerez peut-être aussi