
Technischer PoC für CVE-2026-2472 (GCP-2026-011): Unauthentifiziertes und gespeichertes Cross-Site Scripting (XSS) in google-cloud-aiplatform _genai/_evals_visualization (Vertex AI Python SDK) mit Auswirkung auf Jupyter/Colab.
google-cloud-aiplatformgoogle-cloud-aiplatform ist das offizielle Python-SDK von Google Cloud für die Arbeit mit Vertex AI. Es bietet Abstraktionen auf hoher Ebene, um ML-Modelle (einschließlich AutoML und benutzerdefinierter Modelle) zu erstellen, zu trainieren, bereitzustellen und zu verwenden sowie Datensätze, Endpunkte, Pipelines und Vorhersagen zu verwalten.
GCP-2026-011 (veröffentlicht und aktualisiert am 2026-02-20) dokumentiert CVE-2026-2472, eine gespeicherte XSS-Schwachstelle in der Komponente _genai/_evals_visualization.py des Google Cloud Vertex AI Python SDK (google-cloud-aiplatform), die die Versionen 1.98.0 bis (ausschließlich) 1.131.0 betrifft, wobei ein nicht authentifizierter Angreifer Skript-Escape-Sequenzen in Modellbewertungsergebnisse oder Dataset-JSON injizieren und beliebige JavaScript-Ausführung in der Jupyter/Colab-Umgebung eines Opfers erreichen kann; Google gibt an, dass das Problem durch ein Upgrade auf Version 1.131.0 oder höher behoben ist (wobei 1.131.0 am 2025-12-16 veröffentlicht wurde).
vertexai/_genai/_evals_visualization.pyDie Datei ist anfällig für gespeichertes XSS, da sie vom Angreifer kontrollierbares JSON direkt in einen Inline-<script>-Block einbettet, ohne eine HTML-Escaping im Skript-Kontext durchzuführen. Dadurch kann ein bösartiger Wert, der eine Skript-schließende Sequenz (z. B. </script>) enthält, aus der beabsichtigten JavaScript-Datenzuweisung ausbrechen und ausführbares JavaScript in das gerenderte Jupyter/Colab-HTML injizieren.
Das Kernproblem ist das Muster:
_get_evaluation_html(...) injiziert rohes JSON in:
const data = {eval_result_json}; (Zeile 101)_get_comparison_html(...) injiziert rohes JSON in:
const data = {eval_result_json}; (Zeile 180)_get_inference_html(...) injiziert rohes JSON in:
const data = JSON.parse({dataframe_json}); (Zeile 252)Selbst wenn die Eingabe mit json.dumps(...) serialisiert wird, macht das sie nur zu gültigem JSON – es macht sie nicht sicher für die Einbettung in einen HTML-<script>-Kontext. Wenn ein Feld im JSON </script> enthält, kann der HTML-Parser des Browsers das aktuelle Skript-Tag beenden und den Rest als vom Angreifer kontrolliertes HTML/JS parsen.
{
"prompt": "</script><script>alert('XSS');</script>",
"rows": []
}
CVE-2026-2472google-cloud-aiplatform und pandaspip install google-cloud-aiplatform==1.98.0
pip install pandas
CVE-2026-2472.py aus, um den lokalen PoC zu erzeugen(.venv) L:\>python CVE-2026-2472.py
[+] xss_proof_local.html
