← Alle Artikel

Was ist Subresource Integrity (SRI)? Sicherheit von per CDN geladenem Code

26. September 2026

Was ist Subresource Integrity (SRI)? Sicherheit von per CDN geladenem Code

Moderne Sites laden einen Teil ihres JavaScripts und CSS aus Drittquellen (CDNs, Analytics, Widgets). Das ist praktisch, birgt aber eine Vertrauensannahme: “die Datei aus dieser Quelle ist die erwartete.” Wird dieses CDN oder der Dritte kompromittiert, kann schädlicher Code ohne Ihr Wissen in Ihre Site eingeschleust werden. Subresource Integrity (SRI) ersetzt diese Annahme durch eine kryptografische Garantie.

Das Problem: Lieferkettenrisiko

Fügen Sie <script src="https://cdn.example/bibliothek.js"> hinzu, führt der Browser unhinterfragt aus, was an dieser Adresse liegt. Kompromittiert der Angreifer das CDN oder die Verbindung, kann er den Inhalt der Datei ändern und in jedem Browser der Besucher Code ausführen — selbst ohne Schwachstelle auf Ihrem Server. Das Risiko liegt in der Lieferkette.

Die Lösung: ein SRI-Hash

SRI erlaubt, den kryptografischen Digest (Hash) der erwarteten Datei zum Tag hinzuzufügen. Der Browser lädt die Datei, berechnet ihren Digest und vergleicht ihn mit Ihrem; stimmen sie nicht überein, führt er die Datei nicht aus.

<script src="https://cdn.example/bibliothek.js"
        integrity="sha384-oqVuAfXRKap7fdgcCY5uykM6+R9GqQ8K/uxy9rx7HNQlGYl1kPzQho1wx4JwY8wC"
        crossorigin="anonymous"></script>
  • integrity: der base64-Digest mit sha384-- (oder sha256/sha512-)Präfix.
  • crossorigin="anonymous": nötig, damit SRI bei Cross-Origin-Dateien funktioniert.

Ist die Datei nicht exakt die erwartete Version, weigert sich der Browser zu laden, sodass die veränderte Datei eines kompromittierten CDNs nicht ausgeführt wird.

Wie man es anwendet

  1. Den Digest erzeugen (viele CDNs bieten ein fertiges SRI-Tag).
  2. Eine feste Version nutzen. SRI hängt vom Dateiinhalt ab; nutzen Sie eine bewegliche Version wie “latest”, bricht ein legitimes Update die Site. Auf eine feste Version pinnen.
  3. Kritische Drittanbieter-Skripte priorisieren — Zahlung, Identität und gängige Bibliotheken.

Grenzen

SRI ist stark, aber nicht alles: Für dynamisch wechselnde Drittanbieter-Skripte (personalisierte Werbung/Analytics) ist es unpraktisch, und es prüft nicht das eigene legitime Verhalten eines Skripts — nur, dass die erwartete Datei geladen wurde.

Zusammenfassung

SRI wandelt die Annahme “die geladene Datei ist die erwartete” über Drittanbieter-Code in eine kryptografische Prüfung. Das Hinzufügen von integrity + crossorigin zu kritischen CDN-Skripten mit fester Version verhindert weitgehend, dass eine kompromittierte Lieferkette Code in Ihre Site einschleust.

Quellen: MDN: Subresource Integrity, W3C SRI.

Der External-Surface-Scan von CyberTestify zeigt die von Ihrer Site geladenen Drittanbieter-Skripte und fehlende SRI-/Sicherheits-Header.