Skip to content

Commit 8f0e44f

Browse files
committed
docs: changelog 2026-06-09, release 149.0.7827.59 with WebKit-family profiles and Canvas Replay updates
1 parent 93114df commit 8f0e44f

28 files changed

Lines changed: 269 additions & 63 deletions

ADVANCED_FEATURES.md

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,13 +2,13 @@
22

33
Technical architecture and implementation details behind BotBrowser's fingerprint protection. This document covers the design and capabilities of each subsystem. For configuration syntax and usage examples, see the [CLI Flags Reference](CLI_FLAGS.md).
44

5-
> License tiers: Some capabilities show tier hints in parentheses (PRO, ENT Tier1/Tier2/Tier3); those options are subscription-gated.
5+
> License tiers: Some capabilities show tier hints in parentheses (PRO, ENT Tier1/Tier2/Tier3/Tier4); those options are subscription-gated.
66
77
---
88

99
## Capabilities Index
1010

11-
[navigator.webdriver removal](#chrome-behavior-emulation), [main-world isolation](#playwright-puppeteer-integration), [JS hook isolation](#playwright-puppeteer-integration), [Canvas noise](#multi-layer-fingerprint-noise), [WebGL/WebGPU param control](#multi-layer-fingerprint-noise), [Skia anti-alias](#cross-platform-font-engine), [HarfBuzz shaping](#cross-platform-font-engine), [MediaDevices protection](#complete-fingerprint-control), [font list authenticity](#cross-platform-font-engine), [UA congruence](#browser-os-fingerprinting), [custom User-Agent (ENT Tier3)](CLI_FLAGS.md#profile-configuration-override-flags), [per-context proxy (ENT Tier1) geo](CLI_FLAGS.md#enhanced-proxy-configuration), [DNS-through-proxy](#network-fingerprint-control), [active window emulation](#active-window-emulation), [HTTP headers/HTTP2/HTTP3](#chrome-behavior-emulation), [headless parity](#headless-incognito-compatibility), [WebRTC SDP/ICE control](#webrtc-leak-protection), [TLS fingerprint (JA3/JARM)](#network-fingerprint-control), [port protection (PRO)](#port-protection), [dynamic proxy switching (ENT Tier3)](#dynamic-proxy-switching), [distributed privacy consistency](#mirror-distributed-privacy-consistency), [CDP quick reference](#cdp-quick-reference)
11+
[navigator.webdriver removal](#chrome-behavior-emulation), [main-world isolation](#playwright-puppeteer-integration), [JS hook isolation](#playwright-puppeteer-integration), [Canvas noise](#multi-layer-fingerprint-noise), [Canvas replay (ENT Tier4)](#multi-layer-fingerprint-noise), [WebGL/WebGPU param control](#multi-layer-fingerprint-noise), [Skia anti-alias](#cross-platform-font-engine), [HarfBuzz shaping](#cross-platform-font-engine), [MediaDevices protection](#complete-fingerprint-control), [font list authenticity](#cross-platform-font-engine), [UA congruence](#browser-os-fingerprinting), [custom User-Agent (ENT Tier3)](CLI_FLAGS.md#profile-configuration-override-flags), [WebKit-family profile consistency (ENT Tier4)](#webkit-family-profile-consistency), [per-context proxy (ENT Tier1) geo](CLI_FLAGS.md#enhanced-proxy-configuration), [DNS-through-proxy](#network-fingerprint-control), [active window emulation](#active-window-emulation), [HTTP headers/HTTP2/HTTP3](#chrome-behavior-emulation), [headless parity](#headless-incognito-compatibility), [WebRTC SDP/ICE control](#webrtc-leak-protection), [TLS behavior consistency](#network-fingerprint-control), [port protection (PRO)](#port-protection), [dynamic proxy switching (ENT Tier3)](#dynamic-proxy-switching), [distributed privacy consistency](#mirror-distributed-privacy-consistency), [CDP quick reference](#cdp-quick-reference)
1212

1313
---
1414

@@ -33,7 +33,7 @@ Smart auto-configuration: timezone, locale, and languages derive from your proxy
3333
- **DNS Routing:** SOCKS5 proxies route all lookups through the proxy tunnel, preventing local DNS leakage.
3434
- **UDP over SOCKS5 (ENT Tier3):** Automatic UDP associate when supported to tunnel QUIC and STUN; ICE presets often unnecessary if UDP is available.
3535
- **WebRTC:** SDP/ICE manipulation and candidate filtering to prevent local IP disclosure (see [WebRTC Leak Protection](#webrtc-leak-protection)).
36-
- **TLS Fingerprints (JA3/JARM/ALPN):** Roadmap: cipher/extension ordering and ALPN tuning under evaluation.
36+
- **TLS behavior consistency:** Network protocol behavior is aligned with the active profile family across supported platforms.
3737

3838
**Stack differentiators:**
3939
- [Per-context proxies](PER_CONTEXT_FINGERPRINT.md) with proxy-based geo detection (timezone/locale/language) across contexts and sessions
@@ -105,6 +105,7 @@ await page.goto('https://example.co.uk');
105105
Deterministic noise generation prevents fingerprint collection while maintaining session consistency.
106106

107107
- **Canvas**: Controlled variance applied to Canvas 2D rendering
108+
- **Canvas Replay (ENT Tier4)**: Profile-backed deterministic Canvas responses for approved validation workflows
108109
- **WebGL image**: Controlled variance applied to WebGL readback
109110
- **WebGPU**: Deterministic noise applied to WebGPU canvases by default so GPU-only probes inherit the same reproducible noise characteristics
110111
- **AudioContext**: Inaudible noise calibration (Chromium 141+) with cross-worker consistency
@@ -347,11 +348,20 @@ Comprehensive hardware emulation and fingerprint management.
347348
|-----------|-------------|
348349
| **User Agent** | Version control, userAgentData brands, full version override, custom UA with placeholders (ENT Tier3) |
349350
| **Platform Detection** | Windows/macOS/Android(PRO) with authentic APIs |
350-
| **Browser Features** | Debugger control, CDP leak protection, Chrome-specific behavior, WebView brand (ENT Tier3) |
351+
| **Browser Features** | Debugger control, CDP leak protection, Chrome-specific behavior, WebView brand (ENT Tier3), WebKit-family profile consistency (ENT Tier4) |
351352
| **Font System** | Built-in cross-platform fonts, Blink features, authentic fallback chains |
352353
| **Client Hints** | DPR, device-memory, UA-CH, and other CH values stay aligned with JavaScript-visible metrics |
353354
| **userAgentData** | Full control over platform, platformVersion, model, architecture, bitness, mobile (ENT Tier3) |
354355

356+
<a id="webkit-family-profile-consistency"></a>
357+
### WebKit-Family Profile Consistency (ENT Tier4)
358+
359+
WebKit-family Profile Consistency extends premium profiles beyond browser-brand metadata. The browser runtime, CSS behavior, media capability behavior, navigation headers, TLS behavior, HTTP/2 behavior, and per-context isolation are shaped to match the selected WebKit-family profile across supported host platforms.
360+
361+
Supported profile bundles cover desktop and mobile WebKit-family identities. Use this capability for authorized privacy validation when a workflow needs browser-family consistency while keeping BotBrowser's profile, automation, and per-context control model.
362+
363+
See [WebKit-family Profile Consistency](WEBKIT_PROFILE_CONSISTENCY.md) for the full feature page and setup notes.
364+
355365
### Location & Time Management
356366

357367
| Component | Capabilities |
@@ -493,7 +503,7 @@ All commands live under the `BotBrowser` CDP domain. Send them through a **brows
493503
- [Per-Context Fingerprint](PER_CONTEXT_FINGERPRINT.md) - Independent fingerprint per BrowserContext
494504
- [Validation Results](VALIDATION.md) - Research and testing data
495505
- [Mirror](tools/mirror/) - Distributed privacy consistency verification
496-
- [CanvasLab](tools/canvaslab/) - Canvas 2D / WebGL / WebGL2 forensics and tracking analysis tool
506+
- [CanvasLab](tools/canvaslab/) - Canvas 2D / WebGL / WebGL2 forensics and privacy validation tool
497507
- [AudioLab](tools/audiolab/) - Web Audio API forensics and audio fingerprint collection analysis tool
498508
- [V8Log Forensics](tools/v8log/) - Browser-runtime evidence for authorized fingerprint protection sessions
499509
- [Examples](examples/) - Playwright, Puppeteer, bot-script integration

CHANGELOG.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,17 @@
33
> **Research scope:** Entries in this changelog describe features evaluated in authorized labs and defensive benchmarking programs. Follow the [Legal Disclaimer](DISCLAIMER.md) and [Responsible Use Guidelines](RESPONSIBLE_USE.md). We work with security vendors to investigate any misuse, so report concerns to [support@botbrowser.io](mailto:support@botbrowser.io).
44
55

6+
## [2026-06-09]
7+
### Major
8+
- **Chromium Core -> 149.0.7827.59**: Updated to Chrome 149 stable (149.0.7827.59). Web Platform consistency, rendering accuracy, and security patches stay aligned with upstream Chrome.
9+
10+
### New
11+
- **WebKit-Family Profile Consistency (ENT Tier4)**: Added premium WebKit-family profile support for desktop and mobile browser-family identity consistency on the BotBrowser browser core. This extends profile consistency beyond browser brand and platform metadata into engine-level runtime behavior, CSS behavior, media capability behavior, navigation headers, TLS behavior, HTTP/2 behavior, and BrowserContext isolation, giving privacy teams a controlled way to validate WebKit-family profile bundles across supported host platforms.
12+
13+
### Improvements
14+
- **Per-Context Fingerprint Flag Coverage**: Expanded validated per-context support for `--bot-profile-dir`, `--bot-script`, `--bot-cookies`, graphics mode controls, lifecycle controls, and WebRTC ICE settings.
15+
16+
617
## [2026-06-06]
718
### Major
819
- **Chromium Core -> 148.0.7778.254**: Updated the Chrome 148 stable line to 148.0.7778.254. Web Platform consistency, rendering accuracy, and security patches stay aligned with upstream Chrome.
@@ -1040,7 +1051,6 @@ Refined per-OS rendering differences (fonts, CSS, anti-aliasing, text sizing) so
10401051
- **Browser Brand Config**: New `configs.browserBrand` option for `chromium`, `chrome`, `brave`, or `edge`, enabling high-fidelity brand emulation.
10411052
- **Brave Simulation**: Full Brave browser emulation including `userAgent`, `userAgentData`, and `navigator.brave.isBrave` properties.
10421053
- **Edge Simulation**: Full Microsoft Edge emulation covering `userAgent`, `userAgentData`, and Edge-specific APIs.
1043-
- **WebKit Emulation**: Preliminary WebKit engine simulation for basic Safari-like behaviors.
10441054
- **Random History Augmentation**: `configs.injectRandomHistory` adds realistic history entries (URLs, timestamps) on new page loads without an opener.
10451055
10461056
### Improved

CLI_FLAGS.md

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ This document explains BotBrowser's CLI configuration system. These flags extend
88
99
> Dynamic configuration: `--bot-*` flags (config overrides + behavior toggles) enable runtime fingerprint control, which is ideal for CI/CD and multi-instance scenarios.
1010
11-
> License tiers: Some flags show tier hints in parentheses (PRO, ENT Tier1/Tier2/Tier3); those options are subscription-gated.
11+
> License tiers: Some flags show tier hints in parentheses (PRO, ENT Tier1/Tier2/Tier3/Tier4); those options are subscription-gated.
1212
1313
## Table of Contents
1414

@@ -50,6 +50,7 @@ Specify a directory containing multiple `.enc` profile files. BotBrowser will ra
5050
- Each startup randomly selects a different profile from the directory
5151
- Useful for multi-instance deployments requiring fingerprint variation
5252
- Cannot be used together with `--bot-profile` (directory takes precedence if both are specified)
53+
- Can be used at BrowserContext creation time through Per-Context Fingerprint when a context should select its own profile from a directory
5354

5455
---
5556

@@ -210,7 +211,7 @@ Sets custom browser window title and taskbar/dock icon label.
210211
### `--bot-cookies` (PRO)
211212
Session restoration and cookie management.
212213

213-
Accepts cookie data as either inline JSON or from a file.
214+
Accepts cookie data as either inline JSON or from a file. In Per-Context Fingerprint workflows, cookies can be imported at BrowserContext creation time so each context starts with its own session state.
214215

215216
**Inline JSON:**
216217
```bash
@@ -238,10 +239,12 @@ Guide: [Bookmark Seeding](https://botbrowser.io/docs/identity/bookmark-seeding/)
238239

239240
<a id="--bot-canvas-record-file"></a>
240241
### `--bot-canvas-record-file`
241-
Canvas forensics and tracking analysis.
242+
Canvas forensics and privacy validation.
242243

243244
Records all Canvas 2D, WebGL, WebGL2, and WebGPU API calls to a JSONL file for forensic analysis and replay.
244245

246+
CanvasLab recording is a diagnostic workflow. Profile-backed Canvas Replay is an ENT Tier4 capability for approved validation workflows that require deterministic graphics protection from embedded profile data.
247+
245248
```bash
246249
--bot-canvas-record-file="/tmp/canvaslab.jsonl"
247250
```
@@ -304,7 +307,7 @@ Learn more: [V8Log Guide](docs/guides/getting-started/V8LOG.md) | [V8Log Tool](t
304307
### `--bot-script`
305308
Framework-less approach with a privileged JavaScript context.
306309

307-
Execute a JavaScript file right after BotBrowser starts in a privileged, non-extension context where `chrome.debugger` is available.
310+
Execute a JavaScript file right after BotBrowser starts in a privileged, non-extension context where `chrome.debugger` is available. In Per-Context Fingerprint workflows, bot scripts can also be attached at BrowserContext creation time.
308311

309312
```bash
310313
--bot-script="/path/to/script.js"
@@ -389,7 +392,7 @@ BotBrowser supports command-line flags that override profile configuration value
389392
Flags that directly map to profile `configs` and override them at runtime.
390393

391394
**Identity & Locale** - Guides: [Browser Brand Alignment](https://botbrowser.io/docs/identity/browser-brand-alignment/), [Custom User-Agent](https://botbrowser.io/docs/identity/custom-user-agent/), [Timezone, Locale, and Language](https://botbrowser.io/docs/identity/timezone-locale-language/)
392-
- `--bot-config-browser-brand=chrome` (ENT Tier2, webview requires ENT Tier3): Browser brand: chrome, chromium, edge, brave, opera, webview
395+
- `--bot-config-browser-brand=chrome` (ENT Tier2, webview requires ENT Tier3): Browser brand: chrome, chromium, edge, brave, opera, webview. WebKit-family identities are delivered through ENT Tier4 premium profiles.
393396
- `--bot-config-brand-full-version=142.0.3595.65` (ENT Tier2): Brand-specific full version (Edge/Opera cadence) for UA-CH congruence
394397
- `--bot-config-ua-full-version=142.0.7444.60` (ENT Tier2): User agent version: full version string matching Chromium major
395398
- `--bot-config-languages=auto`: Languages: `auto` (IP-based, default) or custom value like `en-US,fr-FR` (ENT Tier1)

PER_CONTEXT_FINGERPRINT.md

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -298,17 +298,18 @@ Most `--bot-*` flags from [CLI_FLAGS.md](CLI_FLAGS.md) work with per-context con
298298

299299
| Category | Example Flags |
300300
|----------|---------------|
301-
| Profile | `--bot-profile` (load a completely different profile per context) |
301+
| Profile | `--bot-profile` (load a completely different profile per context), `--bot-profile-dir` (select from a directory at context creation) |
302302
| Noise Seed | [`--bot-noise-seed`](CLI_FLAGS.md#behavior--protection-toggles) for deterministic fingerprint variance |
303303
| Timing | [`--bot-time-scale`](CLI_FLAGS.md#behavior--protection-toggles) for performance timing control, [`--bot-time-seed`](ADVANCED_FEATURES.md#performance-timing-protection) for deterministic timing diversity, [`--bot-stack-seed`](ADVANCED_FEATURES.md#stack-depth-control) for stack depth variation, [`--bot-fps`](CLI_FLAGS.md#behavior--protection-toggles) for frame rate control |
304304
| Network | [`--bot-network-info-override`](ADVANCED_FEATURES.md#network-info-privacy) for profile-defined `navigator.connection` values |
305305
| WebRTC | [`--bot-webrtc-ice`](ADVANCED_FEATURES.md#webrtc-leak-protection) for ICE endpoint control |
306306
| Window | [`--bot-always-active`](ADVANCED_FEATURES.md#active-window-emulation) to maintain active window state |
307-
| Session | `--bot-inject-random-history` for session authenticity (supports precise count, e.g., `=15`) |
307+
| Session | `--bot-inject-random-history` for session authenticity (supports precise count, e.g., `=15`), `--bot-cookies` for context-scoped cookie import at creation time |
308+
| Automation | `--bot-script` for context-scoped framework-less automation bootstrap at creation time |
308309
| Google Headers | [`--bot-enable-variations-in-context`](CLI_FLAGS.md#behavior--protection-toggles) for `X-Client-Data` consistency in incognito contexts (ENT Tier2) |
309310
| Proxy | [`--proxy-server`](CLI_FLAGS.md#enhanced-proxy-configuration) (configure proxy per-context via `botbrowserFlags`), `--proxy-ip` to skip IP lookups |
310311
| HTTP | [`--bot-custom-headers`](CLI_FLAGS.md#--bot-custom-headers-pro) for custom HTTP request headers per context |
311-
| Config | [`--bot-config-platform`, `--bot-config-timezone`, `--bot-config-noise-canvas`, etc.](CLI_FLAGS.md#profile-configuration-override-flags) |
312+
| Config | [`--bot-config-platform`, `--bot-config-timezone`, `--bot-config-noise-canvas`, `--bot-config-webgl=disabled`, `--bot-config-webgpu=disabled`, etc.](CLI_FLAGS.md#profile-configuration-override-flags) |
312313

313314
See [CLI_FLAGS.md](CLI_FLAGS.md) for the complete flag reference.
314315

@@ -317,7 +318,7 @@ See [CLI_FLAGS.md](CLI_FLAGS.md) for the complete flag reference.
317318
**Privacy Research at Scale**
318319
- Run fingerprint protection validation across multiple configurations simultaneously
319320
- Compare behavior across different platform/locale combinations
320-
- Study tracking mechanisms with controlled, isolated contexts
321+
- Study signal collection behavior with controlled, isolated contexts
321322

322323
**Cross-Platform Testing**
323324
- Validate application behavior across different platform fingerprints

0 commit comments

Comments
 (0)