Arrow Table de matières
5766401

Inconvénients du SMS-BANKING

-L'utilisation des SMS n'est cependant pas dépourvue d'inconvénients. La sécurité est le point

 -faible du SMS-BANKING. Tous les messages envoyés circulent en clair dans le réseau de  -l'opérateur de téléphonie. Ainsi, toutes les informations sniffées sont lisibles sans aucunes difficultés.

-La  taille  du  SMS  est  limitée  à  160  caractères ;  par conséquent,  le  SMS  est  abrégé  en fonction de la disponibilité de l‟espace. 

-La technologie SMS (comme les emails aussi) ne garantit pas la transmission du SMS ou sa réception ; donc certains SMS peuvent être retardés, bloqués ou perdus. 

-Les  opérateurs  de  la  téléphonie  n‟ont  pas  tous  une  couverture  idéale  du  réseau ;  par conséquent,  il  se  peut  qu‟un  client  n‟ait  pas  le  signal  s‟il  se  trouve  dans  un  endroit  non couvert par le réseau. 

-Le client qui garde les SMS reçus par sa banque dans la mémoire de son mobile ou bien qui communique son code secret risque de perdre la confidentialité de ses données.

(Source : www.developershome.com).

Le parcours du SMS:

-Le SMS (Short Message Service) permet à un utilisateur de composer un message textuel à partir de son terminal mobile et de l'envoyer à un  destinataire possédant également un téléphone mobile ou à une entité extérieure au réseau GSM appelée ESME(External Short Message Entity). Dr. Mavrakis l‟initiateur de la solution MCTEL- identifie 2 types de SMS qui peuvent être classifiés selon l‟origine du message :

-Mobile Originated (MO): Le SMS est envoyé depuis un téléphone mobile et est reçu par un téléphone mobile ou un ESME. Exemple : Un abonné de téléphonie mobile envoie un SMS à un autre abonné. Un abonné envoie un SMS à une application SMS Banking. (Demande de type Pull)

-Mobile Terminated (MT): Le SMS est envoyé depuis un téléphone mobile ou un ESME et est reçu par un téléphone mobile. Exemple : Une application SMS Banking envoie un SMS à un abonné. (Alerte de type Push) 

Dans tout ce qui suit, nous allons utiliser le terme ESME pour désigner les applications SMS telle que le „SMS Banking‟.   Dr.  Mavrakis :  Développeur  des solutions  télécoms  et  réseau  pour  les  grands  comptes  et  les  opérateurs  télécoms  comme  le  Monaco Télématique MCTEL (www.mctel.net).

Les  SMS  n‟occupent  pas  la  bande  passante  réservée  au  transport  de  la  voix  mais  ils  sont véhiculés dans les canaux de signalisation sémaphore (SS7). 

Ils  sont  ou  bien  transmis  directement  au  terminal  destinataire  du  message  (si  celui-ci  est disponible), ou bien stockés dans un serveur spécial SMSC par lequel ils transitent.

Le processus de l‟envoi du SMS:

Figure 14: Processus de l‟envoi du SM Il y a deux cas : 

-L‟émetteur et le récepteur sont abonnés au même opérateur: Le SMS venant de l‟expéditeur est sauvegardé dans le SMSC de l‟opérateur avant qu‟il ne soit transmis au destinataire. 

-L‟émetteur et le récepteur sont abonnés à deux opérateurs différents: Les opérateurs ont chacun un SMSC, le SMS est sauvegardé dans le SMSC1 qui l‟envoie au SMSC2 avant qu‟il ne soit transmis au destinataire.

Le SMSC (SMS Center) :

                              Le  centre  des  messages  courts  (SMSC)  permet  de  gérer  le  transfert  des  SMS  entre téléphones mobiles. En particulier, quand un abonné envoie un SMS vers un autre, le téléphone transmet  en  réalité  le  SMS  vers  le  SMSC.  Le  SMSC  stocke  le  message  puis  le  transmet  au destinataire lorsque celui-ci est présent sur le réseau (mobile allumé) : le SMSC fonctionne sur le mode "Store and Forward". Il existe au moins un SMSC par réseau GSM. Comme tout équipement téléinformatique, le SMSC dispose d'une partie matérielle et d'une autre logicielle ; la partie logicielle serait constituée d'un environnement (système d'exploitation), d'une  base de données spécifique et de son serveur, d'une application SMSC.

Typiquement, le SMSC offre une variété de protocoles d‟interfaces qui permettent aux entités non-mobiles (ESME) d‟envoyer des SMS aux entités mobiles. Ceux-ci incluent d‟autant plus que les protocoles SMPP et EMI (Voir les protocoles ci-après), les protocoles du courrier électronique et d'Internet tels que SMTP et http pour les interfaces E-mail et Web.  Le SMSC peut se relier aux systèmes suivants : 

-Passerelles d'accès, parmi lesquelles celles des éditeurs de services (ESME) .

-Système de facturation.

-Systèmes d'opération, d'administration et de maintenance (OAM).

(Source : www.developershome.com).

Comment développer un ESME ?:

Selon  une  étude  faite  par  Atique  Ahmed  Khan -l‟initiateur  du  projet  SCADA il  y a  3 manières de développer une application SMS (ESME) en général: 

  1. Utiliser un dispositif sans fil: Le moyen  le  plus  rentable  de  mettre  en  place  des  ESME  légers  dans  les  organisations  est d‟utiliser un équipement tel qu‟un  modem GSM qui est connecté au serveur d‟application via le port série et qui permet de transférer les données sur le réseau GSM. L‟avantage de cette solution est sa modularité : Si le ESME tombe en panne alors le système de la banque ne sera pas affecté. L‟inconvénient est que le matériel ne supporte pas un grand flux de données. 
  2. Se connecter au SMSC directement: Le moyen  le  plus  rapide  de  transférer  les  SMS  via  le  réseau  GSM  est  de  se  connecter directement au SMSC ou à la passerelle SMS(Voir les passerelles SMS ci-après). Cette méthode exige  que  l‟application  SMS  soit  intégrée  au  réseau de  l‟opérateur  téléphonique.  Le  lien  de communication entre le logiciel d‟application et le SMSC peut s‟assurer par un réseau TCP/IP ou une connexion X.25. L‟avantage est la rapidité de la transmission des SMS. L‟inconvénient est que le SMSC est ainsi exposé à toute connexion externe. 
  3. Utiliser les API: Le moyen  le  plus  répandu  pour  développer  des ESME  est  l‟implémentation  des  API (Application Programming Interface) dans le logiciel de l‟application. Une connexion Internet est établie à partir de l‟application (le serveur SMS)  qui permet de transférer les données du client à la passerelle SMS du provider qui offre le service puis au réseau GSM. L‟avantage est que les API permettent l‟envoi d‟un grand flux de SMS à la fois(Envoi en Bulk). L‟inconvénient est que les API qui offrent une bonne qualité de services sont payantes. [KHA 05] [Dev 08] [GSM 02] (Source : developershome.com).

Les Modems GSM

                                                        Un modem GSM est un équipement de communication sur le réseau GSM qui se comporte comme un modem dial-up. La différence principale entre eux est qu'un modem dial-up envoie et reçoit des données par une ligne téléphonique fixe  alors qu'un modem GSM envoie et reçoit des données par les ondes radioélectriques. Un  modem  GSM  peut  être  un  dispositif  externe  ou  une  carte  d'ordinateur  /  la  Carte PCMCIA.

Typiquement, un modem GSM externe est lié à un ordinateur par un câble série ou un lien

Bluetooth, tant dis que la carte PCMCIA est conçue à l'utilisation avec un ordinateur portable. Comme un téléphone mobile GSM, un modem GSM exige une carte SIM. Les  ordinateurs  utilisent  les  commandes  AT pour  contrôler  les  modems.  (Voir  les commandes AT ci-après) Le nombre de SMS qui peuvent être traités par un modem GSM par minute est très réduit, seulement environ de 6 à 10 SMS par minute.

Figure 15: Modem GSM 

Pour y remédier à ce problème, les concepteurs ont inventé le modem GPRS.

Les Modems GPRS

                                                            Un  modem  GPRS  (General  Packet  Radio  Service) est 

un  modem  GSM  qui  soutient supplémentairement la technologie GPRS pour la transmission de données. C'est une technologie échangée de paquet qui est une extension de GSM.

L‟avantage du GPRS sur GSM consiste en ce que GPRS a une plus haute vitesse de transmission de données. Le GPRS peut être utilisé comme le porteur de SMS. Si le SMS est utilisé sur le GPRS, une vitesse de transmission d'environ 30 SMS par minute peut être accomplie ce qui est beaucoup plus rapide que l'utilisation du modem GSM. Certains téléphones mobiles ne soutiennent pas l'envoi et la réception des SMS sur GPRS. Pour envoyer ou recevoir des MMS, un modem GPRS est typiquement nécessaire.

Comment envoyer des SMS depuis et vers un ordinateur ?

Nous  avons  vu  jusque-là  les  (3)  manières  du  développement  d‟un  ESME  en  général Proposées par Atique Ahmed Khan. Nous allons à présent nous intéresser aux outils qui permettent la mise en œuvre de tels ESME suivant la même logique de développement. 

Nous allons présenter les politiques de l‟envoi d‟un SMS depuis un ordinateur et la réception d‟un SMS sur un ordinateur selon les 3 méthodes proposées: 

  • La méthode du modem: Connecter l‟ordinateur à un modem GSM/GPRS ensuite gérer l‟envoi et la réception des SMS avec les commandes AT en utilisant l‟Hyper Terminal de Microsoft.
  • La méthode du SMSC: Connecter l‟ordinateur au SMSC ou à la passerelle SMS ensuite gérer l‟envoi et la réception des SMS avec les protocoles supportés par le SMSC ou la passerelle SMS. 

La méthode de l‟API: Connecter l‟ordinateur au provider d‟un service SMS (Ex:OSA) ensuite gérer l‟envoi et la réception des SMS avec les protocoles supportés par le provider. 

  • Le MS Hyper Terminal: Le MS  Hyper  Terminal  est  un  petit  programme  de  Microsoft  utilisé  pour  envoyer  les commandes AT aux modems GSM/GPRS. Il  suffit  de  le  lancer  (Démarrer->  Programmes->  Accessoires->  Communications->  Hyper terminal),  ensuite  choisir  les  paramètres  du  port  Com  auquel  est  branché  le  modem  et  enfin exécuter les commandes AT. Nous allons aborder chacun de ces concepts en détail :
  • Les commandes AT
  • Les passerelles SMS
  • Les protocoles de communications

Les commandes AT

Les commandes AT sont définies dans la norme GSM 07.05 ; elles ont été conçues par Hayes pour piloter les modems. AT est l‟abréviation d‟Attention. Chaque ligne d‟instruction commence par  « AT »  sous  forme  de  texte  (codes  ASCII).  Les  commandes  AT  permettent  la  gestion complète des modems GSM/GPRS et les téléphones mobiles ; à titre d‟exemple : 

  • La lecture, l'écriture et la suppression des SMS.
  • L‟envoi des SMS.
  • Contrôler la force du signal.
  • Contrôler le statut chargeant et le niveau de charge de la batterie.
  • La lecture, l'écriture et la recherche des entrées du répertoire téléphonique.

  Quelques commandes AT :

Tableau 1: Les commandes AT 

(Source : www.developershome.com).

Les passerelles SMS (SMS Gateways):

La difficulté qui se pose dans la messagerie SMS est que les SMSC développés par de différentes  sociétés  utilisent  leur  propre  protocole  de  communication  et  la  plupart  de ces protocoles sont des propriétés. Par exemple, le Nokia a un protocole SMSC appelé CIMD alors qu'un autre vendeur des SMSC, CMG, a un protocole SMSC appelé EMI. Deux SMSC ne peuvent pas être connectés s'ils ne soutiennent pas de protocole SMSC commun. Pour remédier à ce problème, une passerelle SMS est placée entre deux SMSC et agit comme un relais qui traduit un protocole SMSC à un autre.

Figure 16: La passerelle SMS reliant 2 SMSC 

(Source : www.developershome.com)

Donc, pour développer une application SMS ;envoyer et recevoir des SMS devrait se faire par  la  connexion  aux  différents  SMSC  ayant  chacun  son  propre  protocole,  ce  qui  signifie  que l‟application  doit  soutenir  des  protocoles  spécifiques.   En  conséquence,  la  complexité  de l‟application SMS et le temps de développement augmentent. Pour y remédier, l‟application SMS a seulement besoin de se connecter à une passerelle SMS en utilisant les protocoles SMPP, EMI ou HTTP. Il  en  existe  une  multitude  de  passerelles  SMS  dont  certaines  sont  propriétaires  (Alligata, Ozeki SMS, Wapme, Jataayu SMS gateway.), tandis que d'autres sont libres (Kannel, Gammu…).

Figure 17: La passerelle SMS reliant les SMSC & une application SMS (Source : www.developershome.com).

Les protocoles de communication:

 Le protocole SMPP:Le SMPP (Short Message Peer to Peer) est un protocole standard d'échange qui permet le transfert des  SMS  entre  le  SMSC  et  l‟ESME.  Il  utilise  en  général  deux  connexions  TCP/IP,  l‟une  pour l'envoi de données (Transmitter) et l'autre pour la réception (Receiver). Il existe un autre mode (Transceiver) où l'envoi et la réception de données sont faits sur la même connexion TCP/IP.

Figure 18: Le contexte du SMPP dans le réseau GSM Le SMPP permet par exemple de : 

  • Transmettre le SMS d‟un ESME vers une destination unique ou multiple via le SMSC.
  • Recevoir le SMS sur l‟ESME de la part des MS via le SMSC.
  • Avoir le statut d‟un SMS sauvegardé dans le SMSC.
  • Annuler ou remplacer un SMS sauvegardé dans le SMSC.
  • Envoyer un SMS enregistré (pour lequel un accusé de réception va être envoyé par le SMSC au MS.) 
  • Planifier la date et l‟heure de l‟envoi du SMS.

 Le protocole EMI: Le  protocole  EMI  (External  Machine  Interface)  est  une  extension  du  protocole  UCP (Universal Computer Protocol), utilisé principalement pour connecter le SMSC et le MS. Il a été développé par CMG et actuellement fait partie de LogicaCMG, le leader des marques des SMSC. Le protocole EMI fonctionne tout comme le protocole SMPP.

II.18.  La sécurité du „SMS Banking‟

                                           Suite à une étude du réseau GSM, il s‟est avéré que ce dernier présente un certain nombre de failles qui ont un impact direct sur la sécurité des applications professionnelles. Sécuriser une application telle que le SMS Banking consisterait donc à greffer une couche supplémentaire au-dessus des services offerts par la banque afin d‟assurer un échange de SMS sécurisés. Ceci nous amène à réfléchir aux mécanismes spécifiques à mettre en place aussi bien coté serveur que coté mobile pour garantir la sécurité du SMS Banking. Par la suite, nous allons voir les vulnérabilités du système SMS Banking et étudier la sécurité du réseau GSM et les mesures prises de protection au sein des organisations. 

La sécurité des SMS:

                                                 Le service SMS permet une transmission des messages depuis l'opérateur vers un mobile à 90% en cinq minutes et à 95% en trente minutes. Ces données ne tiennent pas compte des pertes éventuelles entre l'émetteur et l'opérateur. Un accusé de réception permet d'obtenir l'assurance de la bonne livraison du message mais toutefois il n‟est pas fiable. De plus ; les mobiles -comme tout matériel utilisant un logiciel- peuvent contenir des failles  de sécurité liées à des erreurs de programmation du logiciel. A titre d'exemple, le 15 janvier 2002 est publiée une alerte de sécurité concernant la gamme de mobiles 35 du constructeur Siemens, 3508i, 3518i et 3568i. L'utilisation d'un caractère particulier dans un

SMS vers un mobile de ce type provoque l'extinction du mobile lors de la lecture du message, et l'impossibilité d'effacer ce message sans le flasher. Compte tenu de la mémoire  des mobiles, quelques SMS suffisent pour saturer  l'espace  de  réception  du  mobile  qui  ne  peut,  dès  lors,  plus  recevoir  de  nouveaux  SMS. D'autres alertes similaires ont été publiées pour des marques concurrentes, telles que Nokia. Ceci nous amène à nous intéresser à la sécurité que peut offrir le réseau GSM. 

Le réseau GSM:

                                                           Le  réseau GSM (Global  System  for  Mobile  communications)  constitue  au  début  du 21ème siècle le standard de téléphonie mobile le plus utilisé en Europe. Il s'agit d'un standard de téléphonie dit « de seconde génération » (2G) car, contrairement à la première génération de téléphones portables, les communications fonctionnent selon un mode entièrement numérique. Fondé  en  1989,  l‟Institut  européen  des  normes  de  télécommunication  (ETSI)  a  été  chargé d‟élaborer la norme GSM. Le GSM 900 utilise la bande 890-915MHz pour l‟envoi des données et la bande 935-960 MHZ pour la réception des informations. Le GSM 1800 utilise la bande 1710-1785 MHz pour l‟envoi des données et la bande 1805-1880 MHz pour la réception des informations. 

L‟architecture global du réseau GSM

Le GSM est composé de divers éléments, les lignes de communication entre les éléments de base  sont  illustrées  ci-dessous.  Les  lignes  pointillées  montrent  la  connexion  interne  de communication utilisée au cours de maintenance

Figure 19 : Architecture générale de GSM

Le réseau GSM est constitué de cellules adjacentes (figure 17) au sein desquelles les ondes hertziennes sont reçues et retransmises par des BTS. Ces ondes sont des canaux porteurs de la voix ou des données ou encore d‟informations de signalisation. Pour cela, il est constitué principalement de deux parties, l‟une mobile et l‟autre fixe, communicant  par  l'intermédiaire  d'un  lien  radio,  généralement  appelé  interface  air  (ou  plus rarement interface Um)

Figure 20 : Les cellules dans le réseau GSM

La partie mobile appelée station mobile (MS) concerne : 

  • Les terminaux (appareils), identifiés par un numéro unique appelé IMEI (International Mobile Equipment Identity), qui sont des supports de carte SIM.
  • La carte  SIM  possède  un  numéro  d'identification  unique  (et  secret)  appelé  IMSI (International  Mobile  Subscriber Identity).  Elle  permet  ainsi  d'identifier  chaque utilisateur,  indépendamment  du  terminal  utilisé  lors  de  la  communication  avec  une station de base. La partie fixe est elle aussi subdivisée ainsi :
  • Le BSS  (Base  Station  Subsystem)  :  sous-système  radio  constitué  de  contrôleur  de stations (BSC) qui gère la répartition des ressources et les stations de base (BTS) qui lui  sont reliées.
  • Le NSS (Network Station Subsystem) : ensemble des connexions physiques reliant les

BSC, le OMC et le MSC (Mobile Switching Center), géré par l'opérateur téléphonique .La zone du commutateur (MSC) est généralement reliée à des bases de données assurant des fonctions complémentaires :

  • Le registre  des  abonnés  locaux  (noté  HLR)  contient  des  informations  (position géographique, informations administratives, etc.) sur les abonnés de la MSC.
  • Le registre des abonnés visiteurs (noté VLR pour Visitor Location Register) qui contient des informations sur les utilisateurs autres que les abonnés locaux. Le VLR renvoie les données vers  un  nouvel  utilisateur  à  partir  du  HLR  correspondant  à  sa  zone d'abonnement.
  • Le registre des terminaux (noté EIR pour Equipement IdentityRegister) qui répertorie les terminaux mobiles.
  • Le Centre d'authentification (noté AUC pour Authentification Center) chargé de vérifier l'identité des utilisateurs. Le SMSC permet de gérer le transfert de messages SMS (textes ou binaires) entre téléphones mobiles. Le réseau cellulaire ainsi formé est prévu pour supporter la mobilité grâce à la gestion du passage d'une cellule à une autre ainsi que le passage du réseau d'un opérateur à un autre. Le standard GPRS (General Packet Radio Service) est une évolution de la norme GSM qui permet le transfert de données par paquets. Grâce à ce mode de transfert, les transmissions de données n'utilisent le réseau que lorsque c'est nécessaire et l'utilisateur est facturé au volume échangé plutôt  qu'à  la  durée  de  Ainsi,  le  standard  GPRS  utilise  l'architecture  du réseau  GSM  pour  le  transport  de  la  voix,  et  propose  d'accéder  à  des  réseaux  de  données (notamment Internet) utilisant le protocole IP ou le protocole X.25.

Acheminement de message

                                                   Les messages sont acheminés directement sur un canal de contrôle. Initialement, le canal de  transit  des  SMS,  avait  été  conçu  pour  la  transmission  de  messages  de  maintenance  de l'opérateur vers les exploitants du réseau ; et progressivement le

SMS a été configuré pour la communication entre les abonnés. L‟acheminement entre les divers équipements du réseau est géré par le protocole MAP. L‟envoie d‟un message d'un mobile à un autre se passe en deux étapes :

  • Le message part du terminal vers le SMSC (étape qualifiée de SMS-MO).
  • Le message est ensuite envoyé du SMSC vers le mobile destinataire

Figure 21: L‟architecture du réseau GSM

Mobile Station (MS): Ce sont les équipements à partir desquels l'utilisateur lance le service sans fil. Le MS peut être un téléphone mobile, un modem GSM/GPRS, un PDAetc. Base Transceiver

Station (BTS): Ou bien « antennes relais ». Ce sont des émetteurs-récepteurs d‟ondes radio qui permettent de couvrir  un  territoire  donné.  Le  BTS  comporte  une  ou plusieurs  antennes,  obligatoirement installées en hauteur sur un support et qui communiquent avec les MS. 

Base Station Controller (BSC) : C‟est un équipement qui fournit toutes les fonctions de contrôle et de lien physique entre le BTS et MSC. 

Mobile Service Switching Center (MSC): C‟est le composant de base et le cœur du réseau GSM. Il a de multiples fonctions et manipule les  données  les  plus  importantes.  Il  agit  comme  un  standard  d'échange  qui  effectue l'enregistrement, l'authentification, la mise à jour et les transferts d'appels à d'autres abonnés. Le MSC aide dans l'exécution des actions décrites dans le tableau, communément appelés registres. 

International Switching Center (ISC):Si le signal analysé par le MSC est un SMS alors il sera stocké dans le SMSC avant d‟être transmis au destinataire. Si le signal doit être redirigé vers l‟international alors il sera routé via l‟ISC. 

Operation & Management Center (OMC):C‟est le composant responsable de la maintenance. 

La sécurité du réseau GSM:

                                                 La  sécurité  du  réseau  GSM  repose  sur  des  mécanismes  cryptographiques  non  publiés  et utilisent  d'une  part  un  code  enregistré  dans  la  carte  SIM :  le  code  IMSI (International  Mobile SubscriberIdentity); d'autre part un code unique composé de 15 chiffres qui identifie le MS : le code IMEI qui est stocké dans le EIR. (Sur la plupart des mobiles, le code IMEI peut être obtenu en entrant la séquence *#06#). Le MS fonctionne uniquement si le IMSI et le IMEI sont valides. D‟autant  plus,  une  clé  secrète Ki (Subscriber Authentication  Key)  est  attribuée  par l‟opérateur  téléphonique  utilisée  en  cryptographie  dans  toutes  les  fonctions  sécurisées,  elle  est stockée dans le ASC et elle est préinstallée dans la carte SIM par l‟opérateur. L‟authentification  de  l‟abonné  est assurée par l‟algorithme A3 qui exige que le MS et l‟opérateur ont la même clé  Ki en  calculant  un  code  aléatoire SRES (Signature Response).

Le  transfert  des  données  via  le réseau  GSM  est  sécurisé  grâce  au mécanisme de cryptage A5. Le cryptage se  fait  uniquement  entre  le  MS  et  le BTS ;  ailleurs  aucun  cryptage  n‟est valable.  A5  utilise  une  clé  symétrique Kc  (Cipher  Key)  qui  est  générée  grâce au mécanisme A8 en utilisant la clé Ki. L‟algorithme  A5  (dit  algorithme  de chiffrement  à  flot)  utilise  la  clé  Kc  et  les données  comme  paramètres  pour  générer la  donnée  cryptée  kc qui  sera  circulée dans le réseau entre le MS et le BTS. kc sera  aussi  décryptée  par  le  même

algorithme  grâce à  la  symétrie  de la clé Kc.                                                                               

Figure 22: L‟algorithme A5

(Source : www.developershome.com).

Les vulnérabilités du réseau GSM:

                                            Du point de vue de l‟algorithme A5 : Il existe (2) versions de l‟algorithme A5 : Le A5/1et A5/2. Le  A5/1  est  la  version  la  plus  puissante  de l‟algorithme,  son  utilisation  est  autorisée uniquement  dans  les  pays  d‟Europe  à   cause  de  la  restriction  des  technologies  de  cryptage, l‟algorithme fut inventé par  Biryukov, Shamir & Wagner mais ses spécifications n‟ont jamais été publiées. Le A5/2 -l‟algorithme à flot plus faible- est utilisé dans les autres pays du monde. Il a prouvé sa vulnérabilité en 1999 quand il a été craqué par le crypto logue Goldberg. Depuis ;  une  troisième  version :  le  A5/3  fut  inventée  par  Goldberg mais  son  utilisation demeure réservée. 

                                         Du point de vue du SMSC : Quand un SMS est reçu dans le SMSC, il est mis dans la file d‟attente du buffer. Le pirate peut inonder la file du buffer par des SMS non signifiants expédiés à un numéro de mobile cible. Cette inondation de SMS entraine le rejet des SMS en surplus du buffer à cause de la limitation de l‟espace de la file. Ainsi, le pirate peut récupérer les SMS rejetés car ils ne sont pas cryptés. (Au GSM, les données sont cryptées uniquement entre le MS et le BTS.) Cette attaque est appelée : DOS (Denial Of Service)  La  plupart  des  SMSC  sont  protégés  par  des  Firewalls.  Ce  fait  cause  des  retards  dans  la transmission des SMS ; donc certains opérateurs le  désactivent ce qui expose plus le SMSC face aux attaques DOS.  De plus ; La partie la plus importante du SMSC réside dans l‟OSS (Operation and Support System). Il s'agit d'un réseau de dispositifs qui permettent de gérer les fonctions de base telle que la facturation. La sécurité ici est critique car cette infrastructure est accessible via IP, donc risque d‟être piratée.  

Sécuriser le SMS Banking

                                                    Nous  avons  vu  précédemment  comment  le  réseau  GSM  peut  être  exposé  aux  attaques externes  ce  qui  n‟assure  pas  la  confidentialité  des données. 

Nous  allons  voir  à  présent  les techniques de sécurité utilisées dans les applications SMS Banking à travers des exemples. 

Failles du SMS Banking

                                                     D‟autant  plus  que les  risques  venant  du  réseau  GSM ;  le 

téléphone  mobile  du client peut être  infecté  suite  à  un  SMS  malveillant  qui contient  un  virus  (BradorTrojan,Dust  etc.) provenant du réseau interne de sa banque si celui-ci est infecté. Le  client  peut  se  voir  inondé  par  des  SMS  non  sollicités (SPAM)  ou  être  victime du«

Sniffing » ou bien aussi du « SMS Spoofing ». Le « Sniffing » est une technique qui permet une consultation aisée des données non-chiffrées et peut ainsi servir à intercepter des mots de passe qui transitent en clair via le réseau GSM. Le  « SMS  Spoofing »  est  une  technique  de  hacking  consistant  à  usurper  l‟identité  du  client afin  de  pouvoir  envoyer  des  SMS  en  se  faisant  passer  pour  le  client  dont  on  « spoofe » l‟identité. 

La politique de la sécurité du SMS Banking

  1. Dans une  étude  faite  par  Data  Network  Architecture  Group,  l‟architecture  de  la  transaction mobile se compose de 3 éléments : 
  • L‟utilisateur : C‟est le client du SMS Banking.
  • Le téléphone mobile : C‟est le dispositif qui connecte l‟utilisateur au réseau GSM. -Application du Mobile Banking.

Figure 23: L‟architecture d‟une transaction sécurisée (Source : www.developershome.com).

La sécurité de cette opération nécessite donc 3 processus indépendants : 

  1. L‟identification : Permet de connaître l'identité de l‟utilisateur par un code secret.
  2. L‟authentification : Permet de vérifier l‟identité de l‟utilisateur afin d‟autoriser l‟accès à l‟application par des méthodes de cryptage. 
  3. L‟exécution sécurisée : La  transaction  bancaire  est effectuée  au  niveau  de  l‟application Mobile Banking, le fournisseur du service est responsable que la requête demandée soit exécutée dans un environnement sécurisé en utilisant des protocoles sécurisés. 
  4. Selon Kelvin Chikomo, la solution sécurisée du SMS Banking est structurée en 3 tiers :
  • L‟application SMS Banking sur le mobile du client.
  • Le serveur SMS de la banque
  • La base de données de la banque

Figure 24: La structure 3 tiers de la solution SMS Banking

  • L‟application sur  le  mobile est  responsable  de  générer  des  SMS  sécurisés  et  de les transférer au serveur de la banque via le réseau GSM. 
  • Le serveur  SMS  de  la  banque décode  le  SMS  reçu  par  un  programme  interprétable  et vérifie la sécurité du SMS par le même programme. 
  • La base  de  données contient  tout  le  détail  des  données  bancaires  et  les  données  de sécurisation

Exemples de solutions SMS Banking sécurisées existantes

                          Nous  allons  présenter  ci-après  quelques  exemples  de  solutions  SMS  Banking  sécurisées, utilisées  par  une  multitude  de  banques  dans  le  monde.  Ensuite,  nous  allons  dresser  un  tableau comparatif afin de pouvoir analyser les méthodes de sécurisation utilisées par chaque banque. 

Exemple 1: En  2005,  la  First  National  Bank  en  Afrique  du  Sud  avait  lancé  le  service  « Mobile Banking » permettant à ses clients de gérer leur compte et d‟effectuer des virements via le SMS. La FNB utilise (2) couches de sécurités pour parvenir à une protection contre la fraude

:  

  • L‟introduction d‟un code confidentiel pour l‟identification du compte bancaire.
  • L‟introduction du code PIN pour l‟identification de la carte SIM.

Exemple 2:En 2005, la Standard Bank et Fundamo avait introduit le service SMS Banking permettant à ses  clients  de  payer  leurs  factures  et  d‟effectuer  des  transferts  de  fond  via  le  SMS.  Fundamo utilise (3) couches de sécurité: 

-L‟utilisation du téléphone mobile personnel du client pour la vérification du code IMEI. 

  • L‟introduction du code PIN pour l‟identification de la carte SIM.
  • L‟introduction d‟un message vocal pour l‟identification du client.

Les trois niveaux de sécurité fournissent un unique mécanisme de protection, le code IMEI fournit une clé de sécurité physique, le code PIN fournit une clé de sécurité de la carte SIM et la voix fournit une empreinte bio métrique très sécurisée. Personal Identification Number Exemple 3: WIZZIT Bank fut la première à offrir le « USSD-Banking » en Afrique du Sud. L‟USSD 

(Unstructured Supplementary  Service  Data)  peut  se  traduire  par  « Données  de Service Supplémentaires Peu Structurées ». C‟est une technologie de communication sur le réseau GSM utilisée pour envoyer du texte entre un téléphone mobile et une application sur le réseau.

L‟USSD est similaire au SMS sauf que les transactions du USSD s‟occurrent seulement durant une  session  à  temps  réel.    Il  n'y  a  aucune  possibilité  d'enregistrement  et  transfert  (Store  &Forward)  qui  est  typique  aux  SMS  (autrement  dit,  un SMSC  n'est  pas  présent  sur  le  circuit  de traitement).  Les  temps  de  réponse  pour  des  services basés  USSD  interactifs  sont  généralement plus rapides que ceux utilisés pour les SMS. En comparaison, On pourrait dire que l'USSD est un SMS sans mémoire, à savoir que ce sont des  paquets  de  structure  très  semblable  et  usant  le même  canal  de  signalisation  mais  que l'utilisateur qui devient indisponible après la sollicitation d'un service USSD ne le recevra jamais car le paquet non délivré n'est pas resoumis ni gardé nul part en mémoire. Notons  que  cette  technique  a  été  utilisée  par  Mobilis  comme  en  entrant  le  code  *600#, l‟utilisateur recevra sur l‟écran de son mobile en  moins de 2 secondes ; un menu en une forme de navigation contenant plusieurs services. L‟utilisateur peut entrer le (1) pour le rechargement, le (2) pour la consultation du solde… etc. L‟USSD-Banking donc ressemble presque au SMS Banking. Le client envoie son code PIN par USSD au serveur de la banque ; celui-ci l‟identifie, lui renvoie une confirmation et s‟apprête à recevoir les messages USSD. Ces messages sont transférés en texte libre (ils ne sont pas cryptés) via le réseau GSM ; ils sont donc exposés aux attaques des pirates. Exemple 4:

ABSA  Bank  utilise  la  technologie  WIG  (Wireless  Internet  Gateway)  dans  son  système  SMS Banking. Dans cet exemple, l‟application SMS Banking est installée sur la carte SIM ; pour pouvoir  naviguer  sur  l‟interface,  le  client  doit  avoir  un  téléphone  mobile  qui  supporte  la fonctionnalité SAT (SIM Application Toolkit). 

Exemple 5: (Secure SMS Banking) .Selon  Ratchinanaga, la sécurité idéale du Mobile Banking consiste à établir un protocole de connexion crypté utilisant des clés publiques et des clés de session entre le client et le serveur. Le client déclenche le service en envoyant son nom d‟utilisateur et son code Salt crypté selon la clé publique du serveur, quand celui-ci reçoit le SMS, il le décrypte en utilisant la clé privée du serveur. Cet algorithme est appelé AES (Advance Encryption Standard). Le serveur extrait le code PIN  du  client  de  la  base  de  données  et  calcule  une  clé  de  session  en  utilisant  les  fonctions  de hachage (SHA) selon le code PIN et le code Salt et le nom de l‟utilisateur. Dès que le client reçoit la réponse du serveur, une connexion sécurisée est établie. Du coup, les pirates ne peuvent pas générer  une clé de session sans avoir le code PIN ou le code Salt qui est composé de 128 bits. Par conséquent, ce protocole assure la confidentialité et l‟intégrité de la communication SMS mais son fonctionnement très long cause tant d‟inefficacité.

Figure 25: Solution “Secure SMS Banking”

Comparaison:

Ce tableau récapitule les vulnérabilités des solutions proposées. 

V : Vulnérable    , NV : Non Vulnérable 

Tableau 2 : Comparaison entre les solutions benchmarckées (Source : www.developershome.com).

Analyse du tableau:

- Les attaques DOS: Les solutions à 1,2, et 3 niveaux de sécurité sont toutes vulnérables aux attaques DOS car les  SMS  sauvegardés  dans  le  SMSC  ne  sont  pas  cryptés ;  sauf  dans  l‟USSD-Banking  où   les messages  transmis  ne  sont  pas  stockés  dans  le  SMSC.   Quant  à  la  solution  « Secure  SMS Banking » ; les SMS sont cryptés depuis le client jusqu‟au serveur de la banque, donc les SMS dans le SMSC ne sont pas en texte libre. 

L‟algorithme A5:

Dans  tous  ces  exemple  (sauf  « Secure  SMS  Banking ») ;  l‟opérateur  téléphonique  peut accéder à toutes les informations personnelles transitant entre le client et sa banque car le cryptage des  SMS  se  fait  seulement  entre  le  MS  et  le  BTS.  De plus ;  elles  sont  toutes  vulnérables  vu l‟algorithme A5. 

 Le vol du mobile:

Toutes  les  solutions  reposent  sur  l‟identification  du  code  PIN  et  le  code  IMEI ;  ainsi  le voleur du téléphone mobile peut usurper l‟identité  du client et effectuer des transactions sur son compte. (Sauf dans le cas d‟introduction de la voix) 

Suggestions:

                                                               Afin de sécuriser les transactions bancaires via SMS, les

chercheurs ont proposé chacun des suggestions visant à améliorer le service proposé ; nous les avons résumés comme suit :Le niveau de cryptage au réseau GSM doit être renforcé

(L‟algorithme A5).   Utiliser un algorithme personnalisé pour crypter le contenu des SMS dans le SMSC.  Ne pas négliger l‟utilité des Firewalls.  Installer des antivirus dans les téléphones mobiles.  Introduire des mots de passe de sécurité dans les téléphones mobiles afin de lutter contre le « SMS Spoofing ».   Utiliser le protocole SSL pour réduire les menaces venant d‟Internet (dans les applications SMS basées sur Internet).

Sensibiliser les utilisateurs du service SMS Banking par la banque: 

  • Le client doit consulter le manuel d‟utilisation du SMS Banking fourni par sa banque, cela va l‟empêcher d‟effectuer de fausses transactions.
  • Ne pas oublier de vérifier l‟origine du SMS et s‟assurer qu‟il provient de sa banque.
  • Ne pas  oublier  de  supprimer  les  SMS  reçus  ou  envoyés  du  téléphone  mobile  car  ils peuvent contenir le code PIN. 
  • A chaque transaction, ne pas oublier de noter son numéro comme référence, ceci peut constituer une preuve.

-Dans  le  cas  du  vol  ou  la  perte  de  votre  téléphone  mobile,  informer  immédiatement  la banque afin de bloquer le service SMS Banking.

Partager ce travail sur :