Schlafende Spione im Browser: Wie Push-Benachrichtigungen zu heimlichen Angriffen werden
Die unsichtbare Gefahr im Hintergrund
Web Push Notifications sind aus vielen modernen Webanwendungen nicht mehr wegzudenken. Sie liefern Echtzeit-Updates, Warnmeldungen und wichtige Hinweise direkt auf den Desktop. Doch genau diese Funktion kann auch missbraucht werden – und zwar völlig unbemerkt.
Ein neuer Angriffsvektor, der als Sleeping Agent bekannt wird, nutzt eine Lücke in der Sicherheitslogik von Browsern aus. Er schafft es, Web-Push-Nachrichten zu versenden, ohne dass der Nutzer je etwas sieht.
Wo der Angriff ansetzt
Die Web Push API verlangt eigentlich eine klare Regel: Jede Push-Nachricht muss eine sichtbare Notification erzeugen. Dieser Schutzmechanismus soll verhindern, dass Push-Kanäle heimlich für andere Zwecke missbraucht werden.
In der Praxis funktioniert der Schutz aber nicht wie gedacht. Ein bösartiger Service Worker kann die Notification zwar kurz anzeigen, sie dann aber sofort wieder schließen. Die Anzeige passiert dabei nur in der internen Datenbank des Browsers – nicht auf dem sichtbaren Bildschirm. Der Browser überprüft anschließend nur diese Datenbank und erkennt dadurch nicht, dass die Notification gar nicht wirklich sichtbar war.
Die Folge: Der Push-Kanal bleibt offen, der Nutzer bemerkt nichts davon.
Warum der Effekt so brisant ist
Der Effekt wirkt sich besonders stark aus, weil der Angriff extrem leicht umzusetzen ist. Schon der Besuch einer einmaligen Website kann ausreichen, um einen persistenten, unsichtbaren Kommunikationskanal einzurichten. Frühere Malware benötigte meist eine Installation und einen aktiven Prozess – hier reicht der Aufruf einer Website.
Die Lücke betrifft alle wichtigen Browser: Chrome, Edge und sogar frühere Versionen von Safari. Mit fünf Minuten Aufwand lässt sich der Effekt auf aktuellen Versionen reproduzieren。
Die technische Seite
Der Angriff funktioniert, because der Browser seine Überprüfung erst nach Abschluss der Service Worker-Operationen durchführt. Die Notification wird zwar in der Datenbank gespeichert, aber gleichzeitig wieder gelöscht. Der Browser glaubt dann, die Regel sei eingehalten worden.
Für Web-Developer relevant
Wer selbst Web Push in seinen Anwendungen verwendet, muss sich überlegen, wie er sich vor solchen Angriffen schützt. Hierfür gibten sich mehrere praktische Maßnahmen:
- Service Worker auf unerwartetes Notification-Verhalten hin überprüfen
- Lifecycle-Events von Notifications protokollieren und analysieren
- Push Nachrichten serverseitig auf ihre Legitimität hin verifizieren,比如 mittels Cryptographie
Was jetzt zu tun ist
Browser-Hersteller arbeiten bereits an Fixes. Wer heute schon sicher aufstellen möchte, sollte seine Service Worker beobachten, Push-Sender serverseitig prüfen, Browser auf neuem Stand halten und die eigene Bedrohungsmodelle überdenken.
Web Push ist weiterhin ein wertvolles Tool – doch die zugrunde liegende Sicherheitslogik muss noch besser kontrolliert werden.