ACBM - Le Virus Informatique qui vous défend !Retour à l'accueilLes brèvesLe magasinContacts Ecrire dans le virusListe de diffusionPetites annoncesLes concours



2008-12-06 00:00

Tromper les téléphones GSM avec des cartes SIM fantômes


Deux cartes SIM pour un même téléphone portable, ce n'est pas franchement une nouveauté. Mais quand le basculement de l'une à l'autre se fait en cours de session GSM, ou que l'une d'elles est indépendante de tout opérateur, librement reprogrammable, voire même « virtuelle », alors des choses tout à fait étonnantes deviennent possibles : espionnage de mobiles discrètement « piégés », échange de SMS cryptés, voire même attaques malicieuses contre des opérateurs ou des abonnés... par-delà les frontières !

Il suffit de disposer d'un mobile professionnel et d'un autre personnel, de pratiquer le « plastic roaming » (utiliser une carte SIM d'un opérateur d'un pays visité) quand on va à l'étranger, ou plus généralement d'être client de différents opérateurs, pour posséder plusieurs cartes SIM en cours de validité. Plutôt que de s'encombrer d'autant de téléphones, on permute alors les cartes dans un seul et même mobile (non simlocké). La manœuvre devient cependant fastidieuse si elle est quotidienne, et carrément impossible si on souhaite être joignable sur plusieurs numéros à la fois. Fort rares en Europe (TwinSim), les appareils capables de gérer deux cartes SIM simultanément actives, autrement dit deux « lignes », pour employer le vocabulaire de la téléphonie fixe, sont bien plus populaires en Asie. Beaucoup plus courants sont les adaptateurs permettant de loger, dans un même mobile, deux cartes SIM et une petite logique de commutation. En pratique, on bascule d'une carte à l'autre en éteignant le téléphone et en le rallumant immédiatement. Si à l'inverse on le remet en route après un certain temps d'arrêt, alors la carte par défaut se réactive.

schema double SIM

Si les deux paragraphes suivants sont trop techniques pour vous, n'hésitez pas à les sauter. Le schéma de ce genre d'accessoire made in China est fort simple, et souvent facile à relever : une simple bascule D (ici la moitié d'un circuit logique CMOS 4013) est associée à un condensateur et à une diode de façon à ce que son alimentation (Vcc) persiste au moins une dizaine de secondes après la coupure du mobile. L'entrée D (Data) de la bascule étant reliée à sa sortie /Q (Q barre) et son entrée d'horloge C (Clock) rejoignant sans temporisation l'alimentation provenant du mobile, on obtient bien un effet de flip-flop si les alternances marche-arrêt sont suffisamment rapides. Du coup, les sorties de la bascule peuvent commander des interrupteurs analogiques (ici un CMOS 4066), chargés de relier l'un ou l'autre des deux connecteurs de cartes SIM à une « fausse carte » en époxy, bien évidemment insérée dans le mobile à la place de sa SIM d'origine.
A l'occasion de ce petit travail de reverse engineering, il apparaît que seuls les contacts ISO 6 (Vpp) et ISO 7 (I/O) font réellement l'objet d'une commutation : les contacts ISO 1 (Vcc), 2 (RST), 3 (CLK), et 5 (GND) sont carrément câblés en parallèle. Bien qu'il s'apprête à reprendre du service dans le cadre du Single Wire Protocol d'applications baptisées NFC (Near Field Communications), dans lesquelles la carte SIM fait office de tag RFID, le contact ISO 6 était jusqu'à présent inutilisé sur les cartes SIM et les téléphones portables. Seule la ligne d'entrée-sortie de données est donc finalement commutée.
Autant dire que les deux SIM sont alimentées, initialisées, et cadencées par l'horloge de façon totalement simultanée. Mais alors, toutes deux sont en mesure de recevoir, à tout moment, des commandes et d'y répondre... Cela donne bien évidemment des idées ! N'espérons tout de même pas trop basculer, en cours de session GSM, du répertoire de numéros d'une carte à celui de l'autre. En effet, la plupart des mobiles créent une image de la carte SIM dans leur mémoire RAM lors de leur processus de mise en route, afin de bénéficier ensuite d'un accès bien plus rapide. Cependant, si des modifications sont faites en cours de session, elles sont aussitôt répercutées dans la « vraie » carte SIM, afin de ne pas risquer de les perdre en cas de coupure brutale d'alimentation ou de « plantage » du téléphone. Beaucoup plus motivant serait le cas de l'algorithme d'authentification de la carte, que celle-ci exécute toujours en interne, à partir d'une clef secrète illisible de l'extérieur...

Une commutation « dynamique »
Imaginons un instant que les commandes émanant du téléphone transitent par un micro-contrôleur avant d'être acheminées vers telle ou telle carte SIM : dès qu'il s'aperçoit que le mobile (et donc le réseau) demande une authentification (ou l'IMSI), il peut rediriger la commande sur la carte SIM de son choix et rapatrier sa réponse vers le téléphone, au prix d'un léger ralentissement du dialogue. Le résultat de cette pirouette est que l'on peut faire fonctionner le mobile avec certains fichiers d'une carte SIM donnée, tout en l'authentifiant au moyen d'une autre. Encore plus fort, l'une des deux cartes SIM peut très bien être virtuelle, entendons par là émulée logiciellement dans le micro-contrôleur lui-même ! Cela ouvre la porte à une infinité d'applications fort intéressantes, pouvant aller du cryptage des SMS jusqu'à l'espionnage de mobiles discrètement « piégés ».
Des prodiges de miniaturisation permettent désormais de loger de telles installations dans les téléphones les plus récents, où aucun millimètre cube n'est gaspillé. Certaines solutions sont supportées par une plate-forme de développement permettant à chacun de programmer ses propres applications, tandis que d'autres sont commercialisées avec des fonctionnalités clef en main plus ou moins puissantes. Appelons un chat un chat : les opérateurs de téléphonie mobile et leurs partenaires n'ont donc plus le monopole des applications (SIM Toolkit, Java, etc.) chargées dans les cartes SIM ! C'est une véritable révolution, au profit de la communauté des développeurs indépendants et des amateurs avertis, car la programmation par le SIM Toolkit est bien plus abordable (et surtout plus portable) que celle liée aux systèmes d'exploitation des mobiles, qui sont désormais légion : Symbian, Windows Mobile, BlackBerry, PalmOne, Brewplain, Apple, ou même Linux mobile.
Le pionnier (Tchèque) de cette technologie s'appelle Bladox, avec une approche qui n'est pas sans rappeler... le concept de la BasicCard : des outils de développement gratuits, pas de royalties sur les applications, mais un firmware vendu tout implanté dans une partie matérielle basée ici sur un ATMega 128 d'Atmel.
photo Turbo Lite

Le modèle d'entrée de gamme (Turbo Lite 2) est construit très exactement selon le principe mécanique des doubleurs de SIM, à ceci près qu'il ne comporte qu'un seul connecteur de carte (accueillant celle originellement utilisée dans le mobile subissant l'adaptation). Quant à la version ultra-miniaturisée (Turbo SIM), elle s'insère discrètement en sandwich avec la carte SIM d'origine, dans laquelle il faut effectuer une petite découpe pour s'accommoder de la surépaisseur correspondant au minuscule micro-contrôleur équipant le dispositif.

photo Turbo SIM

Dans un cas comme dans l'autre, la seconde SIM est donc bel et bien virtuelle, mais manifeste clairement sa présence en insérant son propre menu STK (SIM Toolkit) dans celui du téléphone. Logiciellement parlant, la couche STK sert surtout d'interface entre le processeur du mobile et l'ATMega, ce dernier pouvant être programmé en C grâce à des API gérant toutes les subtilités du SIM Application Toolkit (normalisées, rappelons le, selon la spécification GSM 11.14).
On sait bien que la programmation d'applications STK permet d'accéder au clavier et à l'écran du mobile (autrement dit d'assurer l'interface homme-machine), mais également, selon le niveau de perfectionnement du téléphone (qu'il indique à la SIM dans son Terminal Profile), d'agir sur l'émission ou la réception de SMS, d'USSD, et d'appels vocaux ou data over voice en DTMF, voire de prendre connaissance d'informations de localisation rudimentaires.

Des applications plus ou moins avouables
Officiellement, les applications visées sont la sécurité (émission automatique de SMS en cas de vol d'un deux-roues ou d'une voiture), la télégestion d'équipements techniques grâce à des entrées-sorties opto-isolées, etc. Une version artisanale, en somme, du M2M (Machine to Machine), une technique très à la mode grâce à laquelle des modems GSM peuvent faire dialoguer, sans intervention humaine, des appareillages géographiquement dispersés. Mais des utilisations moins orthodoxes ont été rapportées, et même offertes en open source, à commencer par le contournement du simlockage de certains terminaux subventionnés (iPhone, par exemple).
L'accès direct aux SMS émis, reçus, ou stockés dans la carte SIM offre pour sa part de belles opportunités de cryptage selon des algorithmes librement choisis (et non pas imposés par tel ou tel prestataire, digne de confiance ou non), sans oublier la possibilité de les sauvegarder, par milliers et non plus par dizaines, dans une carte mémoire (DataFlash) plutôt que dans la SIM.
Par conséquent, il est clair que disposer tout à la fois de fonctions de communication (plus ou moins furtives) et de localisation (commande Provide Local Information) ouvre la porte à de très indiscrètes applications de « pistage » de mobiles, éventuellement à l'insu de leur utilisateur. Cela en contournant élégamment la nécessité d'implanter des exécutables dans le téléphone lui-même (visiter, par exemple, Neocall.it pour découvrir jusqu'où peut aller cette approche concurrente, car c'est édifiant : localisation à la demande, signalement par SMS des appels et messages émis ou reçus, avertissement en cas de changement de carte SIM, etc.).
Une plus noble tâche serait la programmation de la SIM virtuelle pour qu'elle assure, en coopération avec un module GPS et divers capteurs, la fonction eCall d'appel automatique des secours qui devrait bientôt être installée dans toutes les voitures neuves : de quoi équiper aussi les véhicules existants !
Et que dire des innombrables possibilités de reroutage des communications voix, en vue de bénéficier de tarifs compétitifs ? Call-back, détournement vers la plate-forme d'un opérateur alternatif, automatisation de l'usage d'une carte à code, etc. C'est déjà une réalité commerciale bien assise (voir United-Mobile ou WizzSaverSIM) ! Bref, pour reprendre la formule consacrée, les applications ne sont guère limitées que par l'imagination du développeur, à condition de ne pas s'attaquer aux fonctionnalités multimédia, que ne supporte pas (encore ?) le SIM Toolkit.

« Emprunter » des IMSI ?
Un exemple « dérangeant » comme nous les aimons ? Supposons que l'on programme une petite application qui laisse la carte tenter de s'inscrire sur un réseau, mais en s'identifiant par un IMSI choisi au hasard (en générant des chiffres aléatoires dans le champ de 8 octets qui constitue le numéro de série). Rappelons que l'IMSI (International Mobile Subscriber Identity, l'identifiant international d'un client, attribué d'une façon sécuritaire par son opérateur), est une donnée strictement personnelle ! De deux choses l'une : ou bien le réseau rejette cet IMSI parce qu'il n'est pas valide (unknown in HLR), ou alors il initie une procédure d'authentification car il a été reconnu par l'opérateur dont le code MCC-MNC y figure. Dans cette seconde hypothèse, on ne répondra rien, comme si le contact avait soudain été perdu avec le réseau, mais on enregistrera l'IMSI dans un fichier propriétaire de la carte, où l'on viendra ultérieurement récupérer les résultats de cette moisson. Cela ne fait-il pas un peu penser (mais à l'envers !) à ce que l'on appelle, dans certains milieux extrêmement discrets, de la « récolte » d'IMSI (IMSI harvesting ou IMSI catching) ?
La beauté (mais aussi le danger) de la chose, c'est que depuis un réseau GSM quelconque, on pourrait « attaquer » ainsi un opérateur de n'importe quel autre pays, en simulant tout bonnement une situation de roaming ! Pis encore, grâce à la fonction Refresh du SIM Application Toolkit, une tâche de ce genre pourrait être totalement automatisée : le mobile serait réinitialisé à chaud après chaque tentative, afin qu'il vienne lire, dans la carte, chaque nouvel IMSI à essayer. Cela pendant des heures, des jours, ou des semaines, sans toutefois pousser la plaisanterie jusqu'à une attaque de type « DoS » (Denial of Service) ! Ce genre d'activité, éminemment suspecte, peut en effet très bien entraîner, en cas d'abus caractérisé, l'inscription en liste noire de l'IMEI du mobile. La question doit donc être posée : serait-ce illégal, y aurait-il véritablement usurpation dans la mesure où l'on ne répondrait pas à la demande d'authentification ? Le débat est ouvert...
Par contre, appeler le 112 en laissant la carte décliner un IMSI emprunté à un abonné existant en serait bien évidemment une, surtout si l'appel aboutissait, car à défaut de présentation d'un numéro de téléphone, l'appelant peut être identifié (voire rappelé par IMSI paging !) à partir de ce groupe de chiffres en principe unique et... confidentiel. Toute tentative d'authentification avec une signature SRES factice serait également fort critiquable, car susceptible de causer rapidement des ennuis au titulaire légitime de l'IMSI servant involontairement de cobaye, où qu'il se trouve dans le monde (mise en opposition de sa propre carte SIM en cas d'insistance ?). Même si sa réalisation pourrait probablement se contenter d'une BasicCard et de quelques lignes de code source ZCBasic, ce scénario est donc à considérer comme une simple idée en l'air, que nous n'encourageons nullement.

La précision suisse
Tout comme dans le cas des dispositifs comparables que l'on pourrait songer à réaliser soi-même (pourquoi pas autour d'un micro-contrôleur PIC ?), la limite sur laquelle on risque de buter est donc plutôt mécanique que logicielle. Il est déjà loin, en effet, le temps des bons vieux Nokia à batteries BMS-2, que l'on pouvait si facilement écarter du corps du téléphone au moyen d'une pièce intercalaire ménageant un confortable surcroît de volume interne.
Comme souvent en matière de miniaturisation, c'est de Suisse que nous viennent les solutions les plus avancées, susceptibles de convenir à la plupart des mobiles les plus compacts. Solutions plutôt hardies, nécessitant le découpage de deux cartes SIM puis leur juxtaposition sur un adaptateur ultra-fin avant de glisser le tout, avec un doigté d'horloger, dans le connecteur du téléphone : eh oui, plus de la moitié de la surface d'une carte SIM ordinaire est encore superflue ! Également basée sur un circuit imprimé souple (en Kapton) muni de minuscules contacts dorés et d'un microscopique micro-contrôleur, une seconde approche empile (mais sans les découper) les deux SIM l'une contre l'autre, juste séparées par le circuit imprimé double face qui, replié sur lui-même, se prolonge par une « fausse carte » se logeant tout juste dans le connecteur.
Aucun outil de développement n'est prévu pour cette gamme de produits clef en main, uniquement destinés à des applications avouables. Simore Black, Silver, et Gold sont essentiellement des commutateurs de cartes, équipés (selon le modèle) d'applications SIM Toolkit se substituant à celles des opérateurs ayant émis les cartes : envoi et réception de SMS cryptés, menus en plusieurs langues, permutation périodique des SIM sans intervention de l'utilisateur ni arrêt du téléphone (par redémarrage à chaud), fonctionnalités IP, capacité de stockage massivement accrue, etc. Mais qu'à cela ne tienne : utilisons une BasicCard, programmée selon notre bon plaisir, à la place de l'une des deux SIM, et il deviendra possible d'aller nettement plus loin...

Le SIM à double IMSI
Courante en Asie, où la concurrence ne fonctionne pas du tout comme dans notre vieille Europe, la pratique du partage d'une même carte SIM par différents opérateurs n'est aucunement proscrite, car tout à la fois génératrice d'économies et de flexibilité. Imaginons un instant des cartes SIM plus ou moins perfectionnées, mais en tout cas banalisées, en vente un peu partout, dans lesquelles des opérateurs quelconques pourraient charger chacun leur couple IMSI-Ki et/ou leurs propres applications Java. Leur répertoire de numéros et l'espace de stockage des SMS serait alors commun, et géré exclusivement par l'utilisateur. Quitter un opérateur au profit d'un autre deviendrait une opération étonnamment simple et rapide, pouvant même se faire de chez soi, en ligne, à condition de disposer d'un PC équipé d'un lecteur PC-SC. Science-fiction ? Pas du tout : cela fait déjà de nombreuses années que l'industriel Taïwanais Solution Inside nous a fait tester des échantillons de ses cartes Multinumber SIM, capables de supporter jusqu'à quatre abonnements distincts. A l'époque, il travaillait même sur un logiciel permettant d'extraire la clef secrète Ki de cartes SIM existantes, dans le but avoué de les cloner dans ses SIM multiples. Faut-il préciser que cela n'a pas fait que des heureux, tout en stimulant sans doute l'adoption d'algorithmes A3/A8 plus robustes ? Passer d'une ligne à l'autre peut se faire soit par un menu SIM Toolkit (tout comme dans le cas des commutateurs intelligents dont nous venons de parler), soit par le biais de codes PIN différents. Astucieux, non ? Tellement astucieux, en vérité, que cela nous a inspiré l'idée d'une application BasicCard allant encore bien plus loin dans cette voie ! Le saviez-vous ? Un code PIN n'est pas obligatoirement composé de seulement quatre chiffres, mais peut en comporter jusqu'à huit. De là à utiliser ce canal pour communiquer, par le clavier, avec une application résidant dans la carte SIM, il n'y a qu'un pas... que nous allons nous empresser de franchir.
Destiné à être téléchargé (après compilation au moyen du kit disponible gratuitement) dans n'importe quel modèle de ZC4.x ou mieux ZC5.x, le programme NETSIM.BAS en fait une véritable carte SIM, susceptible d'être acceptée (après découpage si nécessaire) par quasiment n'importe quel téléphone GSM ancien ou récent. Spécialement conçue pour ne pas pouvoir s'inscrire (ni donc s'authentifier) sur le réseau d'un quelconque opérateur, elle donne cependant accès aux menus normaux du téléphone, et notamment aux fonctions de netmonitoring si on a eu la bonne idée de les activer. Tout comme la carte SIM de secours que nous avions développée pour améliorer les chances de succès des appels au 112, elle ne contient que le strict minimum de fichiers nécessaires au démarrage d'une session GSM : pas de répertoire de numéros ni d'espace de stockage de SMS, mais tout cela pourrait être ajouté dans le code source en cas de besoin.
Cette fois-ci, plutôt que de simuler un IMSI choisi au sein d'une liste limitative d'opérateurs, on peut taper le code réseau (MCC+MNC, autrement dit 3 + 2 = 5 chiffres) en guise de code PIN ! Quelques exemples : 20801 pour Orange France, 20810 pour SFR, 20820 pour Bouygues, ou bien 00101 pour émuler une carte de test, utilisable même sur un mobile simlocké. En cas de voyage à l'étranger, on se procurera avantageusement (sur Internet) les codes des opérateurs du pays visité, et on pourra ainsi se livrer à une auscultation en règle de leurs réseaux si on possède un mobile capable de ce genre d'indiscrétion (par exemple, un vieux modèle Nokia ou Alcatel).
Au fait, comment le téléphone sait-il qu'il doit demander un code PIN ? Par quelques bits convenablement positionnés dans les en-têtes des principaux fichiers et dans le « status », mais surtout par le fait que la carte répond SW1SW2 = 9804 dès la première tentative de lecture d'un fichier autre que ICCID, LP, SST, PHASE, ou OLA. Dès qu'un code PIN (d'ailleurs quelconque !) est présenté, la variable PIN passe à 1 et SW1SW2 reprend donc sa valeur par défaut 9000, sauf tentative de lecture de plus d'octets que n'en contient le fichier, auquel cas SW1SW2 vaudra, conformément à la spécification, 6700. La portion de code source (commande Read Binary) permettant d'obtenir ce résultat tient en peu de lignes de ZCBasic :

Command &HA0 &HB0 RBIN(Lc=0,S$)
IF Le>Size THEN SW1SW2=&H6700:Exit
IF T$=CHR$(&H2F)+CHR$(&HE2) THEN S$=MID$(ICCID$,P1P2+1,Le)
IF T$=CHR$(&H6F)+CHR$(&H07) THEN S$=MID$(IMSI$,P1P2+1,Le)
IF T$=CHR$(&H6F)+CHR$(&H38) THEN S$=MID$(SST$,P1P2+1,Le)
IF T$=CHR$(&H6F)+CHR$(&H78) THEN S$=MID$(CLA$,P1P2+1,Le)
IF T$=CHR$(&H6F)+CHR$(&HAD) THEN S$=MID$(AD$,P1P2+1,Le)
IF T$=CHR$(&H6F)+CHR$(&HAE) THEN S$=MID$(PHA$,P1P2+1,Le)
IF T$=CHR$(&H6F)+CHR$(&H31) THEN S$=MID$(HPLMN$,P1P2+1,Le)
IF T$=CHR$(&H6F)+CHR$(&H7E) THEN S$=MID$(LOCI$,P1P2+1,Le)
IF T$=CHR$(&H6F)+CHR$(&H7B) THEN S$=MID$(FPLMN$,P1P2+1,Le)
IF T$=CHR$(&H6F)+CHR$(&H30) THEN S$=MID$(PLMN$,P1P2+1,Le)
IF T$=CHR$(&H6F)+CHR$(&H05) THEN S$=MID$(LP$,P1P2+1,Le)
IF T$=CHR$(&H6F)+CHR$(&H20) THEN S$=MID$(KC$,P1P2+1,Le)
IF T$=CHR$(&H6F)+CHR$(&H74) THEN S$=MID$(BCCH$,P1P2+1,Le)
IF T$=CHR$(&H2F)+CHR$(&HE6) THEN S$=MID$(OLA$,P1P2+1,Le)
IF T$=CHR$(&H6F)+CHR$(&H07) And PIN=0 Then SW1SW2=&H9804
IF T$=CHR$(&H6F)+CHR$(&HAD) And PIN=0 Then SW1SW2=&H9804
IF T$=CHR$(&H6F)+CHR$(&H78) And PIN=0 Then SW1SW2=&H9804
IF T$=CHR$(&H6F)+CHR$(&H31) And PIN=0 Then SW1SW2=&H9804
IF T$=CHR$(&H6F)+CHR$(&H7E) And PIN=0 Then SW1SW2=&H9804
IF T$=CHR$(&H6F)+CHR$(&H7B) And PIN=0 Then SW1SW2=&H9804
IF T$=CHR$(&H6F)+CHR$(&H30) And PIN=0 Then SW1SW2=&H9804
IF T$=CHR$(&H6F)+CHR$(&H20) And PIN=0 Then SW1SW2=&H9804
IF T$=CHR$(&H6F)+CHR$(&H74) And PIN=0 Then SW1SW2=&H9804
End Command

Parmi la liste des fichiers que reconnaît cette application, revenons sur celui que nous avons baptisé OLA$. Situé à l'adresse 2FE6 du répertoire racine (3F00), il contient une valeur permettant à la carte de ne pas être rejetée par les vieux mobiles simlockés sur la formule Ola de France Telecom. Bien entendu, un autre contenu pourrait y être enregistré pour adapter la carte à d'autres situations, puisque tous les fichiers sont à lecture et écriture libres.
Voyons maintenant comment sont exploités les cinq chiffres du code PIN, que le mobile retransmet à la carte au moyen d'une commande Verify CHV passant ces données dans la variable de chaîne S$ :

Command &HA0 &H20 VCHV(S$,Disable Le)
PIN=1
N=16*(ASC(Left$(S$,1))-48)+9
Mid$(IMSI$,2,1)=Chr$(N)
N=16*(ASC(Mid$(S$,3,1))-48)+ASC(Mid$(S$,2,1))-48
Mid$(IMSI$,3,1)=Chr$(N)
N=16*(ASC(Mid$(S$,5,1))-48)+ASC(Mid$(S$,4,1))-48
Mid$(IMSI$,4,1)=Chr$(N)
N=16*(ASC(Mid$(S$,2,1))-48)+ASC(Left$(S$,1))-48
Mid$(LOCI$,5,1)=Chr$(N)
N=(ASC(Mid$(S$,3,1))-48)+240
Mid$(LOCI$,6,1)=Chr$(N)
N=16*(ASC(Mid$(S$,5,1))-48)+ASC(Mid$(S$,4,1))-48
Mid$(LOCI$,7,1)=Chr$(N)
Right$(LOCI$,1)=Chr$(&H01)
End Command

Après conversion selon le codage ASCII, les trois chiffres du code pays (MCC) et les deux chiffres du code réseau (MNC) viennent surcharger les anciennes valeurs dans le numéro IMSI, naturellement factice, de la carte. Même punition pour le fichier LOCI, afin de faire croire au téléphone que c'était bien sur ce réseau qu'il avait tenté de s'inscrire lors de la précédente session. Un stratagème tellement efficace, du reste, que certains mobiles afficheront (à tort) le nom du réseau, comme s'ils étaient dûment inscrits dessus !
On nous permettra d'insister, cette petite manipulation permet potentiellement, même à l'étranger, de pré-sélectionner l'opérateur à qui on va demander (uniquement en cas d'urgence, bien sûr), d'acheminer un éventuel appel au 112, plutôt que de laisser le téléphone choisir selon ses propres critères, parfois discutables. Dans certains pays, dont la France ne fait heureusement plus partie depuis quelques mois (suite à notre action de lobbying auprès de la Commission Européenne), cela peut faire la différence entre la vie et la mort sur le bord de la route...

Les cartes SIM « navettes »
A côté des SIM de secours que les opérateurs offrent parfois aux abonnés de leurs formules de haut de gamme, et qui sont totalement fonctionnelles, certains copieurs de cartes SIM sont livrés avec des cartes dites de sauvegarde. Rendues volontairement impropres à toute inscription sur un réseau (quand ce ne sont pas de simples cartes à mémoire I2C !), elles ne peuvent, en principe, servir qu'à recopier le répertoire de numéros et les SMS, en vue de la restauration de ces données personnelles dans une nouvelle carte SIM, notamment en cas de perte ou de détérioration de l'original.
Les outils destinés à la police scientifique, pour leur part (voir notamment 3gforensics), offrent souvent la possibilité de créer un double plus exhaustif de toute carte SIM saisie lors d'une enquête, afin de pouvoir manipuler dessus sans risquer d'altérer l'intégrité de cette pièce à conviction (lire notre dossier). Ce principe de cartes SIM faisant la navette entre différents mobiles, ou entre un mobile et un PC, peut être étendu au transfert de toutes sortes de données recueillies par une application ad-hoc embarquée dans la carte. Des cartes « de transfert » sont ainsi mises à la disposition des techniciens SAV par certains fabricants de mobiles, permettant de restaurer rapidement différents paramétrages après remplacement de parties importantes de l'appareil. D'autres placent le téléphone en mode « test » dès sa mise sous tension, sans avoir à entrer un quelconque code plus ou moins secret. Toutes ces applications sont parfaitement à la portée d'une double SIM virtuelle, mais aussi de la BasicCard dès lors que l'on sait la « déguiser » en carte SIM reconnue par un mobile GSM : il suffit d'ajouter des lignes de code source, et d'ailleurs en général assez peu, à notre noyau NETSIM.BAS. Ne passez surtout pas à côté de cette expérience, elle est tout simplement fascinante...
Patrick Gueulle

Tous les ouvrages de l'auteur





Vous aimez cette page ? Partagez-en le lien sur les réseaux sociaux !

Facebook
Twitter
Google+
LinkedIn


Retour aux archives
Retour à l'accueil
[RSS]
Legal & cookies