La sécurité des réseaux mobiles – Part 5

Articles précédents :

La sécurité sur les réseaux de mobiles – Part 1

La sécurité sur les réseaux de mobiles – Part 2

La sécurité sur les réseaux de mobiles – Part 3

La sécurité des réseaux mobiles – Part 4

II-3) La sécurité sur le réseau 5G

Le réseau 5G exploite les protocoles de sécurité pour l’authentification et la mise en sécurité des données comme en 4G.

Toutefois, l’abandon du protocole DIAMETER au profit du protocole http2 nécessite l’ajout de nouvelles entités afin de garantir une sécurité entre le réseau home et les réseaux visités avec l’architecture SBA (se référer à l’article :

http://blogs.univ-poitiers.fr/f-launay/2021/02/26/architecture-sba-du-reseau-5g-microservices-et-soa/).

On distingue différents niveaux de sécurité :

  • sur le réseau d’accès radio, le réseau 5G va étendre la sécurité sur l’accès radioélectrique WiFi ;
  • sur le domaine réseau, le vecteur d’authentification calculé par l’entité UDM de l’opérateur Home (HE AV : Home Environment Authentication Vector) est modifié par la fonction AUSF afin d’être transmis au réseau visité ;
  • sur l’interconnexion du réseau visité et du réseau nominal, un proxy de sécurité (SEPP) est déployer pour remplacer l’agent DIAMETER DEA permettant la mise en œuvre d’un tunnel sécurisé (certificat) entre le réseau Home et le réseau Visité.

L’authentification exploite soit l’algorithme 5G-AKA soit l’algorithme EAP-AKA’.

II-3-1) Authentification 5G-AKA

La procédure d’authentification AKA repose dans un premier temps sur l’identification du demandeur.
Dans le cas du réseau 4G, le mobile transmettait son identifiant IMSI.

Pour le réseau 5G, l’identité de la carte SIM transmise est soit le SUPI (Subscriber Permanent Identifier) soit le SUCI (Subscription Concealed Identifier).

L’authentification est basée sur le protocole AKA avec une clé symétrique Ki de 128 bits ou 256 bits. La clé Ki est sauvegardée dans la fonction ARPF (Authentication credential Repository and Processing Function) de l’entité UDM.

II-3-1-1) Procédure d’identification : amélioration de la sécurité en masquant l’identité IMSI

L’identité SUPI est similaire à l’identifiant IMSI : elle est composée d’un code pays MCC (Mobile Country Code), d’un code opérateur MNC (Mobile Network Code) et d’un identifiant unique par opérateur MSIN (Mobile Subscriber Identification Number).

L’identité SUCI est une version chiffrée du champ MSIN du SUPI. L’identité chiffrée est calculée par une méthode de chiffrement asymétrique hybride appelée ECIES (Elliptic Curve Integrated Encryption Scheme). Ce chiffrement est réalisé par la carte UICC.

La fonction SIDF (Subscription Identifier De-concealing Function) implémentée au niveau de l’UDM à pour rôle de déchiffrer le SUCI à partir d’une clé publique. Une fois le SUCI déchiffrée, la fonction SIDF transmet l’identité SUPI à l’UDM afin de procéder à l’identification de la carte UICC.

La méthode ECIES s’appuie sur les travaux de Diffie-Hellman. Cette méthode permet de déchiffrer un message à partir de l’échange d’une clé publique (cf. figure 13).

La carte UICC crée une clé privée en générant un nombre aléatoire dA. A partir de cette clé privée dA, la carte UICC calcule une clé publique QA. La clé publique QA est calculée à partir de la clé privée et d’un gradient G correspond à la courbe elliptique (cf. paramètre secp256k1). La clé publique QA est transmise à la fonction SIDF.

La fonction SIDF calcule un nombre aléatoire r qui constitue sa clé privée. A partir de sa clé privée, la fonction SIDF calcule :

  • sa clé publique R (par la même méthode que la carte UICC c’est-à-dire par le gradient G)
  • une clé symétrique S. Cette clé est calculée à partir de son nombre aléatoire r et la clé publique QA.

La fonction SIDF transmet sa clé publique, ce qui permet à la carte UICC de dériver la clé symétrique S. Le site [10] présente l’algorithme sous Python.

Figure 17 : Le calcul de la clé de chiffrement pour le SUCI

A chaque demande d’enregistrement, l’identité privée et cachée SUCI est calculée à partir de l’identifiant SUPI mais l’algorithme de chiffrement garanti une valeur de SUCI différente à chaque fois. La méthode ECIES permet à la fois la confidentialité du demandeur mais en plus la non traçabilité. Toutefois, il a été montré qu’un attaquant pouvant identifier un téléphone et le tracer [11].

Lorsque la fonction SIDF a déchiffré le SUCI, l’entité UDM récupère l’identifiant SUPI. L’UDM démarre ainsi sa procédure d’authentification : l’UDM fournit un aléa RAND, le sceau d’authentification du réseau home AUTN, le résultat d’authentification attendue au niveau du mobile et une clé de dérivation KSEAF.

II-3-1-2) Procédure d’authentification : amélioration de la sécurité en authentifiant le client sur le réseau nominal

La procédure d’authentification en 5G est similaire à la procédure 4G, mais quelques différences permettent d’améliorer l’authentification dans le cœur de réseau.

En effet, l’authentification est contrôlée dans le réseau nominal, et le réseau nominal utilise l’identité du serveur visité SNid (Serving Network Identity) pour dériver une clé d’ancrage KSEAF. Ainsi, la clé d’ancrage est spécifique au réseau visité. La clé KSEAF joue le rôle de la clé KASME pour la 4G.

Le réseau de mobiles 5G a introduit une fonction d’ancrage de sécurité SEAF (Security Anchor Function) au niveau du réseau visité (couplée à la fonction AMF). La fonction SEAF peut rejeter l’authentification du mobile mais il fait confiance au réseau nominal du mobile pour accepter l’authentification.

L’authentificateur du réseau nominal est la fonction AUSF (Authentication Server Function). La fonction AUSF s’appuie sur le serveur d’authentification UDM (Unified Data Management) qui fournit le vecteur d’authentification dans l’environnement nominal HE AV (Home Environment Authentication Vector). Le vecteur d’authentification dans l’environnement nominal contient :

  • l’aléa RAND ;
  • le sceau d’authentification du réseau AUTN ;
  • le résultat d’authentification RES ;
  • la clé KAUSF.

Le fonction AUSF transmet à la fonction AMF (du réseau nominal ou du réseau visité) le vecteur d’authentification AV qui contient l’aléa RAND, le sceau d’authentification AUTN, le résultat d’authentification hashé XRES et la clé d’ancage KSEAF.  Cette différence par rapport à la méthode 4G-AKA constitue la méthode d’authentification 5G-AKA ou EAP-AKA’.

A l’instar des réseaux 3G/4G, le jeton d’authentification AUTN contient le numéro de séquence SQN et la clé d’anonymat AK.

La fonction AMF du réseau visité réalise une deuxième authentification. La clé d’ancrage KSEAF est également utilisée par la fonction AMF lorsque le mobile s’accroche à un point d’accès WiFi. Grâce à la clé d’ancrage, il n’est plus nécessaire de réaliser une nouvelle procédure d’authentification lorsque le mobile, préalablement attaché sur le réseau 5G via l’accès 3GPP bascule sur un accès WiFi.

Ainsi, en 5G la procédure d’authentification 5G-AKA ou EAP-AKA’ peuvent être utilisées pour authentifier le mobile sur un réseau d’accès WiFi.

Figure 18 : La procédure d’authentification 5G [12]

 

A partir de la clé privée Ki et de l’aléa RAND, la fonction ARPF calcule :

  • soit la clé de chiffrement CK’ et la clé d’intégrité IK’ si l’algorithme EAP-AKA’ est utilisée ;
  • soit la clé KAUSF si l’algorithme 5G-AKA est utilisée.

Pour l’algorithme 5G-AKA, la clé KAUSF est transmise à la fonction AUSF.

Pour l’algorithme EAP-AKA’, les clés CK’ et IK’ sont transmises à la fonction AUSF. A partir de ces deux clés, la fonction AUSF dérive la clé KAUSF.

A partir de la clé KAUSF, la fonction AUSF dérive la clé KSEAF.

Au cours de l’étape 6, la fonction AUSF effectue un hachage de la valeur d’authentification attendue. Le calcul est basé sur l’algorithme HMAC-SHA-256 et utilise l’identifiant SNid du réseau visité. Le mobile ayant connaissance de l’identifiant SNid pourra calculer la valeur hashée.

Une fois authentifié sur le réseau visité, la fonction AMF informe la fonction AUSF de la réussite de l’authentification. C’est à l’issu de cette première authentification que la clé KSEAF sera transmise à la fonction SEAF. La fonction SEAF est réalisée par l’AMF.

L’architecture protocolaire de la station de base 5G est similaire à celle de la 4G, avec l’ajout d’une fonction SDAP pour la gestion de la QoS du trafic IP.

Ainsi, le chiffrement et l’intégrité du lien radioélectrique sont gérés par le protocole PDCP.

A l’issu de la phase d’authentification, à partir de la clé privée Ki et de l’aléa RAND :

  • la fonction ARPF de l’entité UDM génère un aléa RAND, le résultat attendu XRES et le sceau d’authentification pour former le vecteur d’authentification HE AV
  • la fonction ARPF de l’entité UDM calcule les clés CK’ et IK’ ou la clé KAUSF à partir de la clé Ki et de l’aléa RAND;
  • l’entité AUSF dérive la clé KSEAF. La clé KSEAF ne sera transmis uniquement à la fonction SEAF de l’AMF après que l’authentification ait abouti sur le réseau visité ;
  • la fonction SEAF dérive la clé KAMF;
  • à partir de la clé KSEAF, la fonction AMF dérive les clés KNASenc, KNASInt, KgNB et la clé KN3IWF;
  • la clé KgNB est transmise à l’entité gNB qui dérive les clés Kupint, Kupenc, kRRCint, KRRCenc.

Les clés de chiffrements utilisées sont :

  • KNASenc pour le chiffrement des messages NAS (UE <-> MME) ;
  • Kupenc pour le chiffrement des messages de données sur l’interface radioélectrique ;
  • KRRCenc pour le chiffrement des messages de contrôle (signalisation) sur l’interface radioélectriques.

Les clés d’intégrités utilisées sont :

  • KNASint pour la signature MAC des messages NAS (UE <-> MME) ;
  • KRRCint pour la signature des messages de contrôle (signalisation) sur l’interface radioélectriques ;
  • Optionnellement (non mis en œuvre en 4G et optionnel en 5G), Kupint pour la signature des messages de données.

Figure 19 : La procédure d’authentification sur le réseau 5G

 

 

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *