RepositoryRust
DarthMiaul

DarthMiaul/WasmQuay

Offline WebAssembly component inspection and capability-policy toolkit: decode, classify, gate and compare .wasm components. Rust workspace + TypeScript explorer, zero runtime dependencies.

0stars
0forks
2issues
0views

🛠️ WasmQuay — "Xưởng khô" cho WebAssembly component: inspect, classify, gate, compare 100% offline

Công cụ tĩnh phân tích capability của .wasm component, đối chiếu với policy deny-by-default, xuất JSON cho CI/CD — không chạy, không sandbox, zero dependency.

WasmQuay (micchr/WasmQuay) là một toolkit đa ngôn ngữ (Rust workspace + TypeScript explorer) được thiết kế để trả lời một câu hỏi cốt lõi: component .wasm này có thể làm gì với thế giới bên ngoài, và có được phép không? Nó giải mã binary WebAssembly thuần túy, phân loại mọi host import thành các capability domain (fs, env, clock, network, random, stdio, unknown), sau đó đánh giá chống lại policy văn bản đơn giản. Điểm thiết kế quan trọng: WasmQuay không execute, không instantiate, không sandbox — nó là static analyzer hoàn toàn, deterministic, offline, có thể audit. Exit code khác 0 khi vi phạm policy khiến nó trở thành candidate tự nhiên cho pre-commit hook hay CI step.

✨ Điểm nổi bật

  • Decode binary WASM thuần: Parse header \0asm, section table, import/export, custom name section — không cần runtime.
  • Phân loại capability tự động: Bucket từng import vào fs · env · clock · network · random · stdio · unknown, hỗ trợ cả WASI preview1 function names và preview2/component-model interface paths.
  • Policy deny-by-default: File policy văn bản đơn giản, per-domain allow-list; vi phạm = exit code != 0 (ví dụ: network bị DENY trả về exit code 3).
  • So sánh component (compat): Kiểm tra B có thể thay thế A an toàn không (substitutability) dựa trên capability set.
  • Đọc WIT-like manifest: Hỗ trợ subset interface manifest dạng WIT.
  • Xuất JSON ổn định + text đọc được: Dùng cho automation và đọc nhanh bởi người.
  • TypeScript explorer (wasmquay-explore): Library + CLI consume JSON report, tính risk score, reconcile findings — chỉ cần tsc, zero runtime dep.
  • Zero third-party crate (Rust) / zero runtime dep (TS): std-only và tsc-only — supply-chain risk tối thiểu.

💡 Vì sao đáng chú ý

WasmQuay giải quyết bài toán "trust but verify" cho WebAssembly component ở tầng build-time thay vì runtime. Thay vì tin vào sandbox hay capability-based runtime enforcement (thường phức tạp, nặng, khó audit), nó đưa việc kiểm tra capability lên static analysis — nhanh, deterministic, chạy offline, dễ nhúng vào CI/CD. Kiến trúc tách biệt rõ ràng: Rust core làm heavy-lifting decode/classify/policy/compat, TypeScript explorer làm presentation/risk scoring. Điều này phù hợp đặc biệt cho các team đang adopt WebAssembly Component Model / WASI preview2 và cần guardrail policy ở PR level mà không muốn kéo runtime dependency vào pipeline. Việc không execute code cũng loại bỏ toàn bộ attack surface liên quan đến malicious payload tại thời điểm inspect.


#WebAssembly #WASI #StaticAnalysis #Security #SupplyChainSecurity #Rust #TypeScript #CI #TiniX

Similar Projects

Discover other similar projects and AI models.

RepositoryTypeScript
morluto/rea

Reverse engineer anything with agents, from app behavior down to native binaries.

390.1k
Oct 26, 2026
RepositoryRust
GyulyVGC/sniffnet

Comfortably monitor your network traffic 🕵️‍♂️

41.7k
Oct 21, 2026
RepositoryRust
farion1231/cc-switch

A cross-platform desktop All-in-One assistant for Claude Code, Codex, OpenCode, OpenClaw, Grok Build & Hermes Agent. Only official website: ccswitch.io

148.9k
Oct 26, 2026
Modelsentence-similarity
sentence-transformers/all-MiniLM-L6-v2

all-MiniLM-L6-v2 This is a sentence-transformers(https://www.SBERT.net) model: It maps sentences & paragraphs to a 384 dimensional dense vector space and can be used for tasks like clustering or semantic search. Usage (Sentence-Transformers) Using t...

♥0
190.2M
Jun 1, 2026
RepositoryTypeScript
n8n-io/n8n

Fair-code workflow automation platform with native AI capabilities. Combine visual building with custom code, self-host or cloud, 400+ integrations.

208.6k
Oct 25, 2026
RepositoryPython
yt-dlp/yt-dlp

A feature-rich command-line audio/video downloader

202.5k
Oct 23, 2026
RepositoryShell
ohmyzsh/ohmyzsh

🙃 A delightful community-driven (with 2,500+ contributors) framework for managing your zsh configuration. Includes 300+ optional plugins (rails, git, macOS, hub, docker, homebrew, node, php, python, etc), 140+ themes to spice up your morning, and an auto-update tool that makes it easy to keep up with the latest updates from the community.

190.2k
Oct 25, 2026
RepositoryJavaScript
vercel/next.js

The React Framework

143.3k
Oct 25, 2026
RepositoryJavaScript
vercel/next.js

The React Framework

143.3k
Oct 25, 2026