
PoC tecnico per CVE-2026-2472 (GCP-2026-011): Cross-Site Scripting (XSS) non autenticato e persistente in google-cloud-aiplatform _genai/_evals_visualization (Vertex AI Python SDK) che interessa Jupyter/Colab.
google-cloud-aiplatformgoogle-cloud-aiplatform è l'SDK Python ufficiale di Google Cloud per lavorare con Vertex AI. Fornisce astrazioni di alto livello per creare, addestrare, distribuire e utilizzare modelli ML (inclusi AutoML e modelli personalizzati), e per gestire dataset, endpoint, pipeline e previsioni.
GCP-2026-011 (pubblicato e aggiornato il 2026-02-20) documenta CVE-2026-2472, una vulnerabilità XSS persistente nel componente _genai/_evals_visualization.py dell'SDK Python di Google Cloud Vertex AI (google-cloud-aiplatform) che interessa le versioni dalla 1.98.0 fino alla (esclusa) 1.131.0, in cui un attaccante non autenticato può iniettare sequenze di escape di script nei risultati di valutazione dei modelli o nel JSON dei dataset ed eseguire JavaScript arbitrario nell'ambiente Jupyter/Colab di una vittima; Google indica che il problema è risolto aggiornando alla versione 1.131.0 o successiva (con la 1.131.0 rilasciata il 2025-12-16).
vertexai/_genai/_evals_visualization.pyIl file è vulnerabile a XSS persistente perché incorpora JSON controllabile dall'attaccante direttamente in un blocco <script> inline senza eseguire l'escaping del contesto script HTML. Ciò consente a un valore dannoso contenente una sequenza di chiusura dello script (ad es. </script>) di fuoriuscire dall'assegnazione dei dati JavaScript prevista e iniettare JavaScript eseguibile nell'HTML Jupyter/Colab renderizzato.
Il problema principale è il pattern:
_get_evaluation_html(...) inietta JSON grezzo in:
const data = {eval_result_json}; (riga 101)_get_comparison_html(...) inietta JSON grezzo in:
const data = {eval_result_json}; (riga 180)_get_inference_html(...) inietta JSON grezzo in:
const data = JSON.parse({dataframe_json}); (riga 252)Anche quando l'input viene serializzato con json.dumps(...), questo lo rende solo JSON valido—non lo rende sicuro per l'incorporamento in un contesto <script> HTML. Se un qualsiasi campo nel JSON contiene </script>, il parser HTML del browser può terminare il tag script corrente e interpretare il resto come HTML/JS controllato dall'attaccante.
{
"prompt": "</script><script>alert('XSS');</script>",
"rows": []
}
CVE-2026-2472google-cloud-aiplatform e pandaspip install google-cloud-aiplatform==1.98.0
pip install pandas
CVE-2026-2472.py per generare il PoC locale(.venv) L:\>python CVE-2026-2472.py
[+] xss_proof_local.html
