Zum Hauptinhalt springen

6. Sicherheitsüberlegungen

Angreifer können die Informationen in Cache-Status verwenden, um das Verhalten des Caches (und anderer Komponenten) zu sondieren und auf die Aktivität derjenigen zu schließen, die den Cache verwenden. Das Cache-Status-Header-Feld mag diese Risiken nicht von sich aus erzeugen, kann Angreifern jedoch bei deren Ausnutzung helfen.

Zum Beispiel kann das Wissen, ob ein Cache eine Antwort gespeichert hat, einem Angreifer helfen, einen Timing-Angriff auf sensible Daten auszuführen.

Darüber hinaus kann die Offenlegung des Cache-Schlüssels einem Angreifer helfen, Modifikationen am Cache-Schlüssel zu verstehen, was Cache-Poisoning-Angriffe unterstützen kann. Siehe [ENTANGLE] für Details.

Die zugrunde liegenden Risiken können mit verschiedenen Techniken gemildert werden (z. B. durch Verwendung von Verschlüsselung und Authentifizierung und Vermeidung der Einbeziehung von Angreifer-kontrollierten Daten im Cache-Schlüssel), abhängig von ihrer genauen Natur. Beachten Sie, dass die bloße Verschleierung des Schlüssels dieses Risiko nicht mindert.

Um solche Angriffe nicht zu unterstützen, kann das Cache-Status-Header-Feld weggelassen, nur gesendet werden, wenn der Client autorisiert ist, es zu empfangen, oder mit sensiblen Informationen (z. B. dem key-Parameter) nur gesendet werden, wenn der Client autorisiert ist.