Skip to content

The login browser doesn't announce itself as automation - #274

Merged
czpython merged 1 commit into
mainfrom
commonzenpython/browser-hides-automation
Aug 17, 2026
Merged

czpython merged 1 commit into
mainfrom
commonzenpython/browser-hides-automation

Conversation

@czpython

Copy link
Copy Markdown
Owner

The operator drives a real login in the browser-session window, but the browser advertised navigator.webdriver = true — the automation flag a logged-in site reads to escalate a session to a verification challenge. X did exactly that on the live box: the login form rendered, then the flow silently refused to advance (the knowledge_check screen the operator got stuck on).

Diagnosed by driving the real browser container on the deployed box: a clean load of X's login flow returned zero 4xx/5xx (the viewer.json 404 seen in DevTools is a normal flow probe, not the blocker), and the one automation tell present was navigator.webdriver = true. Tested both configs in the exact chrome build: default → true, --disable-blink-features=AutomationControlled → false.

This adds that flag to session-launch. Re-verified end to end: patched launcher booted in a container from the published image, driven through its real code path, navigator.webdriver = false.

Scope is deliberately the one proven lever. A datacenter egress IP may still draw a challenge; that's the next slice only if this doesn't clear it — re-test after deploy before widening.

Deploy: rebuild and publish ghcr.io/czpython/druks-browser, then re-pull on the box so the next login window uses it.

ENG (P6 browser stealth, evidence-driven first slice)

The operator drives a real login in the session window, but the browser
advertised navigator.webdriver=true — the automation flag a logged-in
site reads to escalate a session to a verification challenge and then
stall it. X did exactly that: the login form rendered, then the flow
would not advance.

--disable-blink-features=AutomationControlled clears the flag. Verified
on the box against this chrome build, driven through session-launch: the
flag flips navigator.webdriver from true to false.
@czpython
czpython merged commit 6459aa4 into main Aug 17, 2026
@czpython
czpython deleted the commonzenpython/browser-hides-automation branch August 17, 2026 11:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant