berstend / puppeteer-extra

💯 Teach puppeteer new tricks through plugins.
https://extra.community
MIT License
6.41k stars 739 forks source link

[Bug] Puppeteer is detected #867

Open varyen opened 8 months ago

varyen commented 8 months ago

Describe the bug

Look's like puppeteer can be detected now, tried example on puppeteer-extra-plugin-stealth page, got this:

testresult

Cloudflare detects puppeteer too.

Code Snippet

// puppeteer-extra is a drop-in replacement for puppeteer,
// it augments the installed puppeteer with plugin functionality
const puppeteer = require('puppeteer-extra')

// add stealth plugin and use defaults (all evasion techniques)
const StealthPlugin = require('puppeteer-extra-plugin-stealth')
puppeteer.use(StealthPlugin())

// puppeteer usage as normal
puppeteer.launch({ headless: true }).then(async browser => {
  console.log('Running tests..')
  const page = await browser.newPage()
  await page.goto('https://bot.sannysoft.com')
  await page.waitForTimeout(5000)
  await page.screenshot({ path: 'testresult.png', fullPage: true })
  await browser.close()
  console.log(`All done, check the screenshot. ✨`)
})

Versions

  System:
    OS: Linux 5.15 Debian GNU/Linux 11 (bullseye) 11 (bullseye)
    CPU: (24) x64 12th Gen Intel(R) Core(TM) i9-12900K
    Memory: 22.93 GB / 31.23 GB
    Container: Yes
    Shell: 5.1.4 - /bin/bash
  Binaries:
    Node: 20.10.0 - /usr/local/bin/node
    Yarn: 1.22.21 - /usr/local/bin/yarn
    npm: 10.2.3 - /usr/local/bin/npm
    pnpm: 8.14.0 - /usr/local/bin/pnpm
  npmPackages:
    puppeteer: ^21.7.0 => 21.1.1
    puppeteer-extra: ^3.3.4 => 3.3.6
    puppeteer-extra-plugin-stealth: ^2.11.2 => 2.11.2
zfcsoftware commented 8 months ago

Hello, yes it can be detected. I made a library called puppeteer-real-browser for this, can you try it? https://github.com/zfcsoftware/puppeteer-real-browser/blob/main/index.js I have tried many plugins in Puppeteer but they are all detected. When you start chromium on local and connect to that browser from the port, it is not detected.

TheGP commented 8 months ago

@zfcsoftware did you try secure-puppeteer?

toleblanc commented 8 months ago

@varyen Do you have the code we can use to run the WebGL test by itself? I'm curious to test it in various bots