Skip to content

Repository files navigation

OpenSec ExploitBench V8 PoC Skill

An installable Pi and Agent Skills package for developing evaluator-verified JavaScript and WebAssembly PoCs in authorized ExploitBench bench-v8 episodes.

The skill starts from the episode's patch and pinned V8 source, builds the smallest reliable trigger, uses the capability grader as the source of truth, and progressively develops real exploitation primitives. Detailed V8 knowledge is loaded by attack family instead of placing a large checklist in every model turn.

Install

Install the tagged Git release:

pi install git:github.com/opensec-git/exploitBenchSkill@v1.0.0

Start a new Pi session or run /reload, then invoke:

/skill:exploitbench-v8-poc

The skill requires an authorized bench-v8 MCP episode exposing setup, source and shell access, workspace writes, and grade. It does not create the ExploitBench-to-Pi adapter or grant authorization to test unrelated targets.

What it covers

  • Source-first V8 root-cause analysis and attack-family routing.
  • Ignition, Sparkplug, Maglev, TurboFan, Turboshaft and backend tier isolation.
  • Maps, inline caches, elements, backing stores, tagged values and pointer compression.
  • Torque, CSA/TSA, runtime and architecture-specific builtins.
  • WebAssembly decoding, canonical types, wrappers, Liftoff, optimized Wasm and WasmGC.
  • GC, handles, concurrent compilation, SharedArrayBuffer/Atomics and lifetime defects.
  • Snapshots, code caches, RegExp, strings, JSON and specialized parser surfaces.
  • Addrof/fakeobj, caged and process-memory primitives, information leaks, PC control and ACE.
  • Multi-round reliability, exact grader contracts, preserved PoC variants and evidence-led failure triage.

Incremental learning with Mem0

Mem0 is optional. Install its Pi plugin separately:

pi install npm:@mem0/pi-agent-plugin

Provide MEM0_API_KEY through your environment. For focused skill-controlled learning, configure the plugin with autoCapture: false, contextInjection: false, and defaultScope: "project". Start episodes from the same harness Git root to share successful techniques, failed hypotheses and grader lessons across samples.

Memory is used after the current patch establishes the attack family. Current source, runtime evidence and grade() override stale memory.

Knowledge layout

Resource Loaded when
SKILL.md Every skill invocation; contains only the execution loop and critical invariants
V8-ATTACK-CLASSES.md Selecting the primary subsystem and broken invariant
V8-EXPLOIT-FOUNDATIONS.md Establishing the matching engine, representation or architecture model
V8-POC-PATTERNS.md Constructing or debugging the current trigger
V8-PRIMITIVE-ENGINEERING.md Converting deterministic corruption into the next graded primitive
MEM0-LEARNING.md Recalling and recording cross-sample lessons when Mem0 is available

Benchmark boundary

This package does not contain reference exploits, hidden benchmark artifacts, fixed V8 offsets or grader bypasses. Historical techniques are hypotheses only; the checked-out revision and immutable grader binaries decide the result. Memory-assisted runs should retain a distinct harness identity and memory-policy label when compared with ExploitBench's stock model loop.

Validate

npm test
python3 /path/to/skill-creator/scripts/quick_validate.py skills/exploitbench-v8-poc

Behavioral cases live in evals/evals.json. Description-trigger cases live in evals/trigger-evals.json. For meaningful performance claims, run fixed-revision with-skill and baseline evaluations using the same model, budget, tools and execution policy.

Sources and license

The methodology follows Pi Skills, Pi Packages, and the Agent Skills specification. V8 and ExploitBench sources remain authoritative for their respective runtime and grader behavior.

Copyright 2026 OpenSec. Licensed under Apache-2.0. See LICENSE and THIRD_PARTY_NOTICES.md.

About

Pi skill for evaluator-verified V8 PoC development in authorized ExploitBench bench-v8 episodes

Topics

Resources

Contributing

Security policy

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages