• IT-Karriere:
  • Services:

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. Allianz Deutschland AG, Stuttgart
  2. IT-Systemhaus der Bundesagentur für Arbeit, Nürnberg

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.

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


Anzeige
Mobile-Angebote
  1. (u. a. Apple iPhone 11 Pro Max 256GB 6,5 Zoll Super Retina XDR OLED für 929,96€)
  2. 749€
  3. (u. a. Find X2 Neo 256GB 6,5 Zoll für 439,99€, Watch 41 mm Smartwatch für 179,99€)

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...


Folgen Sie uns
       


Viewsonic M2 - Test

Der kleine LED-Projektor eignet sich für Präsentationen und als flexibles Kino für unterwegs.

Viewsonic M2 - Test Video aufrufen
No One Lives Forever: Ein Retrogamer stirbt nie
No One Lives Forever
Ein Retrogamer stirbt nie

Kompatibilitätsprobleme und schlimme Sprachausgabe - egal. Golem.de hat den 20 Jahre alten Shooter-Klassiker No One Lives Forever trotzdem neu gespielt.
Von Benedikt Plass-Fleßenkämper

  1. Heimcomputer Retro Games plant Amiga-500-Nachbau
  2. Klassische Spielkonzepte Retro, brandneu
  3. Gaming-Handheld Analogue Pocket erscheint erst 2021

Chang'e 5: Chinesischer Probensammler ist im Mondorbit angekommen
Chang'e 5
Chinesischer Probensammler ist im Mondorbit angekommen

Nach 44 Jahren soll eine chinesische Raumsonde endlich wieder Gesteinsproben vom Mond zur Erde bringen.
Von Frank Wunderlich-Pfeiffer

  1. Raumfahrt Nasa hat überraschenden Favoriten bei Mondlanderkonzept
  2. SLS Nasa bestellt Triebwerke für den Preis einer ganzen Rakete
  3. Artemis Base Camp Nasa plant Mondhabitat

Librem Mini v2 im Test: Der kleine Graue mit dem freien Bios
Librem Mini v2 im Test
Der kleine Graue mit dem freien Bios

Der neue Librem Mini eignet sich nicht nur perfekt für Linux, sondern hat als einer von ganz wenigen Rechnern die freie Firmware Coreboot und einen abgesicherten Bootprozess.
Ein Test von Moritz Tremmel

  1. Purism Neuer Librem Mini mit Comet Lake
  2. Librem 14 Purism-Laptops bekommen 6 Kerne und 14-Zoll-Display
  3. Librem Mini Purism bringt NUC-artigen Mini-PC

    •  /