Wegen des Internet Explorers 11: Mozilla ändert User-Agent von Firefox
-
Sören Hentzschel -
31. Dezember 2022 um 14:07 -
4.441 Mal gelesen -
12 Antworten
Der Microsoft Internet Explorer spielt heute keine Rolle mehr – sollte man meinen. Auf Grund von fehlerhaft implementiertem User-Agent-Sniffing auf zu vielen Websites, welche Firefox 110 und höher als Internet Explorer 11 erkennen, sah sich Mozilla gezwungen, den User-Agent von Firefox zu ändern.
Mit jedem Besuch sendet der Browser einen sogenannten User-Agent an die jeweilige Website. Dieser beinhaltet vor allem eine Information darüber, welches Betriebssystem und welcher Browser genutzt wird. Es ist allerschlechteste Praxis einer Website, den User-Agent auszulesen, um Entscheidungen über Funktionalität oder implementierte Code-Pfade zu treffen – und doch machen genau das sehr viele Websites.
Um das Risiko dafür zu minimieren, aber auch aus Privatsphäre-Gründen, um den digitalen Fingerabdruck zu reduzieren, wurde der User-Agent im Laufe der Zeit immer weiter reduziert oder bestimmte Daten auf einen festen Wert eingefroren, was den User-Agent heute bewusst weniger nützlich macht als noch vor vielen Jahren. Andererseits muss jede Änderung mit sehr großer Vorsicht durchgeführt werden, weil die kleinste Änderung auf Grund des zuvor beschriebenen User-Agent-Sniffings wieder neue Kompatibilitätsprobleme auf Websites verursachen kann.
Ein Beispiel für fehlerhaft implementiertes User-Agent-Sniffing ist die Erkennung des Internet Explorers in Version 11. Dessen User-Agent sieht wie folgt aus:
Mozilla/5.0 (Windows NT 6.1; WOW64; Trident/7.0; AS; rv:11.0) like Gecko
Einige Websites prüfen stumpf auf das Vorkommen von rv:11
im User-Agent, um daraus zu folgern, dass der Internet Explorer 11 genutzt wird. Das Problem? So hätte der User-Agent von Firefox 110 ausgesehen:
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:110.0) Gecko/20100101 Firefox/110.0
Websites, welche lediglich eine primitive Prüfung wie die eben genannte durchführen, würden damit Firefox 110 als Internet Explorer 11 identifizieren – mit teils schwerwiegenden Folgen, weil diese Websites unter Umständen plötzlich völlig falsche Code-Pfade nutzen und daher nicht mehr korrekt funktionieren.
Aus diesem Grund hat Mozilla einen weiteren Teil des User-Agents von Firefox eingefroren, wie schon das Mozilla/5.0
zu Beginn oder die Version der Browser-Engine Gecko/20100101
, zumindest temporär.
Beginnend mit Firefox 110 wird der Teil nach rv:
auch in neueren Versionen die Versionsnummer 109 anzeigen, während die hintere Versionsnummer weiterhin korrekterweise die jeweils aktuelle Firefox-Version anzeigen wird. Daraus ergibt sich für Firefox 110 der folgende User-Agent:
Mozilla/5.0 (Windows NT 6.1; WOW64; rv:109.0) Gecko/20100101 Firefox/110.0
Da dieses Problem naturgemäß wieder verschwinden wird, sobald Firefox die Versionsnummer 120 erreicht, wird Mozilla diese Anpassung des User-Agents mit Firefox 120 allerdings wieder entfernen. Firefox 120 wird nach aktueller Planung am 21. November 2023 erscheinen.
Der Beitrag Wegen des Internet Explorers 11: Mozilla ändert User-Agent von Firefox erschien zuerst auf soeren-hentzschel.at.
Antworten 12