WebAssembly

WebAssembly(wasm)是基于堆栈的虚拟机的二进制指令格式。wasm被设计为可编程C / C ++ / Rust等高级语言的可移植目标,可在Web上部署客户端和服务器应用程序。

安装 & 使用

  1. JEB反编译

  2. wabt

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    git config --global url."https://gitclone.com/".insteadOf https://
    git clone --recursive https://github.com/WebAssembly/wabt
    cd wabt
    git submodule update --init
    mkdir build
    cd build
    cmake ..
    cmake --build .

    ./wasm2wat wasm.wasm -o wasm.wat (反汇编)
    ./wasm2c wasm.wasm -o wasm.c (反编译,末尾字符串)
    gcc -c wasm.c -o wasm.o (优化,编译时需要wabt/wasm2c目录中的wasm-rt.h、wasm-rt-impl.c、wasm-rt-impl.h三个文件)
    1
    2
    3
    apt install wabt

    wasm-decompile wasm.wasm