How proofofbots/web-re-toolkit works
web-re-toolkit combines headless Akamai and Kasada protection clients with a Rust reverse-engineering toolkit. The primary workflow is to capture a browser run, analyze and execute vendor JavaScript in a V8 sandbox, then inspect or validate the resulting payload and behavior. Separate capabilities cover VM lifting, wire-format analysis, environment and device profiles, and cross-build identification. The README documents the workflows; sampled source confirms selected runtime and CLI entry points, but many subsystem internals were not inspected.
Main entry points: main.rs wre CLI · src/session.rs Akamai client · src/session.rs Kasada client · install.rs V8 browser surface
Components 26
Protection clients
- Akamai client
clients/akamai/src/session.rs - Akamai sensors
clients/akamai/src/sensor.rs - Akamai discovery
clients/akamai/src/discover.rs - Akamai cookies
clients/akamai/src/cookies.rs - Kasada client
clients/kasada/src/session.rs - Kasada discovery
clients/kasada/src/discover.rs - Kasada reports
clients/kasada/src/report.rs - ALTCHA client
clients/altcha/src/lib.rs - Browser transport
crates/wre-net/src/http.rs
Browser runtime
- Browser capture
crates/wre-capture/src/collector.rs - Chrome CDP
crates/wre-cdp/src/session.rs - V8 browser surface
crates/wre-sandbox/src/install.rs - Device profiles
crates/wre-sandbox/src/browser.rs - Embedded V8 realm
crates/wre-live/src/realm.rs
Reverse engineering
- wre CLI
crates/wre-cli/src/main.rs - JavaScript deobfuscation
crates/wre-js/src/pipeline.rs - VM lifting
crates/wre-vm/src/lift.rs
Analysis and validation
- Proof of work
crates/wre-pow/src/search.rs - Wire analysis
crates/wre-wire/src/payload.rs - Build identification
crates/wre-ident/src/locate.rs - Variant sweeps
crates/wre-variants/src/grouping.rs - Payload grading
crates/wre-oracle/src/fidelity.rs
Client SDK
- Headless client SDK
crates/wre-client/src/client.rs - Client host
crates/wre-clientd/src/hub.rs - Client codegen
crates/wre-codegen/src/lib.rs
Other components
- Researcher
Connections 26
- Researcher → wre CLI: runs commands
crates/wre-cli/src/main.rs - Researcher → Akamai client: uses client
README.md - wre CLI → Browser capture: captures run
README.md - wre CLI → JavaScript deobfuscation: deobfuscates script
README.md - wre CLI → VM lifting: lifts VM
README.md - wre CLI → Wire analysis: inspects payload
README.md - wre CLI → Build identification: locates builds
README.md - wre CLI → Variant sweeps: plans sweeps
README.md - wre CLI → Payload grading: grades payload
README.md - wre CLI → Device profiles: captures profiles
README.md - Browser capture → Chrome CDP: drives browser
README.md - Akamai client → Akamai discovery: discovers page
clients/akamai/src/session.rs - Akamai client → Akamai cookies: uses cookie jar
clients/akamai/src/session.rs - Akamai client → Akamai sensors: runs sensor
README.md - Akamai client → V8 browser surface: runs headlessly
README.md - Kasada client → Kasada discovery: discovers page
clients/kasada/src/session.rs - Kasada client → Kasada reports: collects reports
clients/kasada/src/session.rs - Kasada client → V8 browser surface: runs headlessly
README.md - ALTCHA client → Proof of work: solves challenge
clients/altcha/src/lib.rs - Akamai client → Browser transport: sends requests
- Kasada client → Browser transport: sends requests
- V8 browser surface → Embedded V8 realm: hosts realm
- JavaScript deobfuscation → Embedded V8 realm: mounts script
README.md - Researcher → Headless client SDK: calls operations
README.md - Headless client SDK → Client host: uses sidecar
README.md - Client codegen → Headless client SDK: generates clients
README.md