090baa6155
Alongside BotD and FingerprintJS, the detector e2e now runs two more FOSS client-side detectors against the binary, vendored and served from localhost so it stays offline on CI. fpscanner: assert its engine-agnostic bot rules (webdriver/ selenium/bot-UA/platform/timezone/language) are clean. CreepJS (the Firefox-aware one): runs fully offline via window.Fingerprint with every non-loopback request aborted, asserting headlessRating==0 and no JS-proxy stealth tell. The Chrome-only and GPU-sensitive signals are logged, not asserted, so a software-WebGL CI host doesn't false-red. Validated against firefox-10: full e2e 130 green.
25 lines
1.8 KiB
Markdown
25 lines
1.8 KiB
Markdown
# Vendored detection libraries (test-only)
|
|
|
|
These are upstream, unmodified, MIT-licensed browser-fingerprinting / bot-detection
|
|
libraries, vendored so the detector e2e tests run **hermetically and identically**
|
|
on a dev box and on a GitHub runner (no external CDN at test time — Firefox
|
|
tracking-protection blocks the openfpcdn.io CDN anyway, and we want CI offline).
|
|
|
|
They are served from a localhost HTTP server and loaded into the patched Firefox;
|
|
the tests assert the REAL detectors don't flag the stealth build (BotD: `bot===false`;
|
|
fpscanner: engine-agnostic rules clean; CreepJS: `headlessRating===0` + no JS-proxy
|
|
tells) and that the fingerprint is stable (FingerprintJS: same `visitorId` across
|
|
launches). CreepJS runs fully offline — the tests abort every non-loopback request,
|
|
so its optional crowd-comparison POST never fires and the verdict is computed locally.
|
|
|
|
| File | Package | Version | Source | License |
|
|
|---|---|---|---|---|
|
|
| `botd-2.0.0.esm.js` | `@fingerprintjs/botd` | 2.0.0 | https://cdn.jsdelivr.net/npm/@fingerprintjs/botd@2.0.0/dist/botd.esm.js | MIT |
|
|
| `fingerprintjs-5.2.0.umd.min.js` | `@fingerprintjs/fingerprintjs` | 5.2.0 | https://cdn.jsdelivr.net/npm/@fingerprintjs/fingerprintjs@5.2.0/dist/fp.umd.min.js | MIT |
|
|
| `fpscanner-1.0.6.es.js` | `fpscanner` | 1.0.6 | https://cdn.jsdelivr.net/npm/fpscanner@1.0.6/dist/fpScanner.es.js | MIT |
|
|
| `creepjs-10aa672.js` | `abrahamjuliot/creepjs` | git `10aa6724` | https://raw.githubusercontent.com/abrahamjuliot/creepjs/10aa6724cd33a1015db1574211890518cd04f0cc/docs/creep.js | MIT |
|
|
|
|
All MIT (FingerprintJS Inc. / Antoine Vastel / Abraham Juliot). To update: download
|
|
the pinned dist (jsdelivr for npm packages, raw.githubusercontent for CreepJS at a
|
|
commit SHA), drop it here, and bump the version in the filename + this table.
|