Bonjour GT. Je voudrais offrir à la communauté mon point de vue sur les verrous intelligents, le point de vue du chercheur en sécurité et du paranoïaque. Cet article est né comme une tentative de donner un commentaire détaillé en réponse à cet article
Dooris Clever Lock . Mais à la fin, le commentaire est devenu trop distrait de l'article lui-même, et j'ai décidé de le finaliser et de le soumettre de manière indépendante.
Je ne suis pas conservateur en matière de progrès. Je crois que l'IoT est une chose très prometteuse, j'attends des voitures sans chauffeur, je crois en l'électronique portable et de l'implantation de tags NFC je ne suis arrêté que par le manque de fonctionnalités supplémentaires vraiment intéressantes que je pourrais potentiellement recevoir. C'est pourquoi je me réjouis lorsque les choses deviennent l'adjectif «intelligent». Mais non seulement la technologie doit être intelligente, mais aussi son développeur (enfin, l'utilisateur, de préférence aussi).
Après une si courte introduction, j'exprimerai immédiatement la thèse principale - une serrure intelligente ne devrait pas pouvoir ouvrir un appartement. Voilà. De plus, en principe, cela ne devrait pas être mécaniquement impossible, et non une interdiction logicielle.
Argument 1. Je ne fais pas confiance au développeurJe ne ressens rien de personnel à Alexander, mais peut-il garantir qu'aucun signet ne vous permet d'ouvrir la serrure? Il peut s'agir d'un signet logiciel qui «attrape» un «véhicule tout-terrain de paquets de données» spécial ou d'un signet matériel, par exemple, sur des commutateurs reed. Pire encore, cela pourrait être un bug banal dans le monde réel. L'auteur lui-même mentionne
"En outre, Dooris peut verrouiller par erreur la porte alors qu'elle est ouverte, si vous faites pivoter la porte d'une certaine manière tout en appuyant dessus."
Du point de vue du château, si je comprends bien, il n'est pas particulièrement important dans quelle direction tourner, donc potentiellement la phrase ci-dessus peut être lue et comme "... il est faux d'ouvrir la porte pendant qu'elle est fermée ...". Afin de convaincre qu'il n'y a pas de signets dans le code, l'auteur suggère de publier le code source. Je m'excuse, j'ai peut-être pris du retard sur la vie, mais à l'époque où j'étais programmeur, la tâche de comparer les sources et le fichier binaire était extrêmement difficile. Je suis silencieux que le fichier binaire du verrou doit encore être retiré. Est-ce le seul firmware? Y a-t-il un seul contrôleur à l'intérieur de la serrure? At-il un chargeur de démarrage? Mais vous ne pouvez pas le reflasher dans les airs?
Argument 2. Le développeur peut avoir tortEt pas forcément le développeur d'une serrure électronique. En fait, cet argument est une modification du précédent. Les programmeurs de pilotes sans fil sont également des personnes, et
Ping of Death, bien qu'il y ait longtemps, n'est pas une fiction. Je ne voudrais pas que la porte s'ouvre uniquement du fait que quelqu'un est passé avec un smartphone, dont le
nom Bluetooth commence par un numéro .
Argument 3. Je ne fais pas confiance à la gouvernance d'InternetSi le château peut être contrôlé sur Internet, le vecteur d'attaques augmente plusieurs fois. Où est ce serveur? Si les développeurs ont un serveur centralisé, ils peuvent ouvrir ma serrure avec une probabilité de 99%. Si le serveur sort du client, les deux premiers arguments sont déjà appliqués à ce serveur.
Que faire?Vous critiquez - offrez. Puisqu'un verrou ne peut pas ouvrir une porte, que peut-il faire? Pour moi personnellement, un problème commun avec le verrou est que je ne me souviens pas, mais est-ce que je l'ai fermé? Par conséquent, dans la serrure intelligente, je vois principalement la fonctionnalité de surveillance de la fermeture via Internet. Pour qu'à tout moment je puisse regarder un site spécial où tout va bien - la porte est fermée. Et si ce n'est pas le cas, il pourrait rapidement le remarquer.
Mais ce n'est pas si simple - en tant que paranoïaque, je ne veux pas que quelqu'un sache si ma porte est ouverte ou non. Cryptographie FTW. La famille de protocoles
«remettre les bits au stockage» me semble parfaite. Cette famille de schémas de protocole vous permet de confirmer toutes les données sans les divulguer directement.
De plus, je mentionnerais une autre fonction. Une occasion de fermer la serrure. Fonctionnalité assez controversée. En fait, sa seule utilisation est que le matin, ils sont partis et n'ont pas fermé la porte, ont parcouru le site Web ou l'application et l'ont découvert, ont verrouillé la serrure. Mais la présence d'une telle fonctionnalité ajoute beaucoup de problèmes.
Quelqu'un peut fermer la porte à votre place (tous ces 3 arguments qui étaient ci-dessus). Vous êtes sorti pour jeter les poubelles et vous êtes maintenant dans les mêmes pantoufles à l'extérieur. Plus la protection est fiable, plus elle sera gênante à utiliser. Je vois quelque chose comme ce scénario - sur le verrou, vous pouvez définir la combinaison de codes à la manière des verrous de combinaison. Seul l'envoi d'une telle combinaison fermera la porte et après la fermeture, la combinaison sera réinitialisée.
De plus, le moteur, en général, ne se soucie pas du sens de rotation. De plus, la rotation dans le sens antihoraire ne ferme pas toujours la porte. Il s'avère donc que "par programme", si la porte peut être fermée, alors, potentiellement, elle peut être ouverte. Ici, la solution est la suivante - lors de la configuration, l'utilisateur bloque physiquement la rotation de la serrure sur l'un des côtés (à la manière d'un tournevis à cliquet). Mais alors il sera difficile d'ouvrir une telle serrure avec une clé.
En général, une fonction assez controversée, qui, bien qu'elle puisse aider, est potentiellement difficile à mettre en œuvre.
Dans cet article, j'ai essayé de présenter ma vision d'un château intelligent, et j'invite ceux qui souhaitent en débattre dans les commentaires.