Öffnet in einem neuen Tab
Sicherheitslücke

Google zahlt 90.000 Dollar für RCE-Lücke in DevSite

Ein offengelegter Signaturschlüssel und unsicheres Pickle ermöglichten Remote Code Execution auf Google-Entwicklerseiten ohne Login.

Google zahlt 90.000 Dollar für RCE-Lücke in DevSite
Bildquelle: TY Lim / Shutterstock.com

Ein offengelegter Signaturschlüssel im Session-Cookie und eine unsichere Deserialisierung erlaubten unbefugte Codeausführung auf Google-Servern. Betroffen war die Dokumentationsplattform DevSite.

Der Sicherheitsforscher Simon Köck hat eine gravierende Schwachstelle auf Googles Entwicklerplattform DevSite aufgedeckt. Über manipulierte Session-Cookies gelang es ihm, ohne Authentifizierung beliebigen Code auf den Servern des Konzerns auszuführen (Remote Code Execution, RCE). Google stufte die Lücke als kritisch ein und zahlte Köck eine Bug-Bounty-Prämie in Höhe von 90.000 US-Dollar.

Geheimer Signaturschlüssel im Cookie

Den Ausgangspunkt bildete eine Analyse des OAuth-Anmeldeprozesses auf developers.google.com. Köck bemerkte, dass ein dort gesetztes Flask-Session-Cookie mit rund 1.200 Bytes ungewöhnlich groß war. Da Flask Cookies zwar kryptografisch signiert, aber nicht verschlüsselt, konnte der Forscher die Nutzlast decodieren. Darin fand sich ein serialisiertes Python-Objekt, das sowohl die OAuth-Client-ID als auch das zugehörige Client-Secret enthielt.

Bei der Überprüfung stellte sich heraus, dass Google dieses Client-Secret identisch als SECRET_KEY zur Signierung des Session-Cookies verwendete. Der Signaturschlüssel steckte somit direkt in den Daten, die er schützen sollte. Damit war es möglich, beliebige Sitzungsdaten zu fälschen und mit einer gültigen Signatur zu versehen.

Die eigentliche Codeausführung ergab sich aus dem Zusammenspiel mit dem Backend: Der OAuth-Callback von Google nutzte Pythons pickle-Modul, um die im Cookie hinterlegten Daten zu deserialisieren. Da pickle bei der Rekonstruktion von Objekten beliebige Befehle ausführen kann, erstellte Köck ein präpariertes Cookie mit einer Schadlast, die den Server testweise für eine definierte Sekundenzahl pausieren ließ. Die verzögerten Serverantworten bestätigten die Remote-Codeausführung.

Anzeige

Firebase und Android betroffen

Da die DevSite-Architektur als gemeinsame Plattform dient, betraf die Schwachstelle mehrere Google-Entwicklerangebote, darunter die Dokumentationen für Firebase und Android.

Köck meldete das Problem am 6. August 2026. Google bestätigte den Bericht am Folgetag, zahlte die Prämie Ende August aus und schloss die Sicherheitslücke am 7. Oktober vollständig. Der Vorfall verdeutlicht erneut die Risiken unsicherer Deserialisierungsmechanismen in Kombination mit clientseitig exponierten Schlüsseln.

(red)

Anzeige
Anzeige