Anti-detection layer; bump to 1.1.0 #4
Loading…
Reference in a new issue
No description provided.
Delete branch "anti-detection-and-v1.1"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes the highest-value gap from the review: the spoofing was detectable as spoofing. This makes the hooks undetectable and fixes cross-surface leaks.
Anti-detection
toStringmasking —Function.prototype.toStringis patched so every method we wrap and every getter we install reportsfunction name() { [native code] }instead of its JS source. Each hook is registered with its exact native-looking string; ordinary user functions are unaffected.Navigator/Screen/Window/BaseAudioContext), soObject.getOwnPropertyDescriptor(navigator, 'userAgent')returnsundefinedlike an unspoofed browser instead of exposing an own accessor.matchOriginAsFallback: trueinjects intoabout:blank/srcdoc/blob:frames, closing the "readnavigatorfrom a fresh iframe" trick.getHours/getDate/getMonth/getDay/etc. now reflect the spoofed timezone, so they no longer contradictIntlandgetTimezoneOffset. (Getters only; setters stay native.)Version
Bumped 1.0.0 → 1.1.0 — features were added since 1.0.0, and this is the store-ready build.
Verification
scripts/verify.mjs— 23 checks, incl. native-code masking, prototype placement, and Date/timezone agreement.scripts/verify-options.mjs— 26 checks.Both pass;
compileandbuildclean.🤖 Generated with Claude Code