CloakBrowser + Mobile Proxy: How to Scrape Without Detection

A setup guide pairing CloakBrowser's stealth Chromium with VoidMob dedicated mobile proxies for a complete scraping stack that passes every detection layer.

VoidMob Team
12 min read

CloakBrowser is a stealth Chromium binary with 33 C++ source-level patches that modify fingerprints at the Chromium source code before compilation, not through JavaScript injection or config flags. It passes reCAPTCHA v3 with a 0.9 score, auto-resolves Cloudflare Turnstile, and clears FingerprintJS, BrowserScan, and 30+ other detection tests. Free, open source (MIT license), drop-in Playwright and Puppeteer replacement.

Quick Summary TLDR

  • 1CloakBrowser eliminates browser-layer detection: fingerprints, CDP leaks, TLS signatures, and automation markers, all patched at the C++ source level.
  • 2Sites also check IP reputation, TCP/IP fingerprints (p0f), and DNS consistency. None of these are handled by any browser patch.
  • 3VoidMob dedicated mobile proxies cover the remaining layers: real carrier IPs, configurable p0f, and carrier-native DNS.
  • 4Together the two tools address all seven detection layers modern anti-bot platforms use. Neither alone is sufficient against platforms like Cloudflare, Akamai, or DataDome.

CloakBrowser's documentation is explicit: "bring your own proxies." It handles the browser layer and nothing else. No IP management, no network-level stealth, no proxy bundled in. Running it on a datacenter IP or a burned residential address still gets blocked: the browser fingerprint is clean but the connection fingerprint is not.

This guide covers the full stealth Chromium web scraping setup: CloakBrowser for browser-layer stealth paired with VoidMob dedicated mobile proxies for network-layer stealth. Every detection layer covered.


Why a Stealth Browser Alone Does Not Cover Everything

Detection platforms like Cloudflare, Akamai, DataDome, and PerimeterX do not rely on a single check. They run a layered stack, and failing any single layer triggers a block or CAPTCHA.

CloakBrowser covers four of these layers through its 33 Chromium patches: browser fingerprinting (Canvas, WebGL, fonts, navigator properties modified at the C++ level), TLS fingerprinting (JA3/JA4 hashes match real Chrome because it is real Chrome, compiled with patches), automation markers (CDP leak points, navigator.webdriver, window.chrome all handled at the source level), and behavioral patterns (the humanize=True flag adds Bezier mouse movements, natural keyboard timing, and realistic scroll physics).

The three remaining layers are network-level signals that no browser patch can fix:

IP reputation. Anti-bot systems check the IP's ASN classification: datacenter, residential, or mobile carrier. Datacenter IPs get challenged immediately. Residential IPs from shared proxy pools carry accumulated abuse history. Mobile carrier IPs are shared by thousands of legitimate users through CGNAT, making them the highest-trust IP category.

TCP/IP fingerprinting (p0f). Passive analysis of TCP window size, TTL, MSS, and options ordering reveals the operating system. A browser claiming Windows 10 while the TCP stack shows Linux characteristics is a mismatch that detection systems catch with 95% accuracy through cross-layer analysis.

DNS consistency. If the IP belongs to T-Mobile but DNS queries resolve through Cloudflare (1.1.1.1), the ASN mismatch signals proxy usage. VoidMob's DNS consistency guide covers this detection mechanism in detail.

Detection LayerWhat It ChecksCovered By
Browser FingerprintCanvas, WebGL, fonts, navigatorCloakBrowser (33 C++ patches)
TLS FingerprintJA3/JA4 hash matchingCloakBrowser (compiled-in, not spoofed)
Automation MarkersCDP leaks, webdriver, runtime signalsCloakBrowser (source-level removal)
Behavioral PatternsMouse, keyboard, scroll timingCloakBrowser (humanize=True)
IP ReputationASN type, carrier vs datacenterVoidMob mobile proxy (carrier ASN)
TCP/IP Fingerprintp0f OS detectionVoidMob mobile proxy (configurable p0f)
DNS ConsistencyResolver ASN matches IP ASNVoidMob mobile proxy (carrier-native DNS)

CloakBrowser covers four layers. VoidMob covers three. Neither alone is sufficient against modern anti-bot platforms.


CloakBrowser Proxy Setup: Full Walkthrough

CloakBrowser uses the standard Playwright API. The proxy configuration is identical to how Playwright handles proxies, because CloakBrowser is Playwright underneath, running a patched Chromium binary.

Step 1: Install CloakBrowser

Available via pip, npm, or Docker:

install.shbash
# Python
pip install cloakbrowser

# JavaScript
npm install cloakbrowser

# Docker (test run)
docker run --rm cloakhq/cloakbrowser cloaktest

The first launch auto-downloads the patched Chromium binary for the current platform (~200MB, cached locally). Builds are available for Linux x64, Linux ARM64, macOS Intel, macOS Apple Silicon, and Windows x64. All are on Chromium 145 as of May 2026.

Step 2: Get a VoidMob Dedicated Mobile Proxy

On the VoidMob dashboard, provision a dedicated mobile proxy. Dedicated matters for scraping: shared or pool proxies rotate across users, meaning the IP might already carry abuse history from another customer's sessions. Dedicated means one user, one carrier IP, clean reputation.

Configure the p0f TCP fingerprint to match the User-Agent CloakBrowser will send. CloakBrowser's default User-Agent is Chrome 145 on the host OS. If running on a Linux server, set the VoidMob p0f signature to Windows 10 or macOS to match a typical Chrome desktop user. Linux TCP signatures paired with a Chrome User-Agent is the most common p0f mismatch that gets flagged.

Verify the proxy IP shows a mobile carrier ASN (T-Mobile, Verizon, AT&T) using VoidMob's IP address checker.

Step 3: Connect CloakBrowser to the Proxy

Python (Playwright API):

scraper.pypython
1from cloakbrowser import launch
2
3browser = launch(
4 headless=True,
5 humanize=True,
6 proxy={
7 "server": "socks5://us-mobile.voidmob.com:port",
8 "username": "your_username",
9 "password": "your_password"
10 }
11)
12
13page = browser.new_page()
14page.goto("https://target-site.com")
15print(page.title())
16browser.close()

JavaScript (Playwright API):

scraper.jsjavascript
1import { launch } from 'cloakbrowser';
2
3const browser = await launch({
4 headless: true,
5 humanize: true,
6 proxy: {
7 server: 'socks5://us-mobile.voidmob.com:port',
8 username: 'your_username',
9 password: 'your_password'
10 }
11});
12
13const page = await browser.newPage();
14await page.goto('https://target-site.com');
15console.log(await page.title());
16await browser.close();

SOCKS5 is preferred over HTTP proxy for this setup because SOCKS5 passes through the TCP fingerprint without modification. The p0f signature from VoidMob's proxy reaches the target server intact.

Step 4: Verify the Full Stack

Before targeting production URLs, run detection tests through the proxy:

verify_stack.pypython
1from cloakbrowser import launch
2
3browser = launch(
4 humanize=True,
5 proxy={
6 "server": "socks5://us-mobile.voidmob.com:port",
7 "username": "your_username",
8 "password": "your_password"
9 }
10)
11
12page = browser.new_page()
13
14# Browser fingerprint check
15page.goto("https://abrahamjuliot.github.io/creepjs/")
16page.wait_for_timeout(5000)
17page.screenshot(path="creepjs.png")
18
19# Bot detection check
20page.goto("https://bot.sannysoft.com")
21page.screenshot(path="sannysoft.png")
22
23# IP and DNS check
24page.goto("https://browserleaks.com/dns")
25page.wait_for_timeout(3000)
26page.screenshot(path="dns_check.png")
27
28browser.close()

All browser detection tests should pass (CloakBrowser handles those). The DNS check should show carrier DNS servers matching the proxy IP's ASN (VoidMob handles that). If CreepJS shows anomalies, check the p0f fingerprint alignment. The most common issue is a Linux TCP signature paired with a Windows User-Agent.

Also run VoidMob's platform detection tool through the CloakBrowser session to verify the full fingerprint stack is consistent.


What This Stack Scrapes

VoidMob dedicated mobile proxies are not blocked on major target sites. Combined with CloakBrowser's detection bypass, this stack accesses targets that typically block scrapers:

Cloudflare-protected sites. CloakBrowser auto-resolves Turnstile (non-interactive) and passes managed challenges with a single click. The mobile carrier IP carries high trust with Cloudflare because blocking it would affect thousands of legitimate mobile users.

Akamai Bot Manager. CloakBrowser's TLS fingerprint matches real Chrome JA3/JA4 hashes. VoidMob's p0f signature matches the claimed OS. Carrier-native DNS eliminates ASN mismatches. The stack addresses all five Akamai detection layers documented in VoidMob's Akamai bypass guide.

DataDome and PerimeterX. Both use similar multi-layer detection. Browser fingerprint consistency (CloakBrowser) plus network fingerprint consistency (VoidMob) covers their detection stack.

reCAPTCHA v3 protected sites. CloakBrowser scores 0.9 on reCAPTCHA v3 (server-side verified). Combined with a clean mobile IP, CAPTCHAs do not appear at all on most sites.

Rate-limited APIs and e-commerce platforms. Dedicated mobile IPs provide consistent session identity. IP rotation is available on demand through the VoidMob API when needed for distributed scraping.


CloakBrowser vs Multilogin: Different Tools for Different Jobs

CloakBrowser and Multilogin target different workflows, but the comparison comes up frequently because both handle browser fingerprinting.

FeatureCloakBrowserMultilogin
PriceFree (MIT license)From EUR 99/month
Fingerprint method33 C++ source-level Chromium patchesProprietary JS injection (Mimic browser)
APIDrop-in Playwright/PuppeteerSeparate proprietary API
Built-in proxiesNo (bring your own)Optional add-on
Profile managementScriptable (or Docker-based GUI manager)GUI-based, multi-profile
reCAPTCHA v3 score0.9 (server-verified)Varies
Self-hostedYes (Docker, local install)No (cloud-based)
Open sourceYes (MIT)No
Primary use caseHeadless scraping automationMulti-account management

Multilogin is built for managing dozens of persistent browser profiles with cookies, sessions, and identity separation. CloakBrowser is built for stealth browser scraping at scale: headless, scriptable, automated. For undetected web scraping pipelines, CloakBrowser is more developer-friendly and costs nothing.

CloakBrowser also offers a self-hosted Browser Profile Manager via Docker that provides a GUI for creating profiles with unique fingerprints, per-profile proxy assignment, persistent cookies, and noVNC in-browser view, serving as a free antidetect browser alternative to Multilogin's profile management, running entirely on the user's own infrastructure.

For more detail on how fingerprint and proxy consistency interacts with antidetect browser detection, see VoidMob's antidetect browser fingerprint guide.


Common Issues and Quick Fixes

CAPTCHAs still appearing on Cloudflare-protected sites. Almost always an IP problem, not a browser problem. Check the proxy's ASN at ipinfo.io or VoidMob's IP address checker. If it shows a datacenter or hosting company ASN instead of a mobile carrier, that is the issue. VoidMob proxies resolve to real carrier ASNs (T-Mobile, Verizon, AT&T).

CreepJS trust score drops after heavy use. Rotate the proxy IP. Even clean mobile IPs accumulate risk scores under sustained high-volume scraping. VoidMob dedicated proxies support IP rotation on demand via API call or dashboard. Rotate proactively every few dozen sessions rather than waiting for scores to degrade.

p0f mismatch despite using mobile proxy. CloakBrowser's User-Agent reports the host OS by default. If running on a Linux server, the User-Agent says Chrome on Linux, which matches a Linux p0f signature. But if the VoidMob p0f is set to Windows 10 while the User-Agent says Linux, that creates a mismatch in the opposite direction. Align both: either set p0f to Linux (matching the server) or override CloakBrowser's User-Agent to Windows and set p0f to Windows.

Latency higher than expected on headless runs. Mobile proxies add 30-80ms compared to direct datacenter connections. For most scraping workflows this is irrelevant. For latency-sensitive tasks, use a VoidMob proxy endpoint geographically close to the target server. US targets with a US carrier proxy keep round-trip under 50ms.

CloakBrowser binary not downloading on first launch. The patched Chromium binary is ~200MB and auto-downloads on first use. If the download fails (network restrictions, corporate firewall), download manually from the GitHub releases and place it in the cached binary path. Docker users can pull the pre-built image: docker run --rm cloakhq/cloakbrowser cloaktest.


FAQ

1Is CloakBrowser actually free?

Yes. Open source under MIT license. No usage limits, no premium tier, no telemetry. The patched Chromium source and build scripts are available on GitHub for audit.

2Can CloakBrowser scrape without CAPTCHA on its own?

It passes reCAPTCHA v3 (0.9 score) and Cloudflare Turnstile at the browser level. But if the IP is flagged as datacenter or proxy, the site may still serve CAPTCHAs regardless of browser score. A clean mobile carrier IP eliminates this. The combination of CloakBrowser and a mobile proxy is how to scrape without captcha consistently.

3How to scrape Cloudflare protected sites with this stack?

Install CloakBrowser (pip install cloakbrowser), connect a VoidMob dedicated mobile proxy via SOCKS5, set humanize=True, verify with detection test sites, then target production URLs. The step-by-step walkthrough above covers the full CloakBrowser proxy setup.

4Do shared mobile proxies work, or does it need to be dedicated?

Shared VoidMob proxies work for lighter scraping and cost less per GB. For scraping Cloudflare-protected sites consistently (especially high-value targets with aggressive rate limiting), dedicated is significantly more reliable because no other users are accumulating abuse history on the same IP.

5What makes mobile proxies better than residential for CloakBrowser?

Mobile carrier IPs are shared by thousands of real phone users via CGNAT. Anti-bot systems are reluctant to block them aggressively without blocking legitimate mobile traffic. Residential proxy IPs from shared pools do not have this protection and get blacklisted faster under scraping volume.

6Does CloakBrowser work with Puppeteer and Selenium?

CloakBrowser supports Playwright (Python and JavaScript) and Puppeteer (JavaScript) as drop-in replacements. Selenium is also supported. The CloakBrowser website documents compatibility with AI browser agents like browser-use, Crawl4AI, and agent-browser.

7What platforms does CloakBrowser run on?

Linux x64, Linux ARM64, macOS Intel, macOS Apple Silicon, and Windows x64. All builds on Chromium 145 as of May 2026. Docker images available for containerized deployment.

8Is this CloakBrowser review based on real testing?

The detection test results cited (reCAPTCHA v3 0.9 score, Cloudflare Turnstile pass, FingerprintJS pass, BrowserScan 4/4) are from CloakBrowser's own verified test results against live detection services, last tested March 2026 on Chromium 145. The proxy layer performance reflects VoidMob's dedicated mobile proxy infrastructure.


Wrapping Up

CloakBrowser solves browser-layer detection for free: 33 C++ patches covering fingerprints, TLS signatures, CDP leaks, and behavioral patterns. As a stealth Chromium web scraping setup, it is among the most capable open-source options available.

"Bring your own proxies" is the critical requirement. IP reputation, TCP fingerprinting, and DNS consistency are network-layer signals that no browser patch addresses. VoidMob's dedicated mobile proxies cover all three: real carrier IPs, configurable p0f matching, and carrier-native DNS. CloakBrowser handles what the site sees in the browser. VoidMob handles what the site sees on the wire.

Seven detection layers. Two tools. Full stack coverage.

Dedicated Mobile Proxies for CloakBrowser

Real carrier IPs with zero blocked sites, configurable p0f, and carrier-native DNS. No KYC. Instant activation.