Maison > Article > Opération et maintenance > Comment utiliser la fonction Bluetooth pour attaquer et déverrouiller le cadenas intelligent Tapplock en deux secondes
Il y a quelques semaines, quelqu'un sur Youtube nommé JerryRigEverything a mis en ligne une vidéo de démontage du cadenas à empreintes digitales Bluetooth intelligent Tapplock. La vidéo montre que le capot arrière du Tapplock peut être retiré en fixant la base adhésive avec une caméra GoPro, puis en utilisant un tournevis pour ouvrir facilement le verrou Tapplock.
C'est un peu incroyable. Cette vidéo a éveillé ma curiosité quant à la sécurité du cadenas intelligent Tapplock. Ce cadenas intelligent est doté de la reconnaissance d'empreintes digitales, du Bluetooth du téléphone portable et du déverrouillage par code Morse. Bien qu'il soit pratique, est-il sûr ? À partir de là, j’ai mené quelques recherches sur Tapplock, et finalement j’ai réussi à déverrouiller Tapplock en 2 secondes.
Le cadenas intelligent Tapplock est fabriqué en acier trempé et en alliage de zinc Zamak-3 moulé sous pression durable. L'alliage de zinc Zamak-3 est souvent utilisé dans les produits moulés sous pression tels que les jouets pour enfants, les poignées de porte, les rasoirs pour hommes, etc. À proprement parler, ce matériau métallique n'est pas très résistant et peut fondre et se déformer en dessous de 400°C. corps de serrure Dites, ce n'est pas un bon choix de matériau. Zamak-3 facilite la réalisation de pièces moulées fines qui semblent exquises et solides au toucher, et qui semblent tout simplement sûres et solides.
Le cadenas intelligent Tapplock utilise l'algorithme de cryptage AES 128 bits et la force de cryptage est très élevée.
Cette force de cryptage est équivalente à celle du niveau militaire, mais pour les pirates IoT, ce cryptage symétrique présente encore quelques défauts, notamment dans les instructions Tapplock ici, il n'y a pas de réglementation en matière d'appairage, d'échange et de partage de clés, et même l'authentification de base ne l'est pas. inclus dans les consignes de sécurité. Par conséquent, dans des scénarios d’application comme celui-ci, le cryptage AES-128 présente encore des lacunes.
De plus, il existe de nombreuses controverses sur la sécurité des cadenas Tapplock, telles que "le Tapplock incassable n'est pas si sûr et fiable". L'article répertorie de nombreux tests de sécurité sur le logiciel et le matériel Tapplock, et a finalement révélé que Tapplock n'est pas si sûr et fiable. sûr.
Tapplock prétend officiellement que ses cadenas sont "très puissants", mais en fait, ils sont probablement incomparables aux serrures de porte Abloy Protec. Les responsables de Tapplock affirment également que leur cadenas est « presque incassable », mais il a finalement été brisé avec un coupe-boulon de 4 pouces. Il semble que tout soit un stratagème marketing pour se vanter.
Les différents tests de sécurité ci-dessus ont également éveillé ma curiosité, j'ai donc acheté un cadenas intelligent Tapplock pour le tester, j'ai payé 80 euros et après 14 heures, un cadenas intelligent Tapplock était prêt à mon domicile. Tout d'abord, j'ai collé la coque arrière du Tapplock à l'aide d'un support adhésif pour caméra GoPro, en suivant la méthode de JerryRigEverything.
Après 30 minutes d'adhérence totale, j'ai tiré fort sur la base adhésive, mais malheureusement je n'ai pas pu ouvrir le capot arrière du Tapplock. Il s'avère qu'il y a une pointe à ressort à l'intérieur de la coque arrière qui s'étend jusqu'au haut de la coque arrière, spécialement conçue pour empêcher la coque arrière de se desserrer ou de tourner. Il est possible que cette pointe à ressort soit endommagée, mais il se peut que le simple fait de compter sur une caméra pour adhérer à la base ne suffise pas. Cependant, le verrou de test Tapplock de JerryRigEverything n'a pas cette pointe à ressort saillante, mais le verrou de test Tapplock que nous avons acheté a cette pointe à ressort. Par conséquent, nous avons tiré fort sur la base adhésive de la caméra et n'avons finalement pas réussi à l'ouvrir selon la méthode du couvercle arrière de JerryRigEverything. .
Maintenant, nous nous tournons vers le Bluetooth Low Energy (BLE) pour les tests. De manière inattendue, nous avons découvert des choses incroyables grâce à cela. En général, j’aime lire des articles longs et approfondis sur le piratage créatif de l’IoT, mais n’allons pas ici et allons droit au but. En moins de 45 minutes, nous devons terminer le crack et le déverrouillage de Tapplock.
Tout d'abord, nous avons découvert qu'il n'y a pas de mécanisme de cryptage de transmission dans la communication HTTP de l'application mobile Tapplock. Nous sommes en 2018, pas dans les temps anciens, ce qui est complètement surprenant.
Comme vous pouvez le voir dans l'analyse du réseau ci-dessus, chaque fois que j'utilise BLE pour me connecter à Tapplock, une chaîne "aléatoire" sera envoyée à l'extrémité de Tapplock. Ces chaînes semblent être des commandes pour communiquer avec Tapplock.
Mais il convient également de noter que peu importe le nombre de fois que j'effectue des demandes de connexion à Tapplock, ces données de chaîne restent inchangées. Comme le montre l'exécution en ligne de commande suivante de l'outil d'exploitation Bluetooth gatttool, Tapplock est également vulnérable aux attaques par relecture.
Parce que l'application mobile Tapplock permet aux utilisateurs de partager les cadenas Tapplock avec d'autres personnes ou de révoquer l'autorisation d'utilisation dans un certain délai. Par conséquent, j'ai partagé le verrou de test avec d'autres utilisateurs, puis j'ai capturé les données de communication BLE et j'ai découvert que cette méthode de partage de Tapplock entre utilisateurs est complètement la même que le contrôle normal de Tapplock par un seul utilisateur, c'est-à-dire même si vous avez révoqué le déverrouillage des autorisations d'autres utilisateurs partagés, mais les autres utilisateurs peuvent toujours obtenir toutes les informations permettant de déverrouiller l'authentification via la capture de paquets de données de communication. Ces informations peuvent être utilisées pour authentifier et déverrouiller Tapplock, ce qui n'est pas différent d'un seul utilisateur de contrôle. C'est un peu le problème de la Ring Smart Doorbell, où il est impossible de révoquer un autre utilisateur disposant d'autorisations de déverrouillage élevées.
Le cadenas intelligent Tapplock n'est pas équipé du mécanisme de réinitialisation d'usine approprié. L'utilisation d'un compte ne peut supprimer que les informations de cadenas correspondantes, mais pas les données de déverrouillage correspondantes. Les données de déverrouillage conservées sont envoyées vers ou depuis le serveur vers Tapplock. Par conséquent, un attaquant occupant une position appropriée dans le réseau peut intercepter ces données de déverrouillage et utiliser ces données pour déverrouiller indirectement Tapplock.
Ce n'est pas un petit problème, arrêtez de dire des bêtises, être capable de déverrouiller la serrure est le point clé. Nous devons maintenant analyser comment ces données aléatoires peuvent déverrouiller la serrure.
Après quelques minutes de recherche et d'analyse, j'ai trouvé la méthode de fonction spécifique associée au processus de déverrouillage du cadenas Tapplock :
public void regularPair(String str, byte[] bArr, byte[] bArr2) { bArr = getCMD(CMD_PAIRING_REGULAR, bArr, bArr2); send(str, bArr); str = TAG; bArr2 = new StringBuilder(); bArr2.append("Regular pair called, send "); bArr2.append(BluetoothTool.byteToStr(bArr)); Log.e(str, bArr2.toString()); }
Dans cette méthode, une commande fixe CMD_PAIRING_REGULAR contenant deux tableaux à deux octets est envoyée au Cadenas Taplock. Ces deux tableaux à deux octets liront les informations correspondantes suivantes :
this.bluetoothCenterManager.regularPair(lockMacAddress, BluetoothTool.strToBytes(lockInfo.getKey1()), BluetoothTool.strToBytes(lockInfo.getSerialNo()));
Les informations valides sont Key1 et SerialNo. D'où sont-elles envoyées ? Il s'avère que lorsque le verrou est initialement couplé, les informations ci-dessus sont indirectement converties en adresse MAC Bluetooth du cadenas Tapplock via la méthode keyAndSerialNo. La méthode keyAndSerialNo est la suivante :
public static String keyAndSerialNo(String str, String str2) { str = AndroidTool.md5(str.toUpperCase()).toUpperCase(); if (str2.equals(KEY_ONE) { str = str.substring(0, 8); } else if (str2.equals(KEY_TWO) { str = str.substring(8, 16); } else if (str2.equals(SERIAL_NO) { str = str.substring(16, 24); } return str; }
Ici, elle mettra en majuscule l'adresse MAC Bluetooth du cadenas Tapplock, puis la convertira en une valeur de hachage MD5, dont 0 à 7 caractères sont key1 et 16 à 23 octets sont le SerialNo. numéro de série.
Oui, la seule chose que vous devez savoir pour déverrouiller Tapplock est l'adresse MAC Bluetooth de Tapplock, et cette adresse MAC est diffusée par Tapplock. J'ai été immédiatement choqué par ce manque de sécurité, j'ai donc commandé un autre Tapplock et confirmé l'authenticité du cadenas Tapplock et de son APP.
Enfin, j'ai écrit un script d'attaque pour scanner le cadenas Tapplock et le déverrouiller. Ce script peut déverrouiller n'importe quel Tapplock en moins de 2 secondes, sans aucune connaissance ou compétence avancée. Plus tard, je transplanterai ce script dans une application Android pour rendre l'ensemble de l'opération de déverrouillage plus pratique et plus rapide. Dans l’ensemble, le coût du déverrouillage d’un cadenas Tapplock est très faible. La sécurité du cadenas intelligent Tapplock est honteuse. Cette approche est irrespectueuse envers les consommateurs et je reste sans voix.
Tapplock prétend avoir une fonction anti-cale. Il adopte la méthode traditionnelle dans le pêne de verrouillage, qui consiste à étendre un autre niveau de morsure dans la serrure, ce qui peut empêcher les attaquants d'utiliser des cales. Cependant, l’ouverture de morsure du Tapplock est relativement fine et un peu éloignée du point de pression de l’articulation.
De plus, à l'aide d'un coupe-boulon de 12 pouces, vous pouvez couper le boulon du Tapplock en moins de 10 secondes :
En tant que cadenas intelligent, le mécanisme de sécurité du Tapplock est en réalité très clear , c'est-à-dire empêcher les attaquants d'ouvrir la serrure. Le niveau de sécurité d'un verrou dépend de la conception de son propre modèle de menace. Une conception de sécurité correcte peut ralentir dans une certaine mesure l'attaque de l'attaquant sur le verrou, et il n'y aura aucune faille de sécurité pouvant être exploitée. En tant que cadenas intelligent à l’ère de l’IoT, la sécurité du Tapplock est tout simplement inquiétante. Il peut être déverrouillé en moins de 2 secondes. Mais lorsque j'ai signalé ce problème aux responsables de Tapplock, ils m'ont répondu :
"Merci pour votre note. Nous sommes bien au courant de ces notes."
Merci pour votre rappel de signalement, nous sommes déjà au courant de ces problèmes.
Ah, il s'avère que même si les responsables de Tapplock étaient au courant de ces problèmes, non seulement ils n'ont pas réussi à les réparer, mais ils ont également continué à vendre ces serrures sans en informer les consommateurs. Cela m'a totalement choqué.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!