ACS de mon LCD - sécurité sur deux boulons

Je m'empresse d'avertir les lecteurs: cet article est écrit uniquement à titre d'information et ne nécessite en aucun cas une action illégale. L'auteur n'est pas responsable des actions illégales commises par des personnes utilisant les informations contenues dans cet article.



Salutations au lecteur. Aujourd'hui, je veux parler de la sécurité des systèmes de contrôle et de gestion des accès (ACS) en général et de l'exemple de mon LCD. Les principales vulnérabilités seront examinées, ainsi qu'une tentative réussie de copier des clés. Toutes les manipulations seront principalement de nature matérielle.

Dans mon complexe résidentiel, le système d'interphone Sinthesi S2 est installé, ainsi que le système d'accès cour / escalier / sol produit par Urmet Group. C’est comme ça que le panneau de rue était cool.



jusqu'au jour où j'ai commencé à ressembler à ceci:



Elle a traîné comme ça pendant quelques jours, puis a migré vers une poubelle à proximité. Il n'avait qu'un lecteur et un clavier. Parce que l'un des domaines de mon entreprise est le développement de lecteurs HF, je n'ai pas pu résister et j'ai décidé d'étudier ce lecteur RFID plus en détail. À partir de la documentation, je n'ai trouvé qu'un énorme catalogue à partir duquel on pouvait conclure qu'il s'agit du FD-020-017 - un lecteur 13,56 MHz avec l'interface Wiegand26. À l'intérieur se trouvait un sandwich de cartes de lecture ( MFRC531 ) et MK avec BLE ( CC2541 ) collé avec un adhésif thermofusible sur le boîtier, qui a clairement été développé non pour cette carte.



La carte MK est inondée d'un composé mou, apparemment pour protéger la partie radio de l'humidité. Tordant la planche dans mes mains, je l'ai reportée.

Jusqu'à récemment, le système ne m'intéressait pas, car il était partiellement démarré (seuls les verrous d'accès fonctionnaient, mais ils avaient un code d'accès que je connaissais et n'utilisaient pas de clé). Après le démarrage complet du système et l'annulation des codes d'accès, j'ai commencé à l'étudier plus en détail. Cela a commencé une des nuits quand je suis rentré chez moi et j'ai constaté que la porte du vestibule fonctionnait déjà et que ma femme dormait déjà. Je n'avais que des choses de poche avec moi, mais il s'est avéré que c'était suffisant pour contourner toute la sécurité des élites (comme le dit Urmet).



Tout ce dont j'avais besoin était de dévisser les 2 vis retenant le cadre du panneau avec la clé de voiture, retirer les 2 blocs et utiliser la même clé pour fermer le canal de relais qui va à la serrure de la porte du vestibule. Tout ...
Après cet incident, quand je regarde un autre film hollywoodien ("Passengers" (2016) sur KDPV) et que je vois comment les portes super secrètes s'ouvrent en enlevant le panneau de code et en mettant des épingles sur le tableau (nécessairement avec des étincelles et une ouverture de porte spectaculaire), je vois tout à fait situation réelle.

Dans ma mémoire, la plupart des ACS que j'ai vus ont accès au verrou directement depuis le panneau de code et c'est la principale vulnérabilité. Toute la sécurité est assurée par quelques boulons retenant ce panneau, et sur la conviction que ce système est fiable. Mais en même temps, il est possible d'augmenter considérablement le seuil d'entrée (appelons-le protection contre une personne avec un tournevis) en utilisant des verrous avec des cerveaux contrôlés par une interface - même si c'est le plus simple. Cette mesure réduira considérablement la probabilité d'entrée spontanée.

Données source


ACS LCD dans son ensemble, son fonctionnement, sa réaction aux autres touches, ainsi qu'un moyen d'ajouter des touches:

  • Une clĂ© gratuite de l'appartement est Ă©mise, chacune suivante est de 300 roubles, elle est enregistrĂ©e dans le compte personnel ACS. Vous ne pouvez acheter qu'au Royaume-Uni. Le chat LCD a Ă©crit que les copieurs du marchĂ© ne pouvaient pas faire de doublon - cela signifie que le système est plus cool que de simplement lire l'UID.
  • Lorsqu'il prĂ©sente une autre carte mifare, le lecteur ne montre mĂŞme pas qu'il la voit.
  • Lorsque vous apportez la clĂ© d'un autre escalier / Ă©tage, le lecteur lit une lecture, mais rien ne se passe.
  • Lors de la lecture du contenu du porte-clĂ©s 8 et 12, les blocs sont cachĂ©s et ont une clĂ© d'accès diffĂ©rente des clĂ©s bien connues de Mifare. Le secret est donc quelque part.



Début des travaux


Tout d'abord, j'ai copié Block0 (celui qui contient l'UID et les informations du fabricant) sur le disque Mifare Zero et j'ai vérifié que cela ne suffisait pas - le porte-clés ne fonctionnait pas. Le lecteur n'a même pas répondu à la présentation d'un tel clone. Il est devenu clair que vous devez rechercher la clé des secteurs 8 et 12. Après avoir lu tous les bibelots disponibles, j'ai vu qu'un seul d'entre eux a 12 blocs verrouillés, dans le reste, il est nul, il est donc évident que la magie est contenue dans le bloc 8.

Il est temps de trouver un lecteur doué et de l'examiner de plus près. Nous avons donc FD-020-017 - 13,56 MHz, interface Wiegand26. Les MFRC531 et CC2541 sont connectés par un peigne à 10 broches. Et il a parfaitement travaillé sur la table - sans le reste du système. A réagi aux touches de la même manière que le reste des lecteurs. Voyons d'abord ce qui se passe:



Silence exactement avant la présentation d'un trousseau de clés valide. Après avoir lu l'interface, le message part en pleine conformité avec Wiegand26 . J'ai donc décodé le paquet que ma clé envoie. À l'aide d'un multimètre, j'ai restauré le brochage, il s'est avéré que les puces communiquent par SPI. Nous connectons l'analyseur,



nous apportons un trousseau valide et regardons l'échange par SPI:



Ensuite, j'ai commencé à regarder la documentation de la puce MFRC531 et j'ai failli laisser tomber mes mains quand elle a vu qu'elle avait une EEPROM spéciale pour stocker les clés. J'ai trouvé les commandes pour charger la clé:



La commande 0x0B se charge de l'EEPROM, la commande 0x19 de FIFO, qui reçoit à son tour la clé via SPI. Il semblerait que si vous chargez une clé à partir d'EEPROM, alors je n'ai aucune chance d'inverser de cette façon, MAIS à ma grande surprise, il n'y a pas de commande d'échange 0x0B, mais il y a une commande 0x19



Il ne reste plus qu'à récupérer la clé selon le format



Et ajoutez à la feuille de clé.



Bingo !!! Il s'est avéré que le bloc 8 commence par 3 octets non nuls, qui vont simplement à Wiegand lorsque le porte-clés et le lecteur correspondent. Ces données n'ont rien à voir avec l'UID - il s'agit très probablement d'un numéro de série lorsqu'il est délivré dans le Code pénal. Mes porte-clés avaient 3 numéros d'affilée + un très différent. L'enregistrement du blanc a été réussi, j'ai combiné la clé de l'écran LCD avec la clé du bureau, qui fonctionne par UID.

Conclusion


Pour un piratage réussi du système, je dois remercier le programmeur d'Urmet Group, qui a franchement trompé lors de l'écriture de logiciels pour le lecteur, car s'il existe du matériel capable d'éliminer une telle méthode de piratage (généralement assez simple), vous ne pouvez pas le faire, vous ne pouvez pas nommer autre chose que du piratage.

La plupart des personnes travaillant avec la technologie RFID savent que l'algorithme de cryptage Crypto-1 utilisé dans les cartes Mifare (Classic) a été fissuré depuis longtemps et qu'il était possible d'obtenir la clé du bloc de manière plus «propre», mais je suis allé de l'avant.

Dans nos propres projets, nous utilisons des lecteurs programmables avec des dictionnaires de mot de passe à usage unique pour le chiffrement. Cela vous permet de vous protéger du clonage si la carte d'origine est attachée au lecteur avant le clone, sinon cela détectera la duplication (la carte d'origine cessera de fonctionner).

Source: https://habr.com/ru/post/fr439278/


All Articles