Cache-Partitionierung: Javascript selber zu hosten, lohnt sich bald mehr

Aus Sicherheitsgründen planen mehrere Browserhersteller, künftig ihre Caches nach Webseiten zu trennen. Das Laden von Resourcen über CDN-Netze lohnt sich danach nicht mehr.

Artikel veröffentlicht am ,
Durch Messen der Zeit bei Webanfragen lässt sich herausfinden, ob Dateien im Cache liegen. Das wollen Browser jetzt unterbinden.
Durch Messen der Zeit bei Webanfragen lässt sich herausfinden, ob Dateien im Cache liegen. Das wollen Browser jetzt unterbinden. (Bild: Chris Desmond, Wikimedia Commons)

Mehrere Browserhersteller planen Änderungen, die dazu führen werden, dass Webressourcen nicht mehr über verschiedene Webseiten hinweg gecacht werden. Darüber berichtet der Web-Programmierer Jeff Kaufman in einem Blogpost. Der Grund dafür sind mögliche Seitenkanalangriffe. Für Webseitenbetreiber bedeutet diese Änderung, dass es in vielen Fällen vorteilhaft sein wird, gängige Webressourcen wie beispielsweise Javascript-Bibliotheken oder Fonts selbst zu hosten und nicht von externen Quellen einzubinden.

Stellenmarkt
  1. Inhouse SAP FI/CO-Berater (m/w/d)
    THOMAS SABO GmbH & Co. KG, Lauf an der Pegnitz
  2. Datamanager / Datenmanager / Sachbearbeiter (m/w/d) für den Bereich Biometrie
    Winicker Norimed GmbH Medizinische Forschung, Nürnberg
Detailsuche

Bisher war es so: Wenn zwei verschiedene Webseiten dieselbe Datei einbinden, kann diese beim Laden der zweiten Webseite aus dem Cache geladen werden. Üblich ist das etwa bei Javascript-Bibliotheken. Wer die häufig genutzte Jquery-Bibliothek einsetzt, lädt diese häufig von einem von den Jquery-Entwicklern bereitgestellten Host. Auch gibt es verschiedene CDN-Anbieter für gängige Javascript-Bibliotheken.

Gemeinsamer Cache kann für Seitenkanalangriffe genutzt werden

Aus Performancegründen hat das naheliegende Vorteile: Bei fast allen Nutzern dürfte die aktuelle Version der Jquery-Bibliothek bereits im Browsercache vorhanden sein, sie muss nicht erneut heruntergeladen werden.

Doch das Caching kann zu Sicherheitsproblemen führen. Angreifer können dieses Verhalten nutzen, um herauszufinden, ob eine andere Person in jüngerer Zeit auf einer bestimmten Webseite unterwegs war. Dies geht etwa, indem man eine dort eingebundene Ressource aufruft und anschließend misst, wie schnell der Ladevorgang durchgeführt wurde.

Golem Akademie
  1. Cinema 4D Grundlagen: virtueller Drei-Tage-Workshop
    14.–16. März 2022, Virtuell
  2. Linux-Shellprogrammierung: virtueller Vier-Tage-Workshop
    8.–11. März 2022, Virtuell
Weitere IT-Trainings

Solche Angriffe, die auch Cross-Site-Leaks oder XS-Leaks genannt werden, sind schon länger bekannt, aber sie wurden zuletzt immer weiter verbessert. Das führt jetzt dazu, dass die Entwickler von Chrome und Firefox den Cache künftig nach Webseiten trennen werden. Aktiv ist die Funktion in den Browsern noch nicht, es ist aber davon auszugehen, dass dies in künftigen Versionen zur Standardeinstellung wird. In Safari gibt es bereits jetzt eine entsprechende Funktionalität.

Konkret bedeutet das: Wenn dieselbe Webseite mehrfach aufgerufen wird, werden die Daten aus dem Cache geladen. Ruft aber eine andere Webseite die von der ersten Webseite genutzten Ressourcen ab, werden diese erneut geladen, da die Caches der Seiten getrennt sind.

Laden vom eigenen Host ohne Cache schneller

Wer als Betreiber einer Webseite gängigen Javascript-Code oder andere Ressourcen - beispielsweise Schriftarten - von einem externen Host zieht, sollte sich überlegen, ob dies in Zukunft noch Sinn macht. Denn in Sachen Geschwindigkeit dürfte das Selbsthosten vorteilhafter sein. Dank der HTTP-Funktion Keep-Alive oder mittels HTTP/2 können mehrere Dateien vom selben Host über eine Verbindung abgerufen werden. Generell ist es außerdem natürlich sinnvoll, darauf zu achten, nicht unnötig viele Ressourcen einzubinden und Javascript- sowie CSS-Dateien komprimiert auszuliefern.

Bei vielen externen Ressourcen, die üblicherweise auf Webseiten eingebunden werden, handelt es sich um Code oder Daten unter freien Lizenzen, aus rechtlicher Sicht ist das Selbsthosten daher in vielen Fällen kein Problem. Jquery beispielsweise steht unter der freien MIT-Lizenz. Auch die häufig von Webseiten eingebundenen Google Fonts stehen alle unter freien Lizenzen und können damit legal selbst gehostet werden.

Aus Sicherheits- und Datenschutzgründen hat es ebenfalls Vorteile. So kann beispielsweise eine Kompromittierung der Hosts von Webressourcen dazu führen, dass Webseiten angegriffen werden. Auch vermeidet man dadurch das Übertragen von Daten über den Webseitenbesuch an Dritte.

Bitte aktivieren Sie Javascript.
Oder nutzen Sie das Golem-pur-Angebot
und lesen Golem.de
  • ohne Werbung
  • mit ausgeschaltetem Javascript
  • mit RSS-Volltext-Feed


Kasselbarth 10. Nov 2019

Lol, ich sag besser nix mehr

twothe 10. Nov 2019

JS hat gegenüber PHP für gerade solche Aufgaben erhebliche Vorteile. Ist die Seite...

FreiGeistler 08. Nov 2019

Davon wird ja nicht einfach so generell abgeraten, sondern weil es sehr unzuverlässig ist.

FreiGeistler 07. Nov 2019

Überhaupt nicht. Es verbleiben mit Decentraleyes einfach jquery & co, die von vielen...

mifritscher 06. Nov 2019

Dann baut man halt was rein, dass die Seite bricht, wenn das Einbinden nicht...



Aktuell auf der Startseite von Golem.de
Bundesservice Telekommunikation  
Die dubiose Adresse in Berlin-Treptow

Angeblich hat das Innenministerium nichts mit dem Bundesservice Telekommunikation zu tun. Doch beide teilen sich offenbar ein Bürogebäude.
Ein Bericht von Friedhelm Greis

Bundesservice Telekommunikation: Die dubiose Adresse in Berlin-Treptow
Artikel
  1. Reddit: IT-Arbeiter automatisiert seinen Job angeblich vollständig
    Reddit
    IT-Arbeiter automatisiert seinen Job angeblich vollständig

    Ein anonymer IT-Spezialist will unbemerkt seinen Job vollständig automatisiert haben. Dem Arbeitgeber sei dies seit einem Jahr nicht aufgefallen.

  2. E-Mail: Outlook-Suche in MacOS 12.1 ist noch immer kaputt
    E-Mail
    Outlook-Suche in MacOS 12.1 ist noch immer kaputt

    Seit Wochen ärgern sich Outlook-User darüber, dass die E-Mail-Suche unter MacOS 12.1 nicht mehr richtig funktioniert. Ein Fix ist in Arbeit.

  3. Spielebranche: Microsoft will Activision Blizzard übernehmen
    Spielebranche
    Microsoft will Activision Blizzard übernehmen

    Diablo und Call of Duty gehören bald zu Microsoft: Der Softwarekonzern will Activision Blizzard für rund 70 Milliarden US-Dollar kaufen.

Du willst dich mit Golem.de beruflich verändern oder weiterbilden?
Zum Stellenmarkt
Zur Akademie
Zum Coaching
  • Schnäppchen, Rabatte und Top-Angebote
    Die besten Deals des Tages
    Daily Deals • PS5 wohl am 19.01. bestellbar • RTX 3080 12GB bei Mindfactory 1.699€ • Samsung Gaming-Monitore (u.a. G5 32" WQHD 144Hz Curved 299€) • MindStar (u.a. GTX 1660 6GB 499€) • Sony Fernseher & Kopfhörer • Samsung Galaxy A52 128GB 299€ • CyberGhost VPN 1,89€/Monat [Werbung]
    •  /