So funktionieren Antidetect-Browser: Die vollständige technische Erklärung

Fingerprint-Oberflächen, kohärente Identitätserzeugung, Speicherisolierung auf der Festplatte, Routing pro Profil und die ehrlichen Grenzen des gesamten Ansatzes.
Ein Antidetect-Browser erledigt vier Aufgaben. Er speichert die Browserdaten jedes Profils getrennt, er steuert die Geräteidentität, die jedes Profil meldet, er leitet den Datenverkehr jedes Profils unabhängig und er hält alle drei über die Zeit konsistent. Dieser Artikel erklärt auf Mechanismus-Ebene, wie jede dieser Aufgaben gelöst wird, und endet mit dem, was der Ansatz nicht leisten kann.
Die Fingerprint-Oberflächen
Beginnen wir mit dem, was eine Seite auslesen kann, denn alles andere ist eine Reaktion darauf. Ein Skript auf jeder Website kann dem Browser Fragen stellen, und die Antworten beschreiben den Rechner. Die Oberflächen lassen sich natürlich gruppieren.
| Oberfläche | Was eine Seite ausliest |
|---|---|
| Navigator | Browsername und -version, Plattform, Sprachliste, gemeldete Prozessoranzahl und Arbeitsspeicher, Touch-Unterstützung |
| Bildschirm | Breite, Höhe, verfügbarer Arbeitsbereich, Farbtiefe, Geräte-Pixelverhältnis |
| Canvas | Die exakten Pixel, die beim Zeichnen von Text und Formen außerhalb des Bildschirms entstehen, zu einem stabilen Wert gehasht |
| WebGL | Die Zeichenketten für Grafik-Hersteller und -Renderer sowie Hashes gerenderter Szenen |
| Audio | Die Ausgabe eines Oszillators, der durch den Audioverarbeitungsgraphen läuft und je nach Software-Stack variiert |
| Schriftarten | Welche Schriften installiert sind, aus Textmessungen abgeleitet |
| Zeitzone und Uhr | Die gemeldete Zone und der Versatz, verglichen mit dem Ort, von dem der Datenverkehr eintrifft |
| Netzwerk | Die Adresse selbst, die Sicht von WebRTC auf Verbindungskandidaten und die Form des TLS-Handshakes |
Keine einzelne Zeile identifiziert einen Rechner. Die Kombination tut es, und an der Kombination fliegen auch Lügen auf: Werte, die nicht zu einem einzigen echten Rechner gehören können, sind ein lauteres Signal als jeder Einzelwert.
Die Erfassung ist billig und lautlos. Jeder Wert in der Tabelle steht jeder Seite über dokumentierte APIs ohne Berechtigungsabfrage zur Verfügung, und das meiste kommt in der ersten Sekunde eines Besuchs an. Wie man auch zu dieser Praxis steht: Sie ist eine feste Tatsache des modernen Webs und die Grundlage, gegen die ein Antidetect-Browser konstruiert wird.
Wie eine kohärente Identität erzeugt wird
Der naive Ansatz ist, jede Frage abzufangen und die Antwort zufällig zu wählen. Er scheitert aus einem strukturellen Grund. Die Antworten beschreiben eine Maschine, sie sind also korreliert, und unabhängig gewürfelte Antworten zerstören die Korrelationen. Ein Windows-User-Agent neben Schriften, die nur mit macOS kommen, eine Bildschirmgröße, die nie ein Laptop hatte, eine Grafikkennung, die nie zusammen mit der behaupteten Plattform existierte: Jedes davon ist ein Widerspruch, den ein Prüfer günstig testen kann.
Ein funktionierender Antidetect-Browser erzeugt die Identität daher als Menge. Er beginnt bei einer realen, verbreiteten Rechnerklasse und leitet jeden Wert aus dieser Wahl ab. Die Plattform bestimmt die plausible Schriftenliste, die Grafikkennungen und die Touch-Unterstützung. Der Bildschirm stammt aus Größen, mit denen diese Klasse von Rechnern tatsächlich ausgeliefert wird. Sprache und Zeitzone ergeben sich aus der vorgesehenen Region des Profils. Die Werte stimmen überein, weil sie gemeinsam aus einer Beschreibung eines Rechners gewählt wurden.
Die zweite Eigenschaft ist ebenso wichtig: Die Menge wird gespeichert. Sie wird beim Anlegen in das Profil geschrieben, und jede Sitzung meldet dieselben Werte, denn ein Gerät, das sich zwischen Besuchen verändert, beschreibt Hardware, die niemand besitzt. Stabilität ist zum größten Teil das, was plausibel bedeutet.
Speicherisolierung auf der Festplatte
Die Speicheraufgabe ist die unscheinbarste und die absoluteste. Jedes Profil besitzt ein Verzeichnis, und alles, was ein Browser dauerhaft ablegt, liegt darin: die Cookie-Datenbank, Local Storage, IndexedDB, der HTTP-Cache, Service-Worker-Registrierungen, Erweiterungszustand, Verlauf und gespeicherte Zugangsdaten. Zwei Profile sind zwei getrennte Verzeichnisse, und jeder laufende Browser zeigt auf sein eigenes.
Vollständige Trennung ist die Eigenschaft, die man prüfen sollte, denn teilweise Isolierung scheitert unbemerkt. Cookies lassen sich leicht trennen. Der Cache kann einen wiederkehrenden Browser über die behaltenen Ressourcen identifizieren. Service Worker können Kennungen halten und zwischen Besuchen weiterlaufen. IndexedDB ist der Ort, an dem moderne Anwendungen die Datensätze ablegen, denen sie wirklich vertrauen. Eine Isolierung, die die bekannten Speicher abdeckt und irgendeinen der anderen teilt, hat nur den sichtbaren Teil des Problems isoliert.
Die andere Hälfte ist Persistenz. Sitzungen sammeln Wert an: bestandene Sicherheitsprüfungen, etablierte Anmeldehistorie, das Bild eines wiederkehrenden Besuchers. Ein Profil behält sein Verzeichnis zwischen den Sitzungen, und erst das macht Account-Arbeit überhaupt möglich. Das Zurückschreiben beim Schließen macht das Verzeichnis dauerhaft, weshalb das Beenden eines Profilprozesses mitten in der Sitzung die gerade aufgebaute Sitzung kosten kann.
Netzwerk-Routing
Jedes Profil trägt seine eigene Route, die beim Start seines Browsers angewendet wird, sodass der Datenverkehr über den Proxy dieses Profils hinausgeht, ohne die Systemeinstellungen oder die Route eines anderen Profils zu berühren.
- Der Proxy hängt am Profil statt am Rechner. Gewöhnliche Browser nutzen den System-Proxy. Hier verbindet sich jedes laufende Profil über seinen eigenen Endpunkt.
- Auch die Namensauflösung läuft über die Route, denn eine Anfrage, die aus einem Land eintrifft, während ihre Abfragen aus einem anderen kommen, ist ein Widerspruch auf der Netzwerkebene.
- WebRTC wird so eingeschränkt, dass es mit der Route übereinstimmt. Sich selbst überlassen, kann es Verbindungskandidaten preisgeben, die der Proxy nie berührt hat.
- Zeitzone und Sprache werden an das Land der Route angepasst, denn die Adresse ist der einzige Wert, der sich nicht erzeugen lässt, also muss der Rest der Geschichte zu ihr passen.
Die Route ist auch die Komponente, die sich am meisten für eine unabhängige Prüfung lohnt, weil sie von einem Dritten gekauft wird. Einen Endpunkt vor der Zuweisung zu testen und die beobachtete statt der beworbenen Adresse zurückzulesen, fängt einen Fehler ab, solange er noch ein Konfigurationsproblem ist und kein Account-Problem.
Was der Browser selbst verändert
Es gibt zwei Stellen, an denen ein Tool die Antworten verändern kann, die eine Seite erhält, und der Unterschied zwischen ihnen ist die technischste Weggabelung in diesem Thema.
| Ansatz | Funktionsweise | Die Schwäche |
|---|---|---|
| Skript-Injektion | Eine Erweiterung oder ein eingeschleustes Skript überschreibt die Funktionen, die eine Seite aufruft, sodass Canvas-Lesezugriffe und Navigator-Abfragen ersetzte Werte liefern | Die Überschreibungen sind selbst sichtbar. Gepatchte Funktionen lassen sich als gepatcht erkennen, und jede Oberfläche, die der Injektor vergessen hat, antwortet weiter mit dem echten Wert |
| Im eigenen Code des Browsers | Die Implementierung des Browsers antwortet mit den gespeicherten Werten des Profils, in den Codepfaden, in denen die echten Werte entstehen | Weit aufwendiger zu bauen und zu pflegen, weshalb sich darin speziell entwickelte Tools von Erweiterungen unterscheiden |
Der Injektionsansatz ist der Ausgangspunkt dieser Kategorie, und seine Grenze ist gut bekannt: Eine Seite kann prüfen, ob native Funktionen noch nativ aussehen, und sie kann dieselbe Oberfläche über einen Pfad erreichen, den die Injektion nicht abgedeckt hat. Speziell entwickelte Antidetect-Browser nehmen die Änderungen deshalb im Browser selbst vor, sodass die gespeicherte Identität das ist, was die Implementierung über jeden Pfad meldet, der sie liest.
Was das Öffnen eines Profils tatsächlich bewirkt
- Die gespeicherte Identität wird geladen: eine kohärente Menge von Geräteeigenschaften, dieselbe wie beim letzten Mal.
- Der Browser startet gegen das eigene Verzeichnis des Profils, sodass jeder dauerhafte Speicher der des Profils ist.
- Die Route wird angewendet: der Proxy, die Namensauflösung über ihn, WebRTC darauf beschränkt.
- Die Sitzung läuft und sammelt Zustand im Verzeichnis an.
- Beim Schließen wird der Zustand zurückgeschrieben, sodass das nächste Öffnen dasselbe Gerät, denselben Speicher und dieselbe Route fortsetzt.
Jeder Teil dieser Liste ist von außen überprüfbar. Öffnen Sie eine Fingerprint-Testseite zweimal und vergleichen Sie die Werte zwischen den Starts. Sehen Sie sich das Profilverzeichnis auf der Festplatte an. Lesen Sie die beobachtete Adresse zurück. Ein Tool dieser Kategorie sollte zu solchen Prüfungen einladen, denn der Mechanismus ist das Produkt.
Die ehrlichen Grenzen
Der Ansatz hat Ränder, und sie zu kennen gehört zum kompetenten Umgang damit.
- Er kann einen Browser nicht unidentifizierbar machen, und eine solche Behauptung kann ohnehin niemand messen. Das realistische Ziel ist ein Profil, das wie ein gewöhnlicher, in sich stimmiger Rechner wirkt und stabil bleibt.
- Er kann keine Widersprüche beheben, die Sie selbst einbauen. Eine Route in einem Land mit einer Zeitzone in einem anderen ist ein Konfigurationsfehler, und das Tool kann nur dafür sorgen, dass die richtige Konfiguration die einfache ist.
- Er deckt kein Verhalten ab. Timing, Menge und Rhythmus werden neben der Umgebung ausgewertet, und eine Flotte, die im Gleichschritt handelt, verrät sich, egal wie sauber jede einzelne Umgebung ist.
- Er deckt keine angegebene Identität ab. Gemeinsame Wiederherstellungsdaten, gemeinsame Zahlungsmittel und wiederverwendeter Text verknüpfen Accounts über die eigenen Datensätze der Plattform, weit oberhalb des Browsers.
- Er ändert keine Plattformregeln. Isolierung trennt legitime Umgebungen. Was eine Plattform erlaubt, entscheidet die Plattform, und für keinen Ausgang auf einer Plattform, die wir nicht kontrollieren, wird hier etwas versprochen.
Lesen Sie die Grenzen als Definition und nicht als Enttäuschung. Ein Antidetect-Browser ist ein Konsistenzinstrument: getrennter Speicher, eine stabile und plausible Identität, eine passende Route, pro Profil zusammengehalten und bei jedem Öffnen identisch wiederholt. Das ist der gesamte Mechanismus, und alles andere, was über die Kategorie geschrieben wird, ist eine Variation davon.

