Start › Cybersecurity-Wiki › Was ist ein Headless-Browser?

Wiki

Was ist ein Headless-Browser?

Ein Headless-Browser ist ein Webbrowser ohne sichtbare Oberfläche.
Er lädt Seiten, führt JavaScript aus und füllt Formulare aus, wird aber per Programm statt per Maus gesteuert.

Funktionsweise eines Headless-Browsers

Der Headless-Browser nutzt dieselbe Technik wie ein normaler Browser, zeigt das Ergebnis aber nicht an.
Steuerbefehle kommen aus Skripten über Schnittstellen wie das Chrome DevTools Protocol oder WebDriver.

Automatisierte Tests

Entwickler testen damit Websites automatisch: Seiten aufrufen, klicken, Eingaben machen und prüfen, ob alles funktioniert.
Das geht schnell und lässt sich bei jeder Änderung wiederholen.

Datengewinnung im Internet

Headless-Browser werden auch zum Web-Scraping genutzt, also zum automatischen Auslesen von Inhalten, Preisen und Daten.
Weil sie JavaScript ausführen, erreichen sie auch dynamisch geladene Inhalte.

Sicherheitsimplikationen von Headless-Browsern

Was für Tests praktisch ist, nutzen auch Angreifer: Headless-Browser verhalten sich fast wie echte Besucher und sind für Bots ideal, etwa für Kontoübernahmen, Spam und Kartentests.

Verteidigung gegen Headless-Browser-Angriffe

Erkennung über Browsermerkmale wird immer schwieriger, weil Werkzeuge diese verschleiern.
Wirksamer ist es, jede Anfrage etwas kosten zu lassen: CDPCaptcha verlangt vom Browser Rechenarbeit, die bei vielen automatisierten Anfragen teuer wird, kombiniert mit Ratenbegrenzung.

Sicherheitstests mit Headless-Browsern

Sicherheitsteams nutzen Headless-Browser selbst, um Anwendungen auf Schwachstellen wie Cross-Site-Scripting zu prüfen.
Auch Penetrationstests werden damit automatisiert.

Beliebte Headless-Browser

Chrome und Firefox lassen sich im Headless-Modus starten.
Verbreitete Steuerwerkzeuge sind Puppeteer, Playwright und Selenium;
ältere Projekte wie PhantomJS werden nicht mehr gepflegt.

Auswahl eines Headless-Browsers

Wichtig sind die unterstützten Browser, die Programmiersprache, die Stabilität und wie aktiv ein Projekt gepflegt wird.
Für Tests sollte der Browser dem der Nutzer möglichst entsprechen.

Verwendung eines Headless-Browsers

Ein Skript startet den Browser, öffnet eine Adresse, führt Aktionen aus und liest Ergebnisse oder Bildschirmfotos aus.
Beim Scraping sollten die Regeln der Website und das Recht beachtet werden.

Schlussfolgerung

Headless-Browser sind wertvolle Werkzeuge für Entwicklung und Tests, aber auch die Basis vieler Bots.
Websites schützen ihre Formulare am besten mit Verfahren, die nicht auf Browsermerkmale, sondern auf echte Kosten für Bots setzen.