锈迹斑斑的网页汇编具有Rust的优点?

问题描述 投票:1回答:1

转换为Webassembly时使用什么语言,这很重要吗?

例如,对于安全性和Rust,C没有相同的解决方案。

例如,用C语言编写的程序转换为Webassembly的程序是否“安全”?

rust webassembly
1个回答
0
投票

虽然WASM本身可以阻止某些攻击,但是C到WASM程序中仍然存在Rust不可能或难以利用的许多攻击。 WASM中至少存在以下攻击媒介:

  • 整数上溢/下溢:那些是C中的UB,但在Rust中定义。
  • 缓冲区溢出:WASM使用线性存储器。 Rust防止缓冲区溢出,这些溢出在C中为UB。
  • 免费使用后:不可能具有安全的Rust,在C中很常见。

无论是使用C还是Rust作为源语言,使用WASM都不应该进行其他攻击:

  • 任意操作系统级别的代码执行:WASM根本没有这些代码。
  • WASM中不需要可执行空间保护。

使用这些攻击媒介的唯一方法是在浏览器本身中找到漏洞。

© www.soinside.com 2019 - 2024. All rights reserved.