Vous n'avez pas encore de notification

Page d'accueil

Options d'affichage

Abonné

Actualités

Abonné

Des thèmes sont disponibles :

Thème de baseThème de baseThème sombreThème sombreThème yinyang clairThème yinyang clairThème yinyang sombreThème yinyang sombreThème orange mécanique clairThème orange mécanique clairThème orange mécanique sombreThème orange mécanique sombreThème rose clairThème rose clairThème rose sombreThème rose sombre

Vous n'êtes pas encore INpactien ?

Inscrivez-vous !

The DAO : un pirate dérobe 50 millions de dollars, la contre-attaque se prépare

De la disruption à la destruction
Economie 6 min
The DAO : un pirate dérobe 50 millions de dollars, la contre-attaque se prépare
Crédits : stokkete/iStock/Thinkstock

The DAO, l'organisation décentralisée hébergée sur la blockchain d'Ethereum fait à nouveau parler d'elle. Cette fois-ci les nouvelles ne sont pas bonnes : un pirate est parvenu à mettre la main sur un butin de 50 millions de dollars grâce à un smart contract exploitant un bug.

Il y a eu comme un couac au sein de The DAO. Présentée comme un énorme succès, grâce à ses 150 millions de dollars levés auprès d'utilisateurs d'Ethereum lors de sa phase de création, l'entreprise décentralisée sur la blockchain de cette crypto-monnaie vient de connaître un tournant dramatique, quelques semaines seulement après sa création. 

DAO : mode d'emploi

Pour comprendre ce qui s'est passé, il faut d'abord avoir une idée claire du fonctionnement d'une DAO (Decentralized Autonomous Organization). Il s'agit d'un concept d'entreprise autonome et décentralisée propre à la blockchain d'Ethereum. Elle n'a aucune existence juridique, n'emploie aucun personnel, ne peut détenir de biens et agit sur le monde physique en produisant des contrats avec des prestataires extérieurs.

Ces contrats, appelés « smart contracts », sont une des fonctionnalités offertes par la blockchain d'Ethereum, qui a été conçue dans cette optique. Les termes des contrats sont établis à l'avance et dès lors que les conditions en sont remplies, ses termes sont automatiquement exécutés.

Toutes les décisions sont prises de concert par les actionnaires de la DAO qui ont investi lors de sa création, ou acquis des parts plus tard. Chaque « jeton » dont ils disposent vaut pour un ou plusieurs droits de vote et chacun peut donc influencer la direction prise par la DAO en fonction de son poids dans son capital. Exactement comme pour une entreprise classique. Comme pour n'importe quelle autre blockchain, l'ensemble des transactions sont archivées et visibles publiquement.

On a signé décontrax

Maintenant que le décor est posé, concentrons-nous sur le 17 juin dernier. Un « pirate » est parvenu à sceller un smart contract avec The DAO pour la fourniture d'un service quelconque. Seulement, ce contrat contenait un bug (potentiellement introduit de façon volontaire). Selon Andrew Miller, un doctorant de l'université du Maryland ayant participé à l'audit du code d'Ethereum en 2015, la faille introduite dans le contrat était assez simple à mettre en évidence, comme il l'explique à nos confrères de Wired.

Selon lui, le contrat aurait tout simplement permis de répéter un retrait de fonds sans vérifier au préalable si le solde prévu était disponible. L'attaquant aurait ainsi mis la main sur environ 50 millions de dollars en ether (l'équivalent d'un bitcoin sur la blockchain d'Ethereum), stockés sur un autre compte visible de tous sur la blockchain. Les circonstances exactes de ce « hold-up » ne sont pas connues avec certitude, d'autres évoquant un bug dans un compilateur (Solidity).

Est-ce un vol si le contrat est mal écrit ?

Cet accident soulève un nombre important de questions, souvent cruciales. Alors que les smarts contracts n'en sont qu'à leur balbutiement, comment considérer ce type de cas d'un point de vue juridique ? Les avis fusent et divergent au sein de la communauté d'Ethereum. Certains voient cet évènement comme un vol tandis que d'autres rappellent que seul le code fait foi côté contrat et que si le code a été respecté, la DAO ne peut s'en prendre qu'à elle. 

« A posteriori, il est clair qu'on est passé trop rapidement du petit contrat « Hello, World », à un gros truc complexe, avec plein de fric, comme The DAO. C'est un peu comme si, immédiatement après la traversée de la Manche par Blériot, on avait lancé sur l'Atlantique un avion de 500 passagers payants... », résume ainsi non sans humour Stephane Bortzmeyer sur son blog.

En attendant, la communauté cherche des solutions pour rapatrier les fonds « volés » dans les caisses de The DAO.

 

L'enjeu est de taille puisque la somme détournée représente plus de 3 % de la masse totale d'ether actuellement présente sur le marché. Or, Ethereum devant prochainement passer sur un modèle de génération non plus basée sur le minage (Proof of Work) mais sur un schéma dit de « Proof of Stake » où de nouveaux ethers sont générés sous forme d'intérêts de ceux déjà existants. En clair, ce ne sera plus la génération de nouveaux ethers qui sera récompensée, mais la rente. L'attaquant pourrait donc disposer de 3 % de la future masse d'ether générée, ce qui pourra poser dans le futur de gros problèmes.

Quelles solutions pour The DAO ?

Plusieurs options s'offraient à la communauté pour remettre la main sur ces fonds. Le contrat prévoyait une periode de maturation de 27 jours pour les fonds retirés de The DAO, période pendant laquelle l'attaquant ne peut pas disposer de la somme comme il le souhaite. Pour prolonger cette durée, une première étape a consisté en un « soft-fork ».

 

« Le but ici est de proposer à tous de considérer, au moins pendant un temps, ce bout de la blockchain comme nul et non avenu. Si tout le monde est d'accord cela veut dire que l'ether présent sur ce contrat ou cette adresse ne pourra pas bouger, personne ne le validera. On se débarrasse ainsi de la fameuse deadline de 27 jours et on n'a plus à précipiter une décision dans un sens ou l'autre. C'est trop compliqué d'être chirurgical en si peu de temps, d'où la proposition de marquer tout ce qui contient le code de la DAO (donc la DAO elle-même, et toutes les demandes de split légitimes) », nous explique un spécialiste des crypto-monnaies, qui souhaite garder l'anonymat.

 

Une fois ce délai obtenu, il reste encore à choisir une voie à suivre. Parmi les pistes explorées, on notera l'attaque pure et simple de la « child DAO » de l'attaquant, afin d'essayer de drainer les 3,6 millions d'ethers volés en profitant du fait que ce type de DAO ne peut envoyer des fonds que vers l'adresse dont elle les a reçues. Une autre option consisterait à ne rien faire du tout et à laisser The DAO se faire attaquer et dépouiller de tous les actifs qu'elle contient. Une solution qui aurait l'avantage de ne pas toucher au caractère inaliénable de la blockchain, mais ferait de celle d'Ethereum un véritable far west. 

 

L'idée d'un « hard fork » a également été évoquée. Par consensus, les mineurs invalideraient la transaction incriminée et feraient ainsi revenir les 3,6 millions d'ethers dans The DAO, qui serait modifiée pour l'occasion afin de combler la faille. Cette méthode aurait l'inconvénient de créer un précédent de « réécriture » d'une blockchain. « Cela permettrait par exemple à un tribunal de faire pression pour faire invalider telle ou telle transaction », note l'expert que nous avons interrogé.

Deus ex machina

Finalement, une autre option semble avoir été adoptée en attendant. Un collectif de pirates se présentant comme « white hats » (des « gentils » autoproclamés) ont expliqué avoir placé, dans une nouvelle DAO, les 7,2 millions d'ethers qui étaient encore présents dans The DAO afin d'empêcher de nouvelles attaques. « Nous avons réduit le nombre d'attaquants potentiels de plus de 20 000 à seulement deux », se félicitent-ils sur Reddit

 

La suite de leur plan consiste à s'en prendre directement la « child DAO » de l'attaquant pour drainer le plus d'ethers possible. Cette possibilité leur sera ouverte dans 22 jours, le temps que cette DAO « murisse » et que les fonds qu'elle contient puissent bouger. Sans rentrer dans les détails de l'attaque (visibles par ici), les fonds détournés pourraient retourner à leur place d'ici un peu plus de deux mois.

 

En cas d'échec de cette opération, le « hard fork » consistant à invalider les transactions frauduleuses en altérant la blockchain restera une option, mais elle est encore loin de faire l'unanimité au sein de la communauté d'Ethereum. « Un hard fork correspond à l'option nucléaire ,et la situation est telle que pour l'instant nous n'en avons pas besoin », résume l'un de ses membres.

59 commentaires
Avatar de Soriatane Abonné
Avatar de SoriataneSoriatane- 22/06/16 à 14:41:33

Un beau bordel.

Avatar de clacbec Abonné
Avatar de clacbecclacbec- 22/06/16 à 14:44:57

Je ne dois pas être le seul a ne pas avoir compris grand chose

Avatar de Xaelias INpactien
Avatar de XaeliasXaelias- 22/06/16 à 14:45:18

Moi ce qui me fait marrer c'est que les mecs ont perdu à leur propre jeu, et cherchent quand même à faire croire que le méchant c'est le mec qui a trouvé la faille dans leur truc...
Ils ont joué, et ils ont perdu. Bien fait pour eux.

Avatar de Minikea INpactien
Avatar de MinikeaMinikea- 22/06/16 à 14:46:17

c'est clair que réussir un tel hold up sur la base d'un bug d'écriture, c'est moche.
comment l'attaquant peut-il réutiliser à l'infini un contrat pour piquer des thunes auquel il ne devrait pas avoir accès?

Avatar de Xaelias INpactien
Avatar de XaeliasXaelias- 22/06/16 à 14:47:07

clacbec a écrit :

Je ne dois pas être le seul a ne pas avoir compris grand chose

Quelque chose me dit que c'est parce que les mecs qui ont créé le système ont fait leur possible pour le rendre obscure, et ainsi pouvoir se faire du fric facilement, entre autre en passant sur le modèle de rente mentionné dans l'article.

Avatar de anonyme_f6b62d162990fde261db0e0ba2db118e Abonné

Intéressant le débat entre "le code fait foi" et "vol". Je me garderai bien de prendre position :D

Est-ce qu'ils voient la blockchain comme un mécanisme/outil au lien fort avec l'économie réelle, ou est-ce qu'elle ne doit obéir qu'à ses règles propre...et redéfinir celles qui existent?

Faudrait le mettre au bac en philo dans la filière éco.

Avatar de Toorist INpactien
Avatar de TooristToorist- 22/06/16 à 14:50:18

https://www.ethereum-france.com/smart-contract-ou-le-contrat-auto-executant/
le contrat c'est le truc clef. Mais effectivement c'est assez relou a comprendre...

En tout cas je suis mitigé... Dans un sens, effectivement le code fait foi, ils sont baisés. Dans l'autre sens, c'est un bug exploit donc il faut le fix et annuler le bordel. Toujours est il que c'est une bonne preuve que le décentralisé sans autorité supérieure ca peut foutre la merde. (Merci les britons pour ce fuc\*\*\*\* Brexit et votre droit à l'autodétermination, tout le monde claque des fesses dans ma boite)
Édité par Toorist le 22/06/2016 à 14:51
Avatar de Nozalys Abonné
Avatar de NozalysNozalys- 22/06/16 à 15:04:28

clacbec a écrit :

Je ne dois pas être le seul a ne pas avoir compris grand chose

Non tu ne l'est pas ... j'ai beau m'intéresser aux monnaies virtuelles, là j'ai relu 2 fois l'article et parcouru quelques liens sourcés, je n'y comprends rien du tout :craint:

"Il s'agit d'un concept d'entreprise autonome et décentralisée propre à la blockchain d'Ethereum. Elle n'a aucune existence juridique, n'emploie aucun personnel" J'ai commencé à beuguer là....

Édité par Nozalys le 22/06/2016 à 15:07
Avatar de darkbeast Abonné
Avatar de darkbeastdarkbeast- 22/06/16 à 15:14:00

Nozalys a écrit :

Non tu ne l'est pas ... j'ai beau m'intéresser aux monnaies virtuelles, là j'ai relu 2 fois l'article et parcouru quelques liens sourcés, je n'y comprends rien du tout :craint:

"Il s'agit d'un concept d'entreprise autonome et décentralisée propre à la blockchain d'Ethereum. Elle n'a aucune existence juridique, n'emploie aucun personnel" J'ai commencé à beuguer là....

En gros c'est de monter une boite et faire de la tune sans qu'aucun service d’impôts dans le monde ne viennent leur ponctionner de la tune et ne puisse savoir qui gagne quoi.

Avatar de maxxyme INpactien
Avatar de maxxymemaxxyme- 22/06/16 à 15:22:19

Ah super, voici l'article !!! :D

Perso ce qui me chagrine, c'est le "contenu" des (smart) "contrats".
Parce que finalement ce n'est que du code informatique... donc qu'est-ce qu'il fait... mystère.

Sans compter que pour la fameuse DAO, il y avait 2 choix : construire des véhicules électriques ou développer une blockchain pour l'IoT... et donc je ne vois pas très bien comment le lien se ferait !

Il n'est plus possible de commenter cette actualité.
Page 1 / 6