Une blockchain pourrait-elle vraiment empêcher les logiciels malveillants dans l'Internet des objets?


24

Cet article affirme que l'utilisation d'un système de sécurité basé sur la blockchain pour un réseau IoT empêcherait certains types d'attaques:

La technologie blockchain peut aider à offrir une réponse. Gada observe que la blockchain offre une sécurité inhérente non présente dans les réseaux traditionnels actuels. «La technologie Blockchain est considérée comme un moyen d'ajouter de la sécurité et de la confidentialité aux capteurs et aux appareils», déclare-t-il. «Dans les architectures informatiques traditionnelles, la falsification peut se produire si un pirate est capable de passer à travers les pare-feu et autres défenses mises en place par une organisation. Une fois à l'intérieur, la falsification n'est souvent pas enregistrée ou remarquée, et peut se produire sans entrave. Ce n'est tout simplement pas possible lors de l'utilisation de la blockchain. »

La blockchain, explique Gada, est «une solution appropriée dans au moins trois aspects de l'IoT, y compris la gestion des mégadonnées, la sécurité et la transparence, ainsi que la facilitation des micro-transactions basées sur l'échange de services entre les appareils intelligents interconnectés».

Cela semble être une affirmation audacieuse, mais plutôt vague. Comment, exactement, un système de blockchain fournirait-il une telle protection à un réseau d'appareils connectés? Les avantages sont-ils principalement dus à l'amélioration de la transparence de la blockchain publique, ou existe-t-il également d'autres avantages?

Réponses:


26

La blockchain, explique Gada, est «une solution appropriée dans au moins trois aspects de l'IoT, y compris la gestion des mégadonnées, la sécurité et la transparence, ainsi que la facilitation des micro-transactions basées sur l'échange de services entre les appareils intelligents interconnectés».

Gestion des mégadonnées: je ne pourrais pas être plus en désaccord. Les chaînes de blocs sont intrinsèquement inefficaces pour traiter et stocker de grandes quantités de données. Toutes les données doivent être relayées et traitées par chaque nœud complet et sont stockées pour toujours par chaque nœud d'archivage. Les transactions Bitcoin sont minuscules à environ 250 octets par pièce, et la blockchain Bitcoin croît actuellement à un rythme d'environ un gigaoctet par semaine - elle fait maintenant 117 Go. Contrairement à la narration populaire, les blockchains sont une terrible solution à la plupart des problèmes qu'ils sont prêts à résoudre.

Sécurité: sécurité de quoi? Les chaînes de blocs comme Ethereum et Bitcoin sont sécurisées par leurs protocoles payant de grandes récompenses de jetons natifs aux validateurs. Les validateurs fournissent à leur tour du travail en dépensant des ressources irrécupérables, qui devraient être répliquées pour modifier l'historique enregistré. Cela rend leur blockchain essentiellement en écriture seule et immuable. En outre, les règles garantissent que seul le propriétaire des actifs peut les réaffecter.
À partir de l'extrait, il ne devient pas clair qui validerait l'état du réseau, ni quels seraient les «actifs» supposés stockés dans la base de données ni comment la convergence et la validation du réseau seraient encouragées.

Transparence: d' accord, les blockchains ouvertes sont des biens publics et chaque participant peut être aussi transparent qu'il le souhaite.

Micro-transactions: Il est très peu probable que les micro-transactions soient résolues directement sur une blockchain. Encore une fois, nous parlons d'une structure de données terriblement inefficace qui nécessite la réplication de toutes les informations du réseau. Les transactions Bitcoin coûtent actuellement environ 0,15 $ la pièce. Il y a un vrai coût associé au stockage de chaque transaction pour toujours sur la blockchain. Les systèmes de deuxième couche construits sur des chaînes de blocs telles que Raiden sur Ethereum et le réseau Lightning sur Bitcoin pourraient fournir des micro-transactions moins chères à l'avenir, mais même dans ce cas, chaque canal de paiement devrait être ancré à la chaîne de blocs avec une transaction de chaîne de blocs, donc il est une valeur minimale palpable à transférer avant que cela ne devienne rentable.

J'aimerais terminer en soulignant un article de Gideon Greenspan de MultiChain sur Éviter le projet de blockchain inutile . Il me semble que le projet proposé ici empiète sur plusieurs points, par exemple:

  • Nous faisons déjà confiance au producteur avec le firmware, pourquoi alors ne lui ferions-nous pas confiance pour les mises à jour?
  • Pour la même raison, pourquoi aurions-nous besoin de plusieurs écrivains arbitraires? Ne faisons-nous pas simplement confiance au producteur du matériel de toute façon?
  • Quelle sorte d'interaction existe-t-il entre les transactions?

Il me semble plausible que plusieurs bases de données de publication-abonnement en combinaison avec la cryptographie de signature numérique offrent les avantages recherchés. (Mais peut-être que je manque quelque chose.)


Mise à jour 2017-07-17: l'article Wüst, Karl et Arthur Gervais. "Avez-vous besoin d'une Blockchain?" fait explicitement mention de l'IoT:

4.4.4 Internet des objets
[…] Si les ordinateurs fournissent des valeurs lues par les capteurs à la blockchain, la blockchain ne garantit pas l'exactitude de ces valeurs, c'est-à-dire si les contrats intelligents se comportent en fonction des valeurs fournies par les capteurs, les capteurs - et quiconque les contrôle - doivent nécessairement faire confiance. […] Dans d'autres cas, l'hypothèse de confiance spécifique doit être étudiée et évaluée soigneusement pour déterminer si l'utilisation d'une blockchain apporte une valeur supplémentaire.


5
Blockchains! = Bitcoin. Toutes les blockchains n'utilisent pas Bitcoin. Les transactions Bitcoin sont chères, mais il est possible de créer des chaînes de blocs beaucoup plus efficaces, par exemple, en abandonnant la preuve de travail - essentiellement, cela devient simplement un chaînage de hachage. (Le terme "blockchain" est plus ici un terme marketing qu'un terme technique strict. Oui, je sais qu'il est boiteux de l'appeler "blockchain" quand "chaîne de hachage" est un terme de longue date de la communauté technique, mais. .. marketing.) Vous perdez quelque chose, mais si vous ne vous souciez que de la gestion des mégadonnées, cela pourrait être OK.
DW

2
@DW: D'accord, ma réponse est peut-être un peu trop concentrée sur Bitcoin et POW, cependant, le coût est dérivé du stockage indéfini sur tous les nœuds d'archivage, pas le POW. Donc, je ne suis pas sûr d'avoir compris ce que vous essayez de me dire.
Murch

22

Les blockchains ont des applications sur les appareils IoT, mais rien dans IoT ne rend les chaînes de blocs plus ou moins applicables.

Les menaces spécifiques mentionnées dans l'article sont:

  1. Malware . La blockchain ne fait rien pour empêcher cela. Les vulnérabilités du routeur / caméra / DVR étaient principalement dues à une mauvaise conception. La vérification du micrologiciel (une fois implémenté, ce qui est rare) est déjà résolue grâce aux signatures numériques. Même si vous avez fait distribuer le firmware à travers un blockchain, vous devez toujours faire confiance à l' entité centralisée unique de mettre le firmware sur le blockchain en premier lieu, et si vous êtes de retour à la case départ .

  2. Altération . "La falsification peut se produire si un pirate est capable de passer à travers les pare-feu et autres défenses mises en place par une organisation". Il s'agit d'une application légitime de la blockchain. Il n'y a pas d'autorité centrale qui stocke le grand livre et ainsi les modifications sur une instance du grand livre n'affectent pas le reste du réseau. Même les utilisateurs légitimes ne peuvent pas réécrire l'historique sans qu'il y ait un enregistrement du changement.

En bref, la blockchain ne fait rien pour résoudre le problème des logiciels malveillants IoT.


1
Empêcher la transmission du logiciel malveillant à l'appareil est une application valide.
Helmar

@Helmar Pourriez-vous élaborer? Je ne vois pas comment une blockchain empêcherait les logiciels malveillants d'atteindre l'appareil.
Ian Howson

1
Dans le sens de ce que vous détaillez au point # 2, si les règles de pare-feu par exemple sont propagées via la chaîne de blocs, il ne suffira peut-être pas de pirater un pare-feu. Bien sûr, nous n'avons pas un environnement très spécifique dont nous discutons ici.
Helmar

@Helmar Qui distribue les règles de pare-feu et pourquoi leur faisons-nous confiance? multichain.com/blog/2015/11/… est superbe. N'oubliez pas que bon nombre des problèmes de caméra IoT sont dus au fait que la caméra a fait un trou dans le pare-feu dans le cadre de sa fonction prévue. L'attaquant extérieur n'a pas «piraté» le pare-feu.
Ian Howson

Oui, de nombreux appareils IoT ne sont pas sécurisés par une mauvaise conception.
Helmar

9

La technologie Blockchain fournit un enregistrement de transaction distribué. De nouvelles données sont ajoutées à la chaîne et cryptées par plusieurs parties. Le processus de chiffrement est intensif en calcul, ce qui rend relativement difficile la corruption ou la modification rétrospective des données.

L'application la plus connue de la blockchain est de permettre des transactions financières sans avoir à s'appuyer sur un réseau de banques ou d'autres parties de confiance, bien que les banques s'intéressent à la blockchain et pourraient bientôt être en concurrence pour contribuer à contribuer à la majorité du cryptage effort.

L'application la plus pertinente de la blockchain à la technologie IoT semble être la distribution d'articles de confiance (clés, firmware, etc.). Bien que la blockchain soit difficile à subvertir, l'effort de calcul requis pour la vérifier n'est pas non plus trivial. Donc, en tant que mécanisme de communication, il a plus de force pour être capable de détecter la falsification que pour être difficile à forger.

Faciliter les micro-transactions permet certainement de nouvelles fonctionnalités, mais il n'est pas clair que cela s'adapte mieux à tous les types de terminaux que toute autre technologie de paiement.


9
  1. Gestion du Big Data

    La blockchain est un réseau distribué, le fichier blockchain peut donc devenir très volumineux. À l'heure actuelle, la blockchain Bitcoin est d'environ 50 gig. Voulez-vous que les petits appareils disposent chacun de 50 Go de données? Je ne pense pas.

  2. Sécurité

La sécurité est là, mais elle est assurée par des mineurs. Qui va vérifier toutes ces transactions IoT?

  1. Transparence

    Toutes les transactions sont enregistrées sur la blockchain, car c'est un grand livre distribué.

  2. Micro-transactions

    La blockchain peut gérer les transactions car il s'agit d'un grand livre distribué.


6

Comment, exactement, un système de blockchain fournirait-il une telle protection à un réseau d'appareils connectés?

Vous trouverez ci-dessous une ventilation rapide avec une source expliquant avec un exemple plus en détail, mais essentiellement cela fait qu'il y a plusieurs approbateurs qui approuvent une transaction, un certain niveau d'accès, etc. donc si quelque chose glisse entre les fissures d'une, pour passer par les autres niveaux d'approbation.

Le Forum économique mondial l'explique comme suit sur leur site Web:

Qu'est-ce que la blockchain?

Actuellement, la plupart des gens utilisent un intermédiaire de confiance comme une banque pour effectuer une transaction. Mais la blockchain permet aux consommateurs et aux fournisseurs de se connecter directement, éliminant ainsi le besoin d'un tiers.

En utilisant la cryptographie pour sécuriser les échanges, la blockchain fournit une base de données décentralisée, ou «registre numérique», des transactions que tout le monde sur le réseau peut voir. Ce réseau est essentiellement une chaîne d'ordinateurs qui doivent tous approuver un échange avant qu'il puisse être vérifié et enregistré.

Comment ça marche en pratique?

Dans le cas de Bitcoin, la blockchain stocke les détails de chaque transaction de la monnaie numérique, et la technologie empêche le même Bitcoin d'être dépensé plus d'une fois.

image sur le fonctionnement de la blockchain

Du Forum économique mondial: tout ce que vous devez savoir sur la blockchain, expliqué simplement


4

Le but fondamental de la blockchain n'est pas de créer un grand livre distribué ou une base de données distribuée. La chose fondamentale que les gens ont du mal à comprendre est que la blockchain n'est pas une architecture ultime qui résout tous leurs problèmes. Mais, c'est juste un outil qui offre certaines fonctionnalités. Utilisez-le, seulement si cela vous convient.

Certainement pas bon pour le stockage de Big Data.

Je ne suis pas entièrement d'accord avec les autres sur le fait qu'il ne peut pas être utilisé dans IoT Malware Analysis.

Je vous donne un cas où il peut être utilisé dans la protection contre les logiciels malveillants,

Vous avez effectué une analyse des données sur les données transitant par votre appareil IoT et vous dites qu'un ensemble particulier de bits de données est malveillant. Vous mettez cette information dans le grand livre. Maintenant, d'autres prétendent que ce n'est pas le cas. En utilisant un mécanisme de consensus de blockchain, nous pouvons déterminer quels sont les bits malveillants présents. De plus, comme ces mises à jour étaient en temps réel, vous n'avez pas besoin que votre logiciel antivirus particulier mette à jour leurs définitions, car vous utilisez maintenant un registre transparent ouvert à tous et mis à jour par consensus. De plus, étant donné que nous mettrions des données limitées, les coûts de transaction ne monteront pas si haut.


2

Oui. Les appareils IoT (par exemple, un thermostat wifi) sans ports ouverts / d'écoute, tels que telnet ou http, se connectent généralement à un serveur central et restent connectés à ce serveur 24/7. Lorsque vous êtes à l'étranger, l'application de thermostat sur votre smartphone contacte le même serveur CENTRALISÉ lorsque vous souhaitez modifier la température, et ce serveur relaie la commande au thermostat de votre maison. Si des pirates informatiques compromettent ce serveur, ils contrôlent les thermostats. C'était dans la saison 1 de M. Robot. Vous pouvez utiliser certaines chaînes de blocs, comme Ethereum, pour interagir avec un appareil IoT, au lieu d'utiliser un serveur centralisé. Un exemple est la serrure de porte SlockIt ethereum


1

Si la cyber sécurité globale ainsi que les points de violation de logiciels malveillants dont vous parlez tous, nécessitent également de simples connexions IP à IP, ou des répartitions LAN, de ports qui ne sont pas nécessairement ouverts à tout moment, mais une fois soit une session active sur le serveur côté ouvre une ou la gamme de ports (celle d'un service, d'une connexion à distance, etc.) qu'un utilisateur peut valider et xfer une charge utile de paquets, résultant en une connexion ou une commande autorisée reçue et exécutée côté serveur.

Prendre en compte la toute première étape, la genèse de toutes les transmissions de données de base, résultant avec un déni ou un résultat de vérification OK;

A) première demande du client au serveur pour une connexion RDP via un port prédéfini

B) côté client reçoit des paquets d'authentification ou de refus, une connexion ou un échec; c'est un cas d'utilisation générique et basique

Injecter C) Séance hypothétique avec A + B, mais inclure un vecteur d'attaque MITM. https://github.com/citronneur/rdpy

Justification: Rdpy est un script python open source qui permet de détourner des sessions Windows RDP et d'effectuer des attaques MITM, d'enregistrer la communication et d'afficher les actions effectuées sur les serveurs. Cet outil pourrait non seulement exécuter la fonctionnalité de proxy «Man In The Middle», mais permet également d'exécuter un pot de miel RDP pour obliger les attaquants à exécuter une fausse session RDP.

Rdp Honeypot définira le démon que vous pouvez utiliser sur le réseau à des fins de test ou pour détecter des activités suspectes telles que des attaques de vers ou toute machine qui exécute la force brute sur le réseau. RDPY est entièrement implémenté en python, à l'exception de l'algorithme de décompression bitmap qui est implémenté en C à des fins de performance, cela fournit un pot de miel.

Injecter D) Hypothèse d'intégration Blockchain / Crypto: Si l'hôte RDP côté serveur est accessible via le port souhaité et choisi, alors on écrirait techniquement quelque chose de similaire à celui d'un appel de style d'exécution Dapp, ou d'un script. Là où de manière inhérente, cela permettrait au (x) paquet (s) de demande initiale côté client de contenir ce que le démon d'écoute côté serveur / Dapp requiert pour ouvrir ensuite le ou les ports requis. Le côté client transmet une couche chiffrée contenant le (s) jeton (s) d'autorisation approprié (s) et / ou "pièce (s)", qui sont déchiffrés puis vérifiés séquentiellement via la blockchain côté serveur que soit a) la totalité de la blockchain privée côté serveur un ensemble précompilé de scripts et de modules pré-construits, pour permettre une quantité de jetons pré-générée et déployée automatiquement;

(Nous pouvons aborder cela et comment les plages de blocs prédéfinies et préréglées sont la façon dont le client transmet ses pattens Auth, mais nous ne le ferons pas si le temps presse, et à cause de mes pouces sur ce clavier de téléphone qwerty, ça fait mal. )

Ainsi, une fois que la pièce individuelle / plage de blocs, etc., est autorisée des deux côtés ---> les variables Dapp et le code pré-écrit, qui ont un accès chmod approprié, peuvent engendrer beaucoup de choses côté serveur, depuis l'ouverture des ports, le chargement machines virtuelles, tout ce dont vous pouvez rêver.


2
Cela ne me montre pas clairement comment la blockchain aide à l'autorisation. Si le client dispose déjà de l'autorisation appropriée, c'est essentiellement la même chose que les certificats client PKI ou tout secret client correctement sécurisé.
Helmar
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.