Back to blogs

Security Testing / WebAssembly

Bug and vulnerability discovery in WebAssembly runtimes

A differential testing framework for WebAssembly runtimes that compares behavior across Wasmtime, Wasmer, and V8.

Sajid presenting the WebAssembly vulnerability testing project
Presenting the WebAssembly runtime testing project and the security engineering workflow behind it.

Project objective

The goal was to build an end-to-end differential testing framework that executes the same WebAssembly program across multiple runtimes, captures execution behavior, normalizes runtime-specific outputs, and detects behavioral mismatches.

WebAssembly differential testing framework cover slide
The original project cover slide: turning runtime behavior into structured, comparable, and analyzable security-testing artifacts.

What the framework captures

Why differential testing works

If multiple runtimes receive the same input but produce different categories of behavior, that mismatch becomes a signal worth investigating. The value is not just running tests; it is creating a pipeline where mismatches can be minimized, reproduced, and analyzed.

This kind of security engineering sits at the boundary of systems, testing, and developer tooling: build a harness, generate realistic inputs, compare behavior, and package results so bugs become actionable.

Deep-dive artifact: view the WebAssembly vulnerability testing PDF.

Discussion

React or ask a follow-up

Comments and reactions are powered by GitHub Discussions under the connectwithsajid brand.