puppeteer-extra-plugin-stealth ist das beliebteste Anti-Detection-Paket für Puppeteer. Es verzeichnet immer noch 600K+ wöchentliche Downloads auf npm. Gleichzeitig wurde seit März 2023 kein Update mehr veröffentlicht. Version 2.11.2 ist das letzte Release, und das wird sich nicht ändern: Die Wartung ist eingestellt, die GitHub-Issues häufen sich und Anti-Bot-Systeme sind längst weitergezogen.
TL;DR: Stealth-Plugins patchen Erkennungssignale über JavaScript-Overrides auf Page-Ebene. Im Jahr 2026 prüfen Anti-Bot-Systeme wie Cloudflare, Akamai und DataDome Signale, die JavaScript nicht erreichen kann: TLS-Fingerprints, CDP-Protokollartefakte und Engine-Level Rendering-Unterschiede. Die Lösung ist kein besseres Plugin. Es ist eine andere Schicht: entweder ein gepatchter Treiber, der Protokoll-Leaks verbirgt, oder ein gepatchter Browser, der Fingerprints auf Engine-Ebene behandelt.
Was Stealth-Plugins tatsächlich tun
puppeteer-extra-plugin-stealth bündelt 11 Evasion-Module, die über evaluateOnNewDocument ausgeführt werden. Jedes Modul patcht eine Erkennungsoberfläche:
| Modul | Was es patcht |
|---|---|
webdriver |
Entfernt navigator.webdriver = true |
chrome.runtime |
Fälscht das chrome.runtime-Objekt |
chrome.csi / chrome.app |
Fügt fehlende Chrome-API-Stubs hinzu |
navigator.plugins |
Fälscht das Plugin-Array |
navigator.languages |
Überschreibt Spracheinstellungen |
navigator.permissions |
Korrigiert das Permission-Query-Verhalten |
media.codecs |
Fälscht Codec-Unterstützung |
sourceurl |
Verbirgt //# sourceURL aus injizierten Scripts |
iframe.contentWindow |
Behebt Cross-Origin-Iframe-Erkennung |
webgl.vendor |
Fälscht WebGL-Vendor/Renderer-Strings |
user-agent-override |
Setzt einen realistischen User-Agent-Header |
Diese Patches funktionierten 2021-2022, als Anti-Bot-Systeme hauptsächlich JavaScript-Properties auf Page-Ebene prüften. Gegen die tatsächlichen Prüfmechanismen moderner Detection-Systeme sind sie wirkungslos.
Warum Stealth-Plugins 2026 versagen
Anti-Bot-Erkennung hat sich unter die JavaScript-Ebene verlagert. Die entscheidenden Signale sind solche, die evaluateOnNewDocument nicht erreichen kann.
CDP-Protokoll-Leaks
Wenn Puppeteer eine Verbindung zu Chrome aufbaut, sendet es CDP-Befehle wie Runtime.enable, Page.enable und Network.enable. Diese Befehle hinterlassen Artefakte im internen Zustand des Browsers, die Anti-Bot-Scripts erkennen können. Das Stealth-Plugin greift nicht in CDP ein, weil es auf Page-Ebene operiert, nicht auf Protokollebene.
Der Befehl Runtime.enable allein reicht aus, um eine automatisierte Sitzung zu identifizieren. Kein Page-Level-Patching der Welt kann verbergen, dass CDP-Befehle gesendet wurden.
TLS Fingerprinting
Cloudflare prüft TLS-Fingerprints (JA3/JA4), bevor überhaupt HTML ausgeliefert wird. Wenn der TLS-Fingerprint nicht stimmt, wird Ihre Sitzung gechallenged oder blockiert — noch bevor die JavaScript-Patches des Stealth-Plugins geladen werden. Das Plugin operiert auf Page-Ebene und hat keinen Zugriff auf die TLS-Schicht. Eine ausführliche Erklärung, wie TLS Fingerprinting im Detection-Stack funktioniert, finden Sie im Netzwerk-Abschnitt von Browser-Automatisierung ohne Blockierung.
JavaScript-Override-Erkennung
Anti-Bot-Scripts prüfen nicht nur den Wert von navigator.webdriver. Sie prüfen den Property Descriptor. Ein echter Browser definiert webdriver als nativen Getter auf dem Navigator-Prototype. Das Stealth-Plugin überschreibt ihn mit Object.defineProperty, was das configurable-Flag des Descriptors und die toString()-Ausgabe der Getter-Funktion verändert. Detection-Scripts testen genau auf diese Abweichungen.
Dasselbe gilt für andere Overrides. chrome.runtime, Plugin-Arrays und Permission-Queries weisen alle erkennbare Unterschiede auf, wenn ihre nativen Implementierungen durch JavaScript-Stubs ersetzt werden.
Headless-Rendering-Unterschiede
Auch mit --headless=new (dem neueren Headless-Modus) rendert Chrome geringfügig anders als Headed Chrome. Font-Metriken, GPU-beschleunigte Canvas-Ausgabe und Screen-Dimension-APIs liefern andere Werte. Das Stealth-Plugin patcht einige Navigator-Properties, kann aber nicht ändern, wie die Rendering Engine selbst arbeitet.
Was Stealth-Plugins ersetzt hat
Das Ökosystem hat sich in zwei Ansätze aufgespalten: gepatchte Treiber (beheben die Protokollebene) und gepatchte Browser (beheben die Engine-Ebene). Sie lösen unterschiedliche Probleme.
Gepatchte Treiber: Rebrowser und Patchright
Rebrowser bietet Drop-in-Ersatz für Puppeteer und Playwright (rebrowser-puppeteer, rebrowser-playwright). Die Patches zielen auf CDP-Protokollartefakte: Sie verändern, wie Runtime.enable und andere Befehle mit dem Browser interagieren, um erkennbare Spuren zu vermeiden. Sie tauschen den Paketnamen in Ihrem Code aus, alles andere bleibt identisch.
// Before: detected
const puppeteer = require('puppeteer');
// After: CDP artifacts patched
const puppeteer = require('rebrowser-puppeteer');Patchright macht dasselbe für Playwright, mit Fokus auf Python. Es patcht Runtime.enable-Leaks und wird aktiv gewartet.
Einschränkung: Gepatchte Treiber beheben Protocol Detection, adressieren aber nicht Browser Fingerprinting. Wenn die Zielseite Canvas, WebGL, AudioContext oder Font-Rendering prüft, bleiben Sie angreifbar. Gepatchte Treiber beantworten die Frage "Bist du automatisiert?", aber nicht "Bist du ein echtes Gerät?"
Gepatchte Browser: Anti-Detect-Engines
Ein gepatchter Browser modifiziert Chromium selbst, sodass Fingerprint-Signale auf Engine-Ebene kohärent sind. Canvas-Ausgabe, WebGL-Rendering, AudioContext-Daten, Font-Metriken, Bildschirmabmessungen, Zeitzone und Locale melden Werte, die einem einzigen realen Geräteprofil entsprechen.
Genau das leistet Clawbrowser. Es ist ein Chromium-Fork mit Engine-Level-Fingerprint-Patches über 20+ Oberflächen, integriertem Proxy-Routing, WebRTC-Leak-Schutz und nativer CDP-Unterstützung. Ihr vorhandener Puppeteer- oder Playwright-Code verbindet sich über CDP:
from playwright.async_api import async_playwright
async def automate_without_detection():
async with async_playwright() as p:
# Connect to Clawbrowser instead of stock ChromeWas das im Vergleich zu Stealth-Plugins abdeckt:
- Engine-Level Canvas/WebGL/AudioContext-Kohärenz (keine JavaScript-Stubs)
- TLS-Fingerprint passend zu einer echten Chrome-Sitzung
- CDP-Verbindung ohne
Runtime.enable-Artefakte - WebRTC-Leak-Schutz auf Browser-Ebene
- Proxy-Routing mit integrierter geografischer Zuordnung
Die vollständige Aufschlüsselung aller Fingerprint-Signale finden Sie unter Browser Fingerprinting erklärt: Die 20+ Signale, die Anti-Bot-Systeme nutzen.
Wie Sie die richtige Lösung wählen
Das passende Werkzeug hängt davon ab, was Sie blockiert.
| Detection-Typ | Symptom | Lösung |
|---|---|---|
| CDP-Protokollartefakte | Sofortige Blockierung beim Seitenaufruf, kein CAPTCHA | Gepatchter Treiber (Rebrowser, Patchright) |
| Browser-Fingerprint-Mismatch | CAPTCHA auf jeder Seite oder stille Datenabweichungen | Gepatchter Browser (Clawbrowser) |
| TLS-Fingerprint-Mismatch | Blockierung vor dem Laden der Seite (403 beim ersten Request) | Gepatchter Browser mit Proxy-Routing |
| IP-Reputation | Blockierung von Datacenter-IPs | Residential Proxy (jeder Ansatz) |
| Verhaltensbasierte Erkennung | Blockierung nach 5-10 Seiten | Timing und Session-Management im Code |
Wann gepatchte Treiber ausreichen
Wenn Sie Websites automatisieren, die grundlegende Detection mit CDP-Artefakt-Prüfung einsetzen, aber keinen tiefen Browser-Fingerprint erstellen, sind Rebrowser oder Patchright ausreichend. Das deckt viele Websites mit leichteren Anti-Bot-Konfigurationen ab.
Wann Sie einen gepatchten Browser brauchen
Wenn die Zielseite Cloudflare Bot Management, Akamai Bot Manager, DataDome oder PerimeterX einsetzt, benötigen Sie Engine-Level-Fingerprint-Kohärenz. Page-Level-Patches und Driver-Level-Patches reichen nicht aus, wenn die Erkennung 20+ Browser-Oberflächen gleichzeitig prüft.
Clawbrowser ist ein lokaler, kostenloser, Chromium-basierter Anti-Detect-Browser mit verwalteten Fingerprints, Proxy-Routing, nativem CDP und einem integrierten MCP-Server. Er übernimmt die Browser-Identität und die Netzwerkschicht, sodass sich Ihr Code nur um Verhalten und Session-Management kümmern muss.
Migration von Stealth-Plugins
Wenn Sie derzeit puppeteer-extra-plugin-stealth oder playwright-stealth einsetzen, dauert die Migration zu Clawbrowser weniger als fünf Minuten.
Vorher (Stealth-Plugin)
const puppeteer = require('puppeteer-extra');
const StealthPlugin = require('puppeteer-extra-plugin-stealth');
puppeteer.use(StealthPlugin());
const browser = await puppeteer.launch({ headless: false });Nachher (Clawbrowser)
const puppeteer = require('puppeteer-core');
// Connect to Clawbrowser over CDP
const browser = await puppeteer.connect({
browserWSEndpoint: 'ws://127.0.0.1:9222'Der wesentliche Unterschied: Sie entfernen puppeteer-extra und puppeteer-extra-plugin-stealth komplett aus Ihren Dependencies. Keine Plugin-Konfiguration. Keine Auswahl von Evasion-Modulen. Die Anti-Detection findet auf Browser-Ebene statt, nicht in Ihrem Code.
Für Scraping-spezifische Muster (Paginierung, Session-Warming, Cloudflare-Bypass) lesen Sie Web Scraping ohne Erkennung.
FAQ
Ist puppeteer-extra-stealth komplett nutzlos?
Es funktioniert noch auf Websites ohne kommerzielles Anti-Bot-System. Wenn die Zielseite nur navigator.webdriver und grundlegende JavaScript-Properties prüft, reicht das Stealth-Plugin aus. Aber jede Website, die Cloudflare, Akamai, DataDome, PerimeterX oder soziale Netzwerke wie Facebook, Instagram, LinkedIn und X einsetzt, erkennt es.
Hat playwright-stealth dieselben Probleme?
Ja. playwright-stealth nutzt denselben Ansatz: JavaScript-Overrides via Page-Level-Injection. Es kann TLS-Fingerprints, CDP-Artefakte und Engine-Level-Rendering nicht erreichen. Die Erkennungsgrenzen sind identisch.
Kann ich Rebrowser und Clawbrowser zusammen verwenden?
Das ist nicht nötig. Clawbrowser behandelt sowohl die Protokollebene als auch die Fingerprint-Ebene. Rebrowser-Patches sind nützlich, wenn Sie Stock-Chrome verwenden und nicht auf einen Anti-Detect-Browser wechseln können. Mit Clawbrowser sind die CDP-Artefakte bereits abgedeckt.
Warum hat Stealth immer noch 600K Downloads pro Woche?
Trägheit. Die meisten Tutorials und Stack-Overflow-Antworten empfehlen es nach wie vor. Entwickler kopieren Lösungen aus 2022, ohne zu prüfen, ob das Paket noch gewartet wird. Die hohe Download-Zahl bedeutet nicht, dass es gegen moderne Detection wirksam ist.
Nicht mehr patchen — richtig lösen
Stealth-Plugins waren eine vernünftige Lösung, als Anti-Bot-Erkennung auf JavaScript-Level-Checks basierte. Die Erkennung hat sich auf TLS-Fingerprints, CDP-Protokollanalyse und Engine-Level-Rendering-Unterschiede verlagert. Patching auf Page-Ebene kann diese Signale nicht erreichen.
Installieren Sie Clawbrowser, um Detection auf Browser-Ebene zu behandeln: Kopieren Sie den Install-Prompt von clawbrowser.ai und fügen Sie ihn in Ihren AI-Agent ein. Entfernen Sie puppeteer-extra und puppeteer-extra-plugin-stealth aus Ihren Dependencies. Verbinden Sie Ihren vorhandenen Puppeteer- oder Playwright-Code über CDP. Die Anti-Detection steckt im Browser — nicht in Ihrem Code.
Das zugrunde liegende Detection-Modell finden Sie unter Browser-Automatisierung ohne Blockierung: Der 4-Schichten-Verteidigungsstack.
Continue exploring
Ask AI how Clawbrowser helps
Weiterlesen
Ähnliche Artikel

Browser-Automatisierung ohne Blockierung: Der 4-Schichten-Verteidigungsstack
Warum Browser-Automatisierung blockiert wird und wie Sie jede Schicht systematisch absichern: Browser-Identität, Netzwerk, Verhalten und Session-Management. Ein Strukturleitfaden für Entwickler.
Artikel lesen →
CDP vs MCP: Wann welches Protokoll für KI-Browser-Steuerung
CDP steuert den Browser. MCP verbindet die KI. Erfahren Sie, wann Chrome DevTools Protocol und wann Model Context Protocol für die Browser-Automatisierung mit KI-Agenten eingesetzt wird.
Artikel lesen →