Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug] Stealth plugin iframe.contentWindow leads to FingerprintJS detection #912

Open
daniellionel01 opened this issue Oct 20, 2024 · 3 comments
Labels
issue: bug report A bug has been reported needs triage

Comments

@daniellionel01
Copy link

daniellionel01 commented Oct 20, 2024

Describe the bug

When visiting the browser detection https://fingerprint.com/products/bot-detection/, it detects an automation if the "iframe.contentWindow" evasion is enabled.

I went through all available evasions and toggled them, until I got a passing result. The only evasion that I had to disable was "iframe.contentWindow".

Code Snippet

const puppeteer = require('puppeteer-extra')
const stealth = require('puppeteer-extra-plugin-stealth')

const plugin = stealth()
plugin.enabledEvasions.delete('iframe.contentWindow')
chromium.use(plugin)

(async () => {
  const browser = await puppeteer.launch({
     args: [
      "--disable-blink-features=AutomationControlled" // this flag is important to avoid detection
    ]
  })
  
  const page = await browser.newPage()
  await page.goto("https://fingerprint.com/products/bot-detection/")
})()

Versions

System:
OS: macOS 15.0.1
CPU: (10) arm64 Apple M2 Pro
Memory: 861.64 MB / 16.00 GB
Shell: 5.9 - /bin/zsh
Binaries:
Node: 18.19.1 - ~/.nvm/versions/node/v18.19.1/bin/node
npm: 10.8.3 - ~/.nvm/versions/node/v18.19.1/bin/npm
pnpm: 9.6.0 - ~/Library/pnpm/pnpm
bun: 1.1.28 - ~/.bun/bin/bun
npmPackages:
playwright-core: 1.48.1 => 1.48.1
playwright-extra: 4.3.6 => 4.3.6
puppeteer-extra-plugin-stealth: 2.11.2 => 2.11.2

@nickjanssen
Copy link

@daniellionel01 you are a life saver, thank you! Without this Google detects puppeteer as well.

Would be great if @berstend found time to add this crucial piece.

@daniellionel01
Copy link
Author

@daniellionel01 you are a life saver, thank you! Without this Google detects puppeteer as well.

Would be great if @berstend found time to add this crucial piece.

Tbh at this point I've removed puppeteer-extra-stealth-plugin from all of my automations in favor of https://github.com/Kaliiiiiiiiii-Vinyzu/patchright-nodejs and https://github.com/DarkGL/node-xvfb-ts. I think it's rather harmful since it's been picked up by all major automation detection libraries and is not being developed with the attention it would need to stay relevant :/

@nickjanssen
Copy link

@daniellionel01 wow, these look great. I might have to switch over to playwright... thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
issue: bug report A bug has been reported needs triage
Projects
None yet
Development

No branches or pull requests

2 participants