Analysis updated 2026-05-18
Study how anti-bot detection SDKs generate browser fingerprint tokens
Learn a documented methodology for reverse engineering obfuscated JavaScript
Reference production-verified test results against real anti-bot protected APIs
Use the included AI playbooks and command-line tools with Claude Code for security research
| warterbili/perimeterx_re | amazingsyp/pokemon-ontology | binglehaepi/workingtable | |
|---|---|---|---|
| Stars | 21 | 21 | 21 |
| Language | JavaScript | JavaScript | JavaScript |
| Setup difficulty | hard | easy | easy |
| Complexity | 5/5 | 3/5 | 1/5 |
| Audience | researcher | researcher | general |
Figures from each repo's GitHub metadata at analysis time.
Requires deep familiarity with obfuscated JavaScript and cryptographic primitives to follow or extend the research.
This repository is a reverse engineering study of the PerimeterX SDK, an anti-bot and fraud detection product now operated by HUMAN Security. PerimeterX is widely deployed on e-commerce and food delivery platforms, when you visit a site that uses it, the SDK runs JavaScript in your browser that collects signals about your device and behavior, then generates tokens (called _px3 and _px2) that the site's backend checks before allowing requests to proceed. The study documents how those tokens are constructed so they can be generated algorithmically without a browser. The technical approach is pure-algorithm reconstruction: the project recreates the token generation logic in plain Node.js, with no browser, no headless Chrome, no Selenium. It identifies nine core cryptographic and encoding primitives shared across SDK versions and five additional primitives specific to the "bundle" delivery path. The end-to-end generation time is approximately 500 milliseconds. Production-verified results are shown against iFood (a Brazilian food delivery service) and Grubhub (a US food delivery service), with 10 out of 10 requests returning HTTP 200 from live production APIs in the most recent test run. The documentation is substantial: over 20,000 lines covering the SDK's two-path architecture (a lightweight collector path for most traffic and a heavier bundle path for flagged sessions), a 10-chapter methodology section describing the 7-stage reverse engineering workflow, 68 production gotchas that each cost at least an hour of debugging, mouse-track data samples, WebAssembly proof-of-work solutions, and a section on SDK upgrade triage for tracking drift across versions. The study spans three years of longitudinal observation. The repository also includes an AI skill with 9 playbooks and 14 command-line tools designed for integration with Claude Code and similar AI assistants. A browser userscript and a Plan B "env-patching" fallback path for cases where pure-algorithm generation is insufficient are also provided. The project is dual-licensed under AGPL-3.0 and CC BY-NC-SA 4.0 and includes an ethics and responsible disclosure section.
A reverse engineering study documenting how PerimeterX's anti-bot SDK generates its verification tokens, with a pure Node.js reimplementation and production test results.
Mainly JavaScript. The stack also includes JavaScript, Node.js, WebAssembly.
Dual licensed under AGPL-3.0 and CC BY-NC-SA 4.0, with restrictions on commercial use and a requirement to share modifications.
Setup difficulty is rated hard, with roughly 1day+ to a first successful run.
Mainly researcher.
This repo across BitVibe Labs
Verify against the repo before relying on details.