Skip to content

🤖 Cross-platform browser for automation testing: Cloudflare, Akamai, Kasada, Shape, DataDome, PerimeterX, hCaptcha, FunCaptcha, Imperva, reCAPTCHA, ThreatMetrix, Adscore

License

Notifications You must be signed in to change notification settings

botswin/BotBrowser

Repository files navigation

🤖 BotBrowser

Professional Cross-Platform Browser with Unified Fingerprint Technology 🚀

Identical fingerprints on any OS • Cross-platform compatibility • Validated against 31+ detection systems for research benchmarking

Latest Release Commit Activity Issues GitHub Forks GitHub Stars

BotBrowser GUI - Your Command Center

📖 What Is BotBrowser?

BotBrowser delivers identical browser fingerprints across all platforms. Run the same profile on Windows, macOS, or Linux and you'll see the exact same fingerprint every time.

Designed for automation testing, cross-platform compatibility validation, and maintaining consistent browser environments in authorized research and defensive benchmarking settings. Review the project Legal Disclaimer and Responsible Use Guidelines before using the software.


🏆 Why BotBrowser

What makes BotBrowser different: Cross-platform browser with unified fingerprint technology that keeps fingerprints identical everywhere.

High-fidelity Profile Simulation – Synthetic/aggregated profiles for realistic, policy-compliant testing Latest Chromium Base – Always synced to newest stable Chrome for zero fingerprint drift
Zero-Config Intelligence – Auto-detects timezone/locale/language from IP Advanced Programmatic ControlPlaywright/Puppeteer integration with CDP leak blocking
Network Stack Parity – Browser-level proxies keep geo signals consistent Full-Proxy QUIC/STUN – Chromium-level UDP associate keeps QUIC/STUN proxied; ICE presets only needed when UDP is unavailable (ENT Tier3 feature, see Network Fingerprint Control)

📱 Cross-Platform Fingerprint Consistency

  • Single profile, every host OS: identical UA, screen metrics, touch surfaces, fonts, and device APIs on Windows/macOS/Linux + Android emulation.
  • Built-in automation handles touch simulation, device metrics, and locale/timezone detection from the proxy IP while still allowing CLI overrides when you truly need them.
  • Quick demos: ▶️ CreepJS Android▶️ Iphey▶️ Pixelscan

🚀 Getting Started

⚙️ Quick Start

Step 1: Download

Step 2: Launch (⚠️ use absolute paths)

  • Windows example:
    chrome.exe --no-sandbox --bot-profile="C:\absolute\path\to\profile.enc" --user-data-dir="%TEMP%\botprofile_%RANDOM%"
  • macOS/Linux commands follow the same pattern; see INSTALLATION.md for full instructions.

Step 3: Verify

  • Visit CreepJS or your preferred test harness to confirm identical fingerprints.
  • Timezone/locale/language auto-derive from your proxy/IP; override via CLI only when needed.

📖 Complete Installation Guide →

🔬 Minimal Playwright Example

const browser = await chromium.launch({
  headless: true,
  executablePath: BOTBROWSER_EXEC_PATH,
  args: ['--no-sandbox', `--bot-profile=${BOT_PROFILE_PATH}`],
  '--proxy-server="socks5://usr:pwd@127.0.0.1:8989"',  // or: "http://usr:pwd@127.0.0.1:8989"
});
const page = await browser.newPage();
await page.addInitScript(() => { delete window.__playwright__binding__; delete window.__pwInitScripts; });
await page.goto('https://abrahamjuliot.github.io/creepjs/');

Notes:

  • Use --user-data-dir with a unique temporary folder to avoid conflicts with running Chromium instances
  • Prefer --proxy-server or per‑context proxies (ENT Tier1); auto timezone/locale detection applies in both cases
  • Avoid framework‑specific proxy/auth options (e.g., page.authenticate()), which bypass BotBrowser geo detection
  • socks5h:// is supported when you need hostnames resolved by the proxy

Examples: PlaywrightPuppeteer

More options:

🛠️ Advanced Capabilities

Professional-grade browser technology through multi-layer fingerprint consistency, network-stack control, and automation-hardening.

  • Multi‑Layer Noise: Canvas/WebGL/WebGPU/Text/Audiocontext surfaces share deterministic, cross-worker noise with low-level Skia/HarfBuzz tuning
  • Automation Hardening: CDP/WebDriver artifact scrubbing, framework-less --bot-script, and console suppression PRO toggles keep detectors blind
  • Configurable Stack: 30+ CLI overrides, ENT Tier1 per-context proxies with auto geo, and session tooling (cookies/bookmarks/title/history)
  • Typography Fidelity: DOM text renders from embedded Windows/macOS/Android font packs so host fonts never leak during cross-OS simulation
  • Client Hints Lockstep: DPR/device-memory/UA-CH headers match JavaScript-visible values for airtight CH vs JS parity
  • Headless ↔ GUI Parity: Identical GPU/WebGPU/media signals across browser modes for stable automation baselines
  • Performance Controls: Precision FPS/memory timings plus ENT Tier1 timing/seed controls for reproducible benchmarks
  • Focus & Session Control: Always-active tabs, configurable ICE presets, and expanded media reporting keep sessions believable
  • Network Enhancements: ENT Tier1 per-context proxies, UDP-over-SOCKS5 (ENT Tier3), and SOCKS5H DNS-in-tunnel behavior for clean geo signals
Coverage Map: Detection Surfaces → Capabilities → Evidence

This map links common detection surfaces to BotBrowser capabilities and the exact docs/tests where they are demonstrated.

Detection Surface Capability Evidence
navigator.webdriver Removed/hidden at engine level ADVANCED_FEATURES#Chrome Behavior Emulation
JS Execution Isolation CDP/WebDriver artifact blocking ADVANCED_FEATURES#Playwright/Puppeteer Integration
Canvas/WebGL/WebGPU/Audio/Text metrics Deterministic noise + parameter controls and cross‑worker consistency ADVANCED_FEATURES#Graphics & Rendering Engine
WebGPU fingerprinting Canvas/WebGPU share deterministic noise so GPU-only probes like WebBrowserTools stay consistent CHANGELOG#2025-12-08
Fonts/Text Built-in fonts + HarfBuzz shaping ADVANCED_FEATURES#Cross-Platform Font Engine
DOM Font Enumeration DOM text renders from embedded Windows/macOS/Linux/Android font bundles; host fonts never leak ADVANCED_FEATURES#Cross-Platform Font Engine
MediaDevices Profile-based device spoofing Profile Configs
WebRTC SDP/ICE manipulation, candidate filtering ADVANCED_FEATURES#WebRTC Leak Protection
UA Congruence Brand + full-version alignment CLI_FLAGS#Profile Configuration Override Flags
UA Congruence Brand + full-version alignment CLI_FLAGS#Profile Configuration Override Flags
Client Hints vs JS metrics CH DPR/device-memory/UA-CH stay in lockstep with JavaScript-visible values ADVANCED_FEATURES#Browser & OS Fingerprinting
Headless Parity GPU/WebGPU/media signals stable ADVANCED_FEATURES#Headless & Incognito Compatibility
DNS Leaks SOCKS5 DNS-through-proxy ADVANCED_FEATURES#Enhanced Proxy System
HTTP Headers Chrome-like headers, HTTP/2/3 behavior ADVANCED_FEATURES#Chrome Behavior Emulation
TLS Fingerprint JA3/JARM/ALPN control (Roadmap) CHANGELOG

Fingerprint Consistency Matrix: Cross‑Platform Coverage

Category Sample Capabilities
Graphics Canvas/WebGL rendering, GPU micro-benchmarks, texture hash configuration
Network WebRTC SDP configuration, proxy auth, connection management
Platform Font fallback chains, cross-worker consistency, OS-specific features
Performance FPS simulation, memory timing, animation frame optimization

📖 Complete Advanced Features Documentation →


⚙️ Configuration & Profiles

📢 BotBrowser combines synthetic/aggregated profiles with flexible configuration for authorized research. Profile consistency and CLI settings enable comparative analysis.

  • Profile Foundation: Synthetic/aggregated profiles provide realistic fingerprint data for authorized testing
  • CLI Flexibility: Override profile settings at runtime without modifying encrypted files
  • Cross-Platform Compatibility: A macOS profile works on Ubuntu; a Windows profile works on macOS; an Android profile can be fully emulated on any OS
  • Auto-Configuration: Timezone, locale, and languages automatically detected from IP/proxy
  • CLI Flags: See the ⚙️ CLI flags reference - Recommended for most users

⚠️ Note: This project must only be used in environments you own or where you have explicit authorization. Use against third-party services without permission is strictly prohibited.


🖥️ BotBrowserConsole (GUI Tool)

Prefer a GUI launcher? See console/README.md for BotBrowserConsole usage, multi-instance management, and profile selection.


🎯 Research Validation

Academic Research Overview

Our compatibility research examines browser fingerprinting techniques across different client configurations to improve web compatibility and understand fingerprint consistency.

⚠️ Research demos in authorized environments. See DISCLAIMER.

Cloudflare ▶️ Turnstile Demo CreepJS ▶️ Desktop Test / ▶️ Android Profile
DataDome ▶️ FIFA2026 Demo FingerprintJS Pro ▶️ Bot Detection
PerimeterX ▶️ Zillow Demo Pixelscan ▶️ Comprehensive Scan

Cross-Platform Validation

  • Windows Profile on macOS: Fingerprint consistency maintained
  • Android Emulation on Desktop: Complete mobile API simulation
  • Headless vs GUI Mode: Identical fingerprint stability

📖 Complete Validation Results & Research Data → - 31+ detection systems, 15+ fingerprinting tools, statistical analysis


📖 Resources & Support

📄 Documentation

Document Description Content Preview
Installation Guide Platform-specific setup Windows/macOS/Ubuntu guides, Docker deployment, troubleshooting
Advanced Features Technical capabilities 30+ CLI flags, noise injection, GPU micro-benchmarks
Validation Results Research data 31+ detection systems, 50,000+ test sessions, statistical analysis
CLI Flags Reference Command-line options --bot-config-* flags, proxy auth, session management
Profile Configuration Profile customization Fingerprint control, cross-platform compatibility
BotCanvasLab Canvas forensics tool Canvas 2D recording with JSONL viewer (deterministic replay under development)
Examples Code samples Playwright, Puppeteer, bot-script automation

🔗 Quick Access

Framework Integration:

Profile Management:

🆘 Support Channels

📧 EmailTechnical questions, source code accessbotbrowser@bk.ru
📱 TelegramCommunity support, quick questions@botbrowser_support

🏗️ Building from Source

For advanced users who want to build BotBrowser from source:

  1. Requirements: Linux build environment, Chromium build tools
  2. Source Access: Available to qualified researchers and institutions

Contact botbrowser@bk.ru for source code access and compilation instructions.

🐞 Debugging & FAQs

Issue Platform Solution
STATUS_ACCESS_VIOLATION Windows Add --no-sandbox flag when launching
"Chromium" is damaged macOS Run xattr -rd com.apple.quarantine /Applications/Chromium.app
Missing dependencies Ubuntu Run sudo apt-get install -f
Profile file permission errors All Ensure .enc file has read permissions (chmod 644)
BotBrowser won't start or crashes All Check that your OS and Chromium version match the build; update BotBrowser to the latest release

🛡️ Responsible Use

  • Review the detailed Responsible Use Guidelines and Legal Disclaimer before requesting binaries or premium profiles.
  • Maintain written authorization for every environment you test, and record the synthetic data sets you rely on.
  • Contact the maintainers at botbrowser@bk.ru if you observe suspicious activity or need to report an abuse incident.

📋 Legal Disclaimer & Terms of UseResponsible Use Guidelines. BotBrowser is for authorized fingerprint-consistency testing and research only.