slumps
slumps copied to clipboard
tools for WebAssembly
we collect open-source tools here
WABT: WebAssembly Binary Toolkit https://github.com/WebAssembly/wabt
Octopus: Security Analysis tool for WebAssembly module https://github.com/quoscient/octopus
WASABI: First tool for dynamic analysis of webassembly modules, implemented in RUST
Wasmer: a standalone WebAssembly runtime, for running WebAssembly outside of the Browser https://github.com/wasmerio/wasmer
A small and efficient runtime for WebAssembly & WAS https://wasmtime.dev/
https://github.com/bytecodealliance/wasmtime
A small and efficient runtime for WebAssembly & WAS https://wasmtime.dev/
On that topic, I also intend to add a WASI implementation to Swam, might be relevant for you as it also include security by capabilities.
https://github.com/xtuc/webassemblyjs
Hi @shrin18 WDYT? https://github.com/jcbeyler/wasm-to-llvm-prototype
for fun: Vim editor ported to WebAssembly https://github.com/rhysd/vim.wasm
TeaVM is an ahead-of-time compiler for Java bytecode that emits JavaScript and WebAssembly http://teavm.org/
Similar to TeaVM Java to WebAssembly compiler https://github.com/i-net-software/JWebAssembly
Lucet (the Sandboxing WebAssembly Compiler) Lucet is a native WebAssembly compiler and runtime. It is designed to safely execute untrusted WebAssembly programs inside your application. https://github.com/bytecodealliance/lucet
a) Web Assembly Studio: https://webassembly.studio/
b) WASM Explorer - Side by side comparison of WASM, LLVM with Firefox x86 programs https://github.com/mbebenita/WasmExplorer
WebAssembly to C decompiler https://github.com/wwwg/wasmdec https://wwwg.github.io/web-wasmdec/
Cool. To what extent is C the easiest target language for disassembling WASM?
SideFuzz is an adaptive fuzzer that uses a genetic-algorithim optimizer in combination with t-statistics to find side-channel (timing) vulnerabilities in cryptography compiled to wasm. https://github.com/phayes/sidefuzz
Cheerp: a C/C++ compiler for Web applications
Walrus is a WebAssembly transformation library https://github.com/rustwasm/walrus
GraalWasm a WebAssembly engine in GraalVM https://github.com/oracle/graal/tree/master/wasm
Gate: a WebAssembly runtime which can migrate live programs across CPU architectures https://savo.la/introduction-to-gate.html
ilwasm Maps a subset of .NET CIL to WebAssembly S-expressions. Implemented as a custom code generator backend for the JSIL CIL -> JS compiler.
WASM Binary file parser from Mozilla: https://github.com/bytecodealliance/wasmparser
Twiggy is a code size profiler for Wasm. It analyzes a binary's call graph to answer questions like:
- Why was this function included in the binary in the first place? Who calls it?
- What is the retained size of this function? I.e. how much space would be saved if I removed it and all the functions that become dead code after its removal.
Running LibFuzzer in a Browser, via WASM https://github.com/jonathanmetzman/wasm-fuzzing-demo/blob/master/meetup-Fuzzing-Native-Applications-in-Browsers-With-WASM.pdf
Fuzzing JavaScript WebAssembly APIs with Dharma/Domato (Chrome/v8) https://webassembly-security.com/fuzzing-wasm-javascript-dharma-chrome-v8/
inNative WebAssembly Runtime: inNative is an AOT (ahead-of-time) compiler for WebAssembly that creates C compatible binaries, either as sandboxed plugins you can dynamically load, or as stand-alone executables that interface directly with the operating system https://innative.dev/
wasm3/wasm3: 🚀 The fastest WebAssembly interpreter https://github.com/wasm3/wasm3
https://v8.dev/blog/emscripten-standalone-wasm