untidetect-tools

repository·main·Indexed 23 days ago

https://github.com/thegp/untidetect-tools

A curated repository of tools for anti-detection, featuring anti-detect browsers (such as Camoufox and Dolphin-anty), detection testing suites for fingerprinting and automation, and stealth libraries for Puppeteer, Playwright, and Selenium. It includes resources for humanizing automation movements, Chrome launch arguments for improved stealth, and best practices for evading browser detection and JS Worker analysis.

Tokens
1.6K
Snippets
0
Records
8
Agent score
33%

What's inside untidetect-tools

  1. Understanding detection via JS Workers

    main

    Web Workers are a method used by websites to detect real browser data because object properties cannot be modified by extensions within a worker context.

    In a Worker, window, screen, and DOM access (including canvas) are not available. Detection focuses on:

    • Timezone: via Intl.DateTimeFormat().resolvedOptions().timeZone
    • Language: via navigator.language || navigator.userLanguage
    • User agent: via navigator.userAgent
    • Hardware Concurrency: via navigator.hardwareConcurrency
    • GPU data: via navigator.gpu (Note: exceptions exist for Linux and Firefox up to 30.01.2024).
  2. Verify Captcha and Score detection

    main

    Use these tools to check how your browser handles captchas and scoring:

    • ReCaptha score: Use antcpt.com/score_detector/ to see your reCaptcha score.
    • Cloudflare captcha: Use nowsecure.nl to check if you are passing Cloudflare challenges.
  3. Browse anti-detect browsers

    main

    The repository provides a curated list of anti-detect browsers categorized by their features, pricing, and automation support.

    Key indicators used in the list:

    • 😊: Automation is supported on the free plan.
    • 🙄: Automation is not supported on the free plan.

    Notable options include:

    • Camoufox: Launched via Python, based on Firefox (supports automation 😊).
    • Dolphin-anty: 5 free profiles, $89 for 100 (supports automation 😊).
    • Morelogin: 2 free, $9 for 10 profiles and 2 users (supports automation 😊).
    • BitBrowser: 10 free, 50/$9, antidetect from Hong Kong (supports automation 😊).
    • Bablosoft: Supports faking canvas via PerfectCanvas. For Puppeteer users, it is recommended to use puppeteer-with-fingerprints.
  4. Antidetection tips and best practices

    main

    Follow these guidelines to improve the success rate of automated scraping:

    • Use real Chrome: Instead of Chromium, use a separately downloaded version of Chrome and pass it via executablePath in Puppeteer.
    • Screen Dimensions: Emulating screen.availHeight and width via extensions can result in incorrect values. It is better to change the screen size on a virtual machine or use an anti-detect browser.
    • Disable WebRTC: When using proxies to mask a public IP, ensure WebRTC is disabled.
    • Header Matching: Ensure all browser headers match and appear in the correct order.
    • Global Scope Hygiene: Ensure no parts of your scripts are visible in the global scope (e.g., window.*), as some sites analyze this.
    • Navigation Patterns: Avoid going directly to a website without a referrer (like a Google search), as window.history.length can reveal this.
  5. Test browser fingerprinting and detection

    main

    To verify if your anti-detect setup is working, use the following categorized detection tests:

    General Fingerprinting

    • Creep JS: Advanced fingerprint information.
    • Pixelscan: Simple fingerprint checker.
    • Sannysoft Fingerprint: Check your fingerprint.
    • BrowserLeaks: Comprehensive fingerprint checks.

    Automation Detection

    • Rebrowser-bot-detector: Requires performing automation tasks to test detection.
    • Brotector: Advanced detector that may crash automation upon detection.
    • Behavioral Bot Classification: Tests behavioral patterns.

    Canvas & Audio Detection

    • Canvas inspector: Helps detect scripts on websites that draw canvases and audio.
    • Canvas Tampering Detection: Tests for canvas manipulation detection.

    Connection & Proxy Detection

    • ProxyDetect: Detects Proxy/VPN usage.
    • IPRoyal WebRTC leak: Detects WebRTC leaks.
    • ipQualityScore: Checks IP reputation (provides an API).
    • DnsLeakRest: DNS leak testing.
  6. Humanizing automation with realistic movements

    main

    To avoid detection by behavioral analysis, use libraries that simulate human-like interactions:

    • Fake-browser: Puppeteer-based with human-like interactions.
    • Bezier mouse movements: Uses bezierjs for smooth paths.
    • Definitely-not-a-robot: NPM package for humanization.
    • Puppeteer-Humanize: Humanization for Puppeteer.
    • Ghost-Cursor: Generates realistic, human-like mouse movement data between coordinates.
    • HumanCursor: Python package for simulating human mouse movements.
  7. Chrome launch arguments for anti-detection

    main

    When automating Chrome, use these specific flags to improve stealth:

    • --profile-directory=${dir_name}: Should be used in conjunction with userDataDir.
    • --accept-lang=en,en-US,: Note that th,en,en-GB,en-US only works on new profile directories.
    • --user-agent=${user_agent}: Properly changes the user-agent in both HTTP headers and the JS runtime.
    • --disable-extensions-except=${EXTENSION_PATH}: Disables all extensions except the one specified.
    • --load-extension=${EXTENSION_PATH}: Loads a specific extension.
    • --disable-site-isolation-trials: Helps detect all iframes on a page in Puppeteer; without this, frames from other domains are inaccessible.
    • --aggressive-cache-discard: Useful when allowing time for a debugger to attach or an extension to modify the environment.
    • --disable-gpu: Reduces canvas fingerprint detectability, though GPU vendor/renderer info will still be present.
  8. Anti-detect libraries for Puppeteer, Playwright, and Selenium

    main

    The repository provides a curated list of libraries to help evade browser detection across different automation frameworks:

    Puppeteer

    • Rebrowser: Provides an isolated environment.
    • Secure-puppeteer: Provides an isolated environment (Note: outdated, may cause issues with XPath).
    • Extra stealth: (Note: described as easily detected by CreepJS).
    • Bablosoft Fingerprints: Free and paid fingerprints.
    • Perfect Canvas (Bablosoft): Emulates real canvas data.
    • MouseEvent-Patcher: Patches .screenX and .screenY.
    • Imposter: Emulates human actions on the page (in development).

    Playwright

    • Rebrowser: Provides an isolated environment.
    • Playwright-ghost: Playwright with plugins for stealth.
    • Invisible-Playwright: Patched Firefox 150 + Playwright wrapper (MIT, self-hosted). Spoofs at the C++ level without JS injection.

    Selenium / Python

    • NoDriver: Successor to Undetected-chromedriver.
    • ZenDriver: A fork of NoDriver.
    • Undetected-chromedriver: (Note: outdated).
    • Pyautogui: Controls mouse and keyboard for OS-level automation.
    • Selenium-Driverless: Uses Selenium without chromedriver.

    Request Libraries (HTTP level)

    • Curl-impersonate
    • requests (for GO)
    • CycleTLS (NodeJS/GO)
    • curl_cffi (Python)
    • Got-Scraping (NodeJS)