中文

TaintAssembly:面向WebAssembly的基于污点的信息流控制追踪

密码学与安全 2018-02-06 v1

摘要

WebAssembly(wasm)近来已成为一种颇具前景的、可移植、体积小、快速且安全的Web二进制格式。由于WebAssembly可自由与JavaScript库交互,这带来了发生不良行为的潜在可能。因此,能够检测此类情况何时发生十分重要。一种实现方式是污点追踪,即通过向数据施加污点标签来跟踪信息流。本文中,我们描述了TaintAssembly——一个为解释执行WebAssembly而建的污点追踪引擎,由我们修改V8 JavaScript引擎而成。我们实现了基础污点追踪功能、线性内存中的污点以及一种概率性污点变体。随后,我们将TaintAssembly引擎集成进Chromium构建中,并在自定义测试脚本与多种真实世界WebAssembly应用上对其进行基准测试。我们发现,相较于原生V8的解释执行WebAssembly,对V8引擎的修改未带来显著开销,使TaintAssembly适用于开发与调试。

关键词

引用

@article{arxiv.1802.01050,
  title  = {TaintAssembly: Taint-Based Information Flow Control Tracking for WebAssembly},
  author = {William Fu and Raymond Lin and Daniel Inge},
  journal= {arXiv preprint arXiv:1802.01050},
  year   = {2018}
}