Browser Sniffing
# Browser Sniffing

Browser Sniffing ist eine Technologie zum Erkennen des von einem Benutzer verwendeten Internet-Browsers. Im Regelfall sendet ein Browser den sogenannten User-Agent-String im HTTP-Header, um sich beim Server zu identifizieren. Aus verschiedenen Gründen kann ein Anwender jedoch den User-Agent-String modifizieren, etwa durch die Einstellung general.useragent.override im Mozilla Firefox (User Agent Spoofing).

Das User Agent Spoofing kann verschiedene Gründe haben, z. B. Behebung von Kompatibilitätsproblemen (etwa Vorgaukeln eines Desktop-Browsers, weil es Probleme mit der mobilen Version einer Website gibt), Schutz der Anonymität aber auch zum Umgehen von User-Agent-basierten Seitenunterschieden, etwa unterschiedlichen Preisen im Webshop abhängig von dem jeweils verwendeten Gerät.

Trotz der Möglichkeit, den User-Agent-String zu modifizieren, wurden Methoden entwickelt, den User Agent dennoch zu erkennen. Dies liegt vor allen Dingen daran, dass verschiedene Browser über unterschiedliche Implementationen des Document Object Models (DOM) verfügen. Über spezielle JavaScripts ist es möglich, die DOM-Attribute und ggf. proprietäre Erweiterungen, etwa das nur im Internet Explorer vorhandene ActiveX zu erkennen. Weitere allgemeine Attribute zur Erkennung von Hardwareplattform (Smartphone, Tablet, Desktop-PC …) und Betriebssystem, können etwa über die Abmessungen des Bildschirms und die installierten Schriftarten gewonnen werden. Auch weitere Technologien wie Java Applets oder Adobe Flash können plattformabhängige Details offenbaren.

