Era lend : le protocole de zkSync a été piraté pour 3.4 millions de dollars

Antoine Palloteau
| 3 min de lecture

Le protocole de prêt Era Lend, basé sur le layer 2 d’Ethereum, zkSync, a été piraté ce mardi 26 juillet. Le hacker a utilisé une faille dans le code du projet et est reparti avec la modique somme de 3,4 millions de dollars à en croire la société de sécurité/audit blockchain BlockSec

Une attaque au niveau du contrat intelligent 

Avant de rentrer dans les détails techniques de l’attaque perpétrée hier, rappelons que le protocole de prêt Era Lend est un fork du projet Synswap, les deux entités ayant donc du code en commun et par conséquent des failles similaires. 

L’attaque a eu lieu au niveau du smart contract (contrat intelligent) sur lequel tourne Era Lend et plus précisément au niveau d’un oracle de prix. Selon plusieurs obesrvateurs, et notamment la société d’audit blockchain BlockSec ou encore la société de sécurité Certik, il s’agirait d’une attaque de réentrance en lecture seule

Il s’agit d’une attaque sur un contrat intelligent dans lequel un attaquant peut appeler une fonction du contrat plusieurs fois avant que la fonction ne soit terminée. Cela peut être fait en appelant la fonction à partir d’une autre fonction qui est elle-même appelée par la fonction vulnérable.

L’attaquant peut alors utiliser la fonction vulnérable pour modifier des données dans le contrat intelligent avant que la fonction ne soit terminée, ce qui peut entraîner une perte de fonds ou d’autres dommages.

Sur Twitter, l’observateur blockchain Spreek explique qu’avec “les jetons LP Syncswap, on peut burn, puis rappeler les jetons avant que la fonction “update_reserves” ne soit exécuté. L’oracle utilise donc une valeur de réserve incorrecte pour calculer le prix, ce qui a pour effet de gonfler le prix de l’oracle“. 

Selon EraLend, l’attaquant a ensuite utilisé des ponts et différents portefeuilles afin de disperser son butin sur 3 blockchains différentes et 8 adresses au total.

Le mode opératoire a rapidement été identifié, les experts alertant donc sur cette faille dans le contrat intelligent et appelant à la vigilance de tous les protocoles construits sur Syncswap

EraLend souhaite récupérer les fonds le plus rapidement possible 

L’adresse utilisée par le hacker a vite été repérée, l’auteur de l’attaque ayant effectué deux transactions frauduleuses. EraLend a d’ailleurs réévalué le montant du hack à 2,76 millions de dollars, celui-ci ne concernant que le pool USDC. Dans un thead twitter, le protocole déclare : 

“Nous mobilisons toutes les ressources disponibles pour protéger notre précieuse communauté et nous accueillons avec plaisir toute aide de la part de la communauté. Si vous pouvez nous aider, n’hésitez pas à nous contacter. Nous vous tiendrons informés et vous remercions de votre soutien dans cette période difficile”.

Le protocole dit également travailler en étroite collaboration avec les autorités, les exchanges et des équipes de sécurité blockchain pour tenter de récupérer les fonds de ses 500k utilisateurs. En attendant un retour à la normale et pour empêcher tout dégât supplémentaire l’équipe derrière EraLend déclare avoir ” temporairement interrompu les emprunts, l’approvisionnement en USDC et l’approvisionnement en SyncSwap LP“.

Sources : EraLend , BlockSec