Navigator Properties Protection
The
navigatorobject is one of the most information-rich API surfaces in the browser. BotBrowser controls every property through its profile system to ensure internal consistency.
Prerequisites
- Familiarity with Browser Fingerprinting Explained.
- BotBrowser installed with a valid profile. See Installation.
Quick Start
chromium-browser \
--bot-profile="/path/to/profile.enc"Start with this launch to establish a clean baseline before adding extra overrides.
Overview
The navigator object is one of the most information-rich API surfaces in the browser. BotBrowser controls every navigator property through its profile system, ensuring internal consistency across JavaScript values, HTTP headers, and Worker contexts.
Configuration
Identity and Locale
# Browser brand (ENT Tier2)
--bot-config-browser-brand=chrome
# User-Agent version (ENT Tier2)
--bot-config-ua-full-version=146.0.7644.60
# Languages (ENT Tier1)
--bot-config-languages=en-US,en,de
# Locale (ENT Tier1)
--bot-config-locale=en-US
# Timezone (ENT Tier1)
--bot-config-timezone=America/New_YorkCustom User-Agent (ENT Tier3)
Build a complete, internally consistent browser identity:
--user-agent="Mozilla/5.0 (Linux; Android {platform-version}; {model}) ..."
--bot-config-platform=Android
--bot-config-platform-version=13
--bot-config-model=SM-G991B
--bot-config-architecture=arm
--bot-config-bitness=64
--bot-config-mobile=trueBotBrowser auto-generates matching Client Hints values (brands, fullVersionList with proper GREASE) and all corresponding HTTP headers. Values stay consistent across the main thread, workers, and HTTP requests.
Media Devices
# Use profile-defined synthetic devices (default)
--bot-config-media-devices=profile
# Use real system devices
--bot-config-media-devices=realNetwork Information
# Override network connection properties with profile values
--bot-network-info-overrideHow BotBrowser Provides Protection
BotBrowser controls all navigator properties at the browser engine level. Identity, hardware, locale, network, and media device information are all defined by the profile. JavaScript values, HTTP headers, and Worker contexts return identical, internally consistent values.
Common Scenarios
- Capture a baseline result using the Quick Start setup.
- Change one relevant setting at a time and compare the new output.
- Keep your final launch command documented so future checks are reproducible.
Troubleshooting / FAQ
| Problem | Solution |
|---|---|
| navigator.webdriver returns true | Verify BotBrowser profile is loaded correctly. BotBrowser handles this automatically when a profile is active. |
| Language doesn’t match proxy location | Use --proxy-server (not framework proxy) for auto-detection, or set --bot-config-languages manually. |
| UA-CH headers don’t match JavaScript values | This should not happen with BotBrowser. Verify profile is loaded and no external extensions modify headers. |
| hardwareConcurrency shows host value | Ensure profile defines the CPU core count and is loaded correctly. |
Next Steps
- Screen and Window Protection. Display properties as privacy surfaces.
- Performance Fingerprinting. Timing and connection data control.
- Speech Synthesis Protection. Voice list consistency.
- CLI Flags Reference. All identity and locale configuration flags.
Related documentation: Advanced Features: Browser & OS Fingerprinting | Advanced Features: Network Information Privacy
Legal Disclaimer & Terms of Use • Responsible Use Guidelines . BotBrowser is for authorized fingerprint protection and privacy research only.