你在使用哪种编程语言?快来投票,亲手选出你心目中的编程语言之王 了解详情
写点什么

新创立的字节码联盟宣布 WebAssembly 微进程提案,旨在安全使用非信任模块

2019 年 12 月 06 日

新创立的字节码联盟宣布WebAssembly微进程提案,旨在安全使用非信任模块

来自 Mozilla 的Lin Clark最近宣布创立字节码联盟(Bytecode Alliance)。字节码联盟是一个行业合作伙伴关系,旨在为 WebAssembly 生态系统提出和实现标准,以实现其在浏览器和其他环境中安全的发展。字节码联盟提出了微进程(nanoprocess),为运行第三方 Wasm 包提供了隔离和安全性。


为了进一步推动模块化 WebAssembly 生态系统,Mozilla、Fastly、英特尔和红帽公司携手成立了字节码联盟,为当前大量使用的第三方包可能存在的安全问题(例如恶意依赖、损坏的模块)提供补救措施。Clark 引述道,应用程序中大约有 80%的代码来自于包注册中心,例如npmPypycrates.io。这些第三方包加速了应用程序的创建,但是也引入了安全问题。开发人员信任这些第三方包,为它们授予和应用程序相同的能力(capabilities),但是这些能力可能会被恶意包用于意想不到的目的。Clark 警告道:


作为一个社区,我们必须要作出选择。WebAssembly 生态系统可以提供一个解决方案,至少,我们应该选择一种默认情况下安全的方式进行设计。如果我们不这么做,WebAssembly 可能会让问题变得更糟糕。

随着 WebAssembly 生态系统的发展,我们需要解决这个问题。由于这个问题太大,难以单独解决,这就是字节码联盟成立的原因。


通过微进程提案,可以让包运行在独立环境中,只拥有预先定义的限定能力。字节码联盟试图通过这种方式,寻求让来自恶意软件包的安全漏洞失效。Clark 解释道:


总之,我们将建立牢固安全的基础设施,无论这些不信任的代码运行在何处,都能保其安全性。它们可能会运行在云端、任何人的本地电脑,甚至在小型 IoT 设备上。

通过这个提案,开发者仍然可以通过相同的方式使用开源代码,保持和现在一样的高效,同时不会带来风险。


微进程构建于 WebAssembly 和WASI已有或者已提出的面向安全的特性上(例如 WebAssembly 的沙箱和内存隔离,WASI 的基于能力安全模型),通过允许给第三方包传递细粒度能力实现。


WASI 应用程序安全性由能力(capabilities)提供,而非使用标识资源的可伪造引用(例如文件路径),但是没有指定资源的访问权限。在 WASI 模型下,代码可以只访问传递给它的目录。因此,运行时可以将文件描述付传递给应用程序上层代码使用,同时这个文件描述付会按照最小使用原则传播到系统的其他部分。


微进程在此基础上更进一步,它允许将一个微进程将自己接收到的能力(来自于运行时或者其父微进程)的子集传递给它依赖的微进程。Clark 在官宣博客中描绘了一张机制图:



感兴趣的读者可以去官宣博客了解关于 WebAssembly 微进程和其他额外预期优势的详细介绍。


字节码联盟已经在一系列现有项目进行合作,包括 WebAssembly 运行时(WasmtimeLucet,、WebAssembly Micro Runtime),运行时组件(CraneliftWASI common)和语言工具(cargo-wasiwatwasmparser)。除此之外,字节码联盟还领导WASI标准和 Rust WebAssembly 工作组的工作。


字节码联盟有兴趣发展新成员并壮大联盟。感兴趣的团体可以给联盟发送电子邮件:hello@bytecodealliance.org


原文链接:


https://www.infoq.com/news/2019/11/wasm-nanoprocesses-security/


2019 年 12 月 06 日 08:001500

评论 1 条评论

发布
用户头像
@LLVM 怎么看?
2019 年 12 月 19 日 11:08
回复
没有更多了
发现更多内容

华为云会议的前世今生

华为云开发者社区

直播 云服务 华为云 视频编码 视频会议

面经手册 · 第7篇《ArrayList也这么多知识?一个指定位置插入就把谢飞机面晕了!》

小傅哥

Java 数据结构 小傅哥 面试题 ArrayList

从6大应用场景,看边缘计算落地生根

BoCloud博云

边缘计算 PaaS 容器云 云平台 博云

usdt承兑跑分系统开发,区块链支付跑分系统搭建

WX13823153201

usdt承兑跑分系统开发

分享一个阿里云轻量级开源前端图编排,流程图js组件——butterfly-dag

InfoQ_39ba186c207f

Java 流程图 flow canvas html/css

莱卡、宾利都在用,英特尔oneAPI渲染工具带来高质量视觉体验

新闻科技资讯

硬核科技:莱克立式吸尘器,引领家居清洁“新态度”

InfoQ_967a83c6d0d7

不得不了解系列之限流

梦朝思夕

限流

柔性电子拥有改变地球的能力吗?

脑极体

GitMaster 更新v1.9.0,支持Gitea,Gist拥抱黑暗模式

neo

gitlab tree gitee GitHub、

难以遏制的人因差错-Go的日志工具之痛

田晓亮

go 微服务

性能相关,内存

Linuxer

性能

温故知新——Spring AOP(二)

牛初九

spring aop ioc

MySQL redo与undo日志解析

Simon

MySQL Redo MySQL日志

我也没想到 Springboot + Flowable 开发工作流会这么简单

程序员内点事

java 14

GrowingIO AWS 成本优化之路

GrowingIO技术专栏

AWS 成本优化

LeetCode题解:155.最小栈,使用两个栈,详细注释

Lee Chen

LeetCode 前端进阶训练营

Luajit字节码分析之KSTR

whosemario

lua

零代码简史

明道云

SaaS

Docker 镜像构建之 Dockerfile

哈喽沃德先生

Docker 容器 微服务 容器技术 容器化

新金融分布式架构之SOFAStack解决方案

阿里云金融线TAM SRE专家服务团队

币期权DAPP 8月28日全球同步耀世上线,掀起币圈追捧热潮

InfoQ_967a83c6d0d7

软件开发丨关于软件重构的灵魂四问

华为云开发者社区

软件 开发者 软件开发 代码 软件重构

微服务架构下,DLI的部署和运维有何奥秘?

华为云开发者社区

Docker 大数据 Serverless 数据湖 DLI

“全球+”浪潮下,企业出海选择合适的“技术船舶”成关键

华为云开发者社区

网络 华为云 企业出海 网络加速 宽带

全民加速节:动态加速在在线教育应用上的最佳实践

阿里云Edge Plus

在线教育 CDN

炒股不要看K线图(分享最近学习投资的一点心得)

Nick

投资 理财

CRM企业到底该不该做PaaS?

ToB行业头条

PaaS SaaS CRM

云原生技术采用增加,全球60%后端开发人员都在使用容器 | 趋势分享

BoCloud博云

云计算 容器 云原生 PaaS 博云

oeasy教您玩转linux010106这儿都有啥 ls

o

ShardingSphere简介+实战

云淡风轻

ShardingJDBC

技术为帆,纵横四海- Lazada技术东南亚探索和成长之旅

技术为帆,纵横四海- Lazada技术东南亚探索和成长之旅

新创立的字节码联盟宣布WebAssembly微进程提案,旨在安全使用非信任模块-InfoQ