Chaque mois, Luker, directeur de la sécurité chez MetaMask, fait le point sur les dernières attaques crypto et les risques émergents à connaître.
En octobre 2022, le projet Endo a publié SES v0.17.0, intégrant le très attendu refactoring de l'évaluateur dit « quadruple backflip » qui permet à LavaMoat de supprimer ses correctifs SES personnalisés, tandis que LavaMoat lui-même a ajouté le global scuttling et une API programmatique. Du côté des menaces, Socket.dev a divulgué la technique de confusion de scripts bin npm — une attaque de la chaîne d'approvisionnement qui détourne des commandes CLI légitimes via le champ bin d'un package — contre laquelle @lavamoat/allow-scripts était déjà positionné pour apporter une protection. MetaMask a également pris la parole à la Devcon VI de Bogota avec deux conférences sur la sécurité, publié l'analyse approfondie de Gal Weizman sur les realms JavaScript, et réuni plus de 4 000 participants à un appel communautaire sur les fondamentaux de la sécurité. Le détail complet est ci-dessous, mais d'abord...
Pionnière STEM à l'honneur : Frances Allen, pionnière de l'optimisation des compilateurs
Frances Allen (1932–2020) était une informaticienne américaine qui a ouvert la voie dans le domaine de l'optimisation des compilateurs — la science de la transformation automatique du code pour le rendre plus rapide et plus efficace — et a apporté des contributions fondamentales à l'analyse de programmes et au calcul parallèle au cours de ses décennies passées chez IBM. En 2006, elle est devenue la première femme à recevoir le prix Turing de l'ACM. L'analyse approfondie de la compilation et de l'exécution des programmes que Frances Allen a initiée constitue le même socle sur lequel des outils comme SES et LavaMoat s'appuient pour raisonner sur le code non fiable, l'isoler et le contraindre.
SES v0.17.0 intègre le refactoring de l'évaluateur « quadruple backflip » pour Endo
Le projet Endo a publié SES v0.17.0, qui inclut le refactoring « quadruple backflip » de l'évaluateur du shim SES en une pile de portées multicouches. Ce refactoring corrige un problème par lequel le proxy de portée pouvait fuir et sépare les préoccupations distinctes de la gestion de la portée globale en couches discrètes. Un avantage clé en aval : LavaMoat peut désormais utiliser le shim SES non modifié sans maintenir ses propres correctifs. Des travaux parallèles se sont poursuivis pour introduire des politiques de style LavaMoat dans le mappeur de compartiments d'Endo, la preuve de concept actuelle prenant en charge un contrôle granulaire des variables globales et des built-ins par package, y compris l'atténuation programmatique des API built-in.
Socket.dev divulgue la confusion de scripts bin npm comme vecteur d'attaque de la chaîne d'approvisionnement
La société de recherche en sécurité Socket.dev a publié une divulgation sur la confusion de scripts bin npm, une technique par laquelle un package npm malveillant utilise son champ bin pour masquer ou détourner des commandes CLI légitimes — y compris node lui-même — lorsqu'il est installé aux côtés de packages de confiance. L'attaque est plus difficile à détecter que les compromissions classiques de la chaîne d'approvisionnement, car elle exploite un comportement de conception dans la liaison de packages npm plutôt que d'injecter du code malveillant dans des modules existants. La position de GitHub est que ce comportement fonctionne comme prévu. Le @lavamoat/allow-scripts de LavaMoat était déjà positionné pour atténuer cette classe d'attaques en contrôlant quels packages sont autorisés à exécuter des scripts d'installation.
LavaMoat introduit le global scuttling et une API programmatique
LavaMoat a livré 3 mises à jour clés en octobre 2022. Le global scuttling capture les références globales nécessaires à l'attribution basée sur les politiques, puis supprime les références originales de la portée globale, empêchant les packages de transmettre accidentellement des références indirectes à des API puissantes. Une nouvelle API programmatique (require('lavamoat')) permet aux développeurs d'intégrer LavaMoat directement dans les applications et scripts Node.js plutôt que de l'utiliser uniquement comme outil CLI. La dernière version de @lavamoat/allow-scripts a également ajouté une prise en charge prête à l'emploi pour la configuration des projets basés sur Yarn 3.
MetaMask présente deux conférences sur la sécurité à la Devcon VI de Bogota
MetaMask a présenté 2 exposés axés sur la sécurité lors de la Devcon VI à Bogota, en Colombie, en octobre 2022. Antonela Debiasi a présenté « Usable Security in web3 » sur la scène principale, abordant le défi d'équilibrer sécurité et utilisabilité dans la conception de portefeuilles auto-dépositaires pour favoriser une adoption plus large. Kumavis (co-fondateur de MetaMask et responsable de la recherche en sécurité) a présenté « The Attacker is Inside: Javascript Supplychain Security and LavaMoat », expliquant comment LavaMoat se défend contre les attaques de la chaîne d'approvisionnement JavaScript dans l'écosystème crypto.
Gal Weizman publie une analyse approfondie sur les realms JavaScript et la sécurité des navigateurs
Le contributeur de LavaMoat, Gal Weizman, a publié « What is a realm in JavaScript? », une analyse technique approfondie sur les environnements d'exécution dans lesquels les programmes JavaScript fonctionnent. L'article explique comment les attaquants exploitent les realms créés par des iframes pour accéder à des API natives non altérées, contournant ainsi les politiques de sécurité appliquées à la fenêtre de niveau supérieur — la surface d'attaque exacte que l'outil Snow de LavaMoat a été conçu pour combler.
L'appel communautaire de MetaMask sur les fondamentaux de la sécurité réunit plus de 4 000 participants
L'équipe communautaire de MetaMask a organisé un appel sur les fondamentaux de la sécurité couvrant les pratiques de sécurité essentielles pour les utilisateurs de portefeuilles auto-dépositaires. Plus de 4 000 participants ont pris part à la session en direct, qui a abordé des sujets tels que la sécurité de la phrase de récupération secrète, la reconnaissance du phishing et la vérification des transactions.
Le rapport de sécurité crypto d'octobre 2022 de MetaMask a couvert la publication de SES v0.17.0 intégrant le refactoring de l'évaluateur « quadruple backflip », la divulgation par Socket.dev de la confusion de scripts bin npm comme vecteur d'attaque de la chaîne d'approvisionnement exploitant la conception de liaison de packages npm, ainsi que l'introduction par LavaMoat du global scuttling pour prévenir les fuites de références indirectes vers des API puissantes. Consultez les éditions précédentes du rapport de sécurité crypto MetaMask pour découvrir d'autres menaces, tendances et conseils pour rester en sécurité dans l'écosystème.