Chapitre 11. Interface du système WebAssembly (WASI)
Cet ouvrage a été traduit à l'aide de l'IA. Tes réactions et tes commentaires sont les bienvenus : translation-feedback@oreilly.com
Je ne suis pas dans ce monde pour répondre à tes attentes, et tu n'es pas dans ce monde pour répondre aux miennes.
Bruce Lee
Certaines choses sont inutilement difficiles en WebAssembly en raison des objectifs de sécurité et de sûreté qui sont plus faciles sur d'autres plateformes. Lire dans le système de fichiers, écrire sur la console et manipuler des chaînes en mémoire sont toutes des activités simples dans un langage comme C, C++ ou Rust. On s'attend à ce qu'un système d'exploitation permette à un utilisateur disposant de privilèges suffisants de faire ces choses. Il n'y a pas de limites explicites et contextuelles.
Malheureusement, c'est aussi le problème qui se cache derrière la plupart des cybermenaces modernes telles que les attaques de phishing, l'escalade des privilèges, les attaques de la chaîne d'approvisionnement, et bien d'autres encore. Si un attaquant parvient à convaincre un utilisateur privilégié d'exécuter un code non fiable, il peut souvent lui voler l'accès à d'autres ressources qui ne lui sont pas dues. Des environnements sandbox existent pour empêcher cela, mais ils sont souvent lents, encombrants et contraignants pour les développeurs. WebAssembly veut résoudre ce problème, et il le fait de plusieurs façons. Fondamentalement, cependant, les modules WebAssembly n'ont accès ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access