Problèmes des systèmes de contrôle d'accès autonomes - Là où ils n'étaient pas attendus

Bonne journée à tous. Je commencerai par le contexte de ce qui m'a poussé à mener cette recherche, mais je vous préviens d'abord : toutes les actions pratiques ont été menées avec le consentement des structures dirigeantes. Toute tentative d'utiliser ce matériel pour pénétrer dans une zone réglementée sans avoir le droit d'y accéder constitue une infraction pénale.

Tout a commencé lorsque, en nettoyant la table, j'ai accidentellement placé la clé d'entrée RFID sur le lecteur NFC ACR122 - imaginez ma surprise lorsque Windows a émis le son de détection d'un nouvel appareil et que la LED est devenue verte. Jusqu'à présent, je pensais que ces touches fonctionnaient exclusivement dans le standard Proximité.
Problèmes des systèmes de contrôle d'accès autonomes - Là où ils n'étaient pas attendus
Mais puisque le lecteur l'a vu, cela signifie que la clé répond à l'un des protocoles en plus de la norme ISO 14443 (alias Near Field Communication, 13,56 MHz). Le ménage a été immédiatement oublié, car j'ai vu une opportunité de me débarrasser complètement du jeu de clés et de conserver la clé de l'entrée dans mon téléphone (l'appartement est depuis longtemps équipé d'une serrure électronique). Après avoir commencé mes études, j'ai découvert que caché sous le plastique se trouve un tag NFC Mifare 1k - le même modèle que dans les badges d'entreprise, les cartes de transport, etc. Les tentatives pour accéder au contenu des secteurs n'ont pas abouti au début, et lorsque la clé a finalement été déchiffrée, il s'est avéré que seul le 3ème secteur était utilisé et que l'UID de la puce elle-même y était dupliqué. Cela semblait trop simple, et il s'est avéré que c'était le cas, et il n'y aurait pas d'article si tout se passait exactement comme prévu. J'ai donc reçu les abats de la clé, et il n'y a aucun problème si vous devez copier la clé sur une autre du même genre. Mais la tâche consistait à transférer la clé sur un appareil mobile, ce que j'ai fait. C'est ici que la fête a commencé - nous avons un téléphone - iPhone SE avec établi iOS 13.4.5 version bêta 17F5044d et quelques composants personnalisés pour le fonctionnement gratuit de NFC - je ne m'attarderai pas sur cela en détail pour des raisons objectives. Si vous le souhaitez, tout ce qui est dit ci-dessous s'applique également au système Android, mais avec quelques simplifications.

Liste des tâches à résoudre :

  • Accédez au contenu de la clé.
  • Implémentez la possibilité d'émuler une clé par l'appareil.

Si avec le premier tout était relativement simple, alors avec le second il y avait des problèmes. La première version de l'émulateur ne fonctionnait pas. Le problème a été découvert assez rapidement : sur les appareils mobiles (iOS ou Android) en mode émulation, l'UID est dynamique et, quel que soit ce qui est câblé dans l'image, il flotte. La deuxième version (exécutée avec les droits de superutilisateur) fixait de manière rigide le numéro de série sur celui sélectionné - la porte s'ouvrait. Cependant, je voulais tout faire parfaitement et j'ai fini par créer une version complète de l'émulateur capable d'ouvrir les dumps Mifare et de les émuler. Cédant à une impulsion soudaine, j'ai changé les clés de secteur en clés arbitraires et j'ai essayé d'ouvrir la porte. Et elle… OUVERT! Au bout d'un moment, j'ai réalisé qu'ils ouvraient tout portes équipées de cette serrure, même celles pour lesquelles la clé d'origine ne correspondait pas. À cet égard, j'ai créé une nouvelle liste de tâches à accomplir :

  • Découvrez quel type de contrôleur est responsable du travail avec les clés
  • Comprendre s'il existe une connexion réseau et une base commune
  • Découvrez pourquoi une clé pratiquement illisible devient universelle

Après avoir discuté avec un ingénieur de la société de gestion, j'ai appris que de simples contrôleurs Iron Logic z5r s'utilisent sans connexion à un réseau externe.

Lecteur CP-Z2 MF et contrôleur IronLogic z5r
On m'a donné un ensemble de matériel pour les expériences :

Problèmes des systèmes de contrôle d'accès autonomes - Là où ils n'étaient pas attendus

Comme cela ressort clairement, le système est complètement autonome et extrêmement primitif. Au début, je pensais que le contrôleur était en mode apprentissage - cela signifie qu'il lit la clé, la stocke en mémoire et ouvre la porte - ce mode est utilisé lorsqu'il est nécessaire d'enregistrer toutes les clés, par exemple lors du remplacement de la enfermer dans un immeuble. Mais cette théorie n'a pas été confirmée - ce mode est désactivé dans le logiciel, le cavalier est en position de travail - et pourtant, lorsque l'on fait monter l'appareil, on voit ce qui suit :

Capture d'écran du processus d'émulation sur l'appareil
Problèmes des systèmes de contrôle d'accès autonomes - Là où ils n'étaient pas attendus
... et le contrôleur signale que l'accès a été accordé.

Cela signifie que le problème réside dans le logiciel du contrôleur ou du lecteur. Vérifions le lecteur - il fonctionne en mode iButton, connectons donc la carte de sécurité Bolid - nous pourrons visualiser les données de sortie du lecteur.

La carte sera ensuite connectée via RS232
Problèmes des systèmes de contrôle d'accès autonomes - Là où ils n'étaient pas attendus

Grâce à la méthode des tests multiples, on découvre que le lecteur diffuse le même code avec en cas d'échec d'autorisation : 1219191919

La situation commence à devenir plus claire, mais pour le moment, je ne comprends pas pourquoi le contrôleur répond positivement à ce code. On suppose que lorsque la base de données a été remplie - par accident ou volontairement, une carte avec d'autres clés de secteur a été présentée - le lecteur a envoyé ce code et le contrôleur l'a enregistré. Malheureusement, je n'ai pas de programmeur propriétaire d'IronLogic pour examiner la base de données des clés du contrôleur, mais j'espère avoir pu attirer l'attention sur le fait que le problème existe. Une démonstration vidéo de l'utilisation de cette vulnérabilité est disponible lien.

PS La théorie de l'addition aléatoire s'oppose au fait que dans un centre d'affaires de Krasnoïarsk, j'ai également réussi à ouvrir la porte en utilisant la même méthode.

Source: habr.com

Ajouter un commentaire