#2747·wabt

在 wabt 解释器二进制读取器中读取 OOB

作者: LuiginoC创建于 2026年5月27日更新于 2026年5月27日

Prerequisites

  • Docker installed and running
  • gcr.io/oss-fuzz/wabt image available (pull or use locally cached copy)

Step 1 — Save the PoC source

Save the following file as /tmp/poc_wabt_container_overflow.cc:

cpp
// Standalone PoC for wabt container-overflow in BinaryReaderInterp::BeginFunctionBody
//
// Root cause:
//   OnFunctionCount(N)  -> module_.funcs.reserve(N)  [size stays 0]
//   OnFunction(i, bad)  -> validator_.OnFunction() FAILS -> CHECK_RESULT early-returns
//                          push_back is never reached

内容来源: WebAssembly/wabt