Apa yang terjadi
Unit 42 Palo Alto Networks menemukan dan dengan bertanggung jawab mengungkapkan kelemahan desain di Google Cloud's Vertex AI Python SDK (dilaporkan 2026-03-05, diperbaiki pada 2026-04-15, diungkapkan secara publik ~2026-06-16). Versi SDK yang terpengaruh 1.139.0 dan 1.140.0 menangani input yang dikendalikan pengguna dengan tidak tepat dalam kelas penyimpanan GitRepository yang digunakan untuk mengambil kode untuk eksekusi pipeline ML/data. Parameter commit_sha dan directories dilewatkan ke panggilan subprocess git tanpa validasi atau pemisah argumen --, memungkinkan injeksi flag git (misalnya, --upload-pack) yang menyebabkan git menjalankan program eksternal yang dikendalikan penyerang. Versi yang terpengaruh tercantum sebagai 'melalui terbaru', menunjukkan tidak ada patch upstream yang tersedia pada pengungkapan.
Mengapa penting
Serangan ini tidak memerlukan akses ke proyek cloud korban — hanya ID proyek publik dan wilayah mereka. Ini menunjukkan bahwa pipeline unggahan model ML adalah permukaan RCE novel: deserialisasi pickle dalam wadah yang melayani menjalankan kode arbitrer dengan izin layanan akun cloud, merusak isolasi penyewa dalam platform AI yang dikelola. Teknik ini (penamaan-konvensi squatting + pickle RCE) dapat digeneralisasikan ke platform ML lain yang menghasilkan jalur penyimpanan yang dapat diprediksi.
Vektor serangan
SDK Python Vertex AI (versi 1.139.0–1.140.0) menghasilkan nama bucket GCS staging yang dapat diprediksi dari ID proyek dan wilayah korban (format: project-vertex-staging-region). Penyerang dengan proyek Google Cloud mereka sendiri mendaftarkan sebelumnya nama bucket ini (bucket squatting). Ketika korban mengunggah model, SDK diam-diam mengunggah artefak ke bucket penyerang. Cloud Function memicu pada unggahan dan menukar model yang sah dengan payload pickle/joblib berbahaya dalam jendela kondisi balapan ~2,5 detik. Vertex AI kemudian mendeserialisasi model yang terracuni, menjalankan kode penyerang di dalam wadah layanan Google dan membocorkan token OAuth dari server metadata.
Sistem yang terdampak
google-cloud-aiplatform (Vertex AI Python SDK) versi 1.139.0 – 1.140.0; sepenuhnya diperbaiki dalam 1.144.0 dan 1.148.0
Mitigasi
Tingkatkan google-cloud-aiplatform ke versi 1.148.0 atau lebih baru. Selalu secara eksplisit atur parameter staging_bucket pada unggahan model daripada mengandalkan nama yang dibuat secara otomatis. Penasihat: https://unit42.paloaltonetworks.com/hijacking-vertex-ai-model/