- Google mengadakan acara bugSWAT dengan metode red-teaming lebih awal untuk memperkuat keamanan AI, dan memberi para peneliti kesempatan untuk menguji sistem AI mereka secara menyeluruh
- Tim yang memenangkan $50,000 pada 2023 kembali menemukan kerentanan baru di Gemini kali ini, dan meraih gelar 'Most Valuable Hacker(MVH)'
- Tim peretas menerima akses dan dokumentasi untuk fitur pratinjau Gemini baru dari Google lalu menguji fitur tersebut dari sudut pandang keamanan
- Saat meminta kode Python dengan prompt sederhana, muncul tombol “Run in Sandbox”
- Lingkungan sandbox Gemini adalah lingkungan eksekusi Python aman yang dirancang berbasis gVisor dan GRTE milik Google
- gVisor adalah kernel ruang pengguna buatan Google, teknologi yang memperkuat keamanan dengan mencegat system call
- Lingkungan sandbox sepenuhnya terisolasi, dan sangat sulit untuk meloloskan diri darinya
- Namun, dalam beberapa kasus kebocoran data dari dalam sandbox tetap dimungkinkan
- Mereka menemukan bahwa sandbox menyediakan library
os, lalu menulis kode Python untuk menjelajahi sistem file
- Menemukan file biner berukuran 579MB bernama
/usr/bin/entry/entry_point
- Jika file biner dicetak langsung dalam base64, sandbox akan crash, sehingga output dipecah per 10MB
- Menggunakan alat bernama
Caido untuk mengumpulkan semua chunk secara otomatis lalu memulihkannya kembali secara lokal
- Hasil analisis dengan perintah
file, strings, dan binwalk memperlihatkan struktur internal dan path internal Google
- Analisis binwalk menemukan direktori
google3 yang berisi kode sumber Python internal
- Di dalam direktori
assistant, terdapat kode terkait RPC yang digunakan Gemini untuk berinteraksi dengan layanan Google seperti YouTube dan Flights
- Ada string untuk mencegah dump skrip tertentu, tetapi tim keamanan Google telah meninjaunya terlebih dahulu dan menilai kode tersebut aman untuk dipublikasikan
Analisis logika utama sandbox
- Pemanggilan layanan Google diimplementasikan dalam kelas tertentu yang ditulis dengan kode Python
- Contoh:
_set_reader_and_writer, run_tool, dan lainnya berkomunikasi dengan layanan Google melalui file descriptor
- Dari dalam biner, pesan dapat dirakit langsung berdasarkan skema protobuf dan pemanggilan tool pun dimungkinkan
- Berdasarkan makalah
ReAct, Google mengimplementasikan Gemini agar dapat membuat prompt sendiri berkali-kali dan menyusun rencana untuk menyelesaikan masalah kompleks
- Misalnya, saat pengguna bertanya “Jam penerbangan Toronto → New York?”, Gemini memilih tool dan mencari data melalui beberapa tahap
- Dengan menyalahgunakan logika ini, mereka mencoba prompt injection agar sandbox dengan hak akses lebih tinggi dibuat
- Sebagian sandbox dapat mengakses fitur ekstensi Google seperti RPC API
- Fitur ekstensi dipanggil melalui FD yang selalu terbuka, dan jika ini disalahgunakan, ada kemungkinan memperoleh akses sistem tingkat lebih tinggi
- Mereka memastikan bahwa akses ke sandbox lanjutan dimungkinkan dalam kondisi tertentu, seperti saat Gemini berada di tahap menyusun rencana
Kebocoran file proto sensitif
- File Protocol Buffer (proto) digunakan untuk mendefinisikan data antar sistem, dan memuat informasi struktur sistem yang sensitif
- Setelah menjalankan
strings entry_point > stringsoutput.txt, pencarian string “Dogfood” mengungkap banyak path proto sensitif
- Contoh:
privacy/data_governance/attributes/proto/classification.proto → file yang mendefinisikan bagaimana Google mengklasifikasikan data pengguna
- Dengan perintah
cat stringsoutput.txt | grep '.proto' | grep 'security', daftar banyak file proto terkait keamanan yang sensitif pun terekspos
- Contoh:
security/thinmint/proto/core/thinmint_core.proto, security/credentials/proto/authenticator.proto, dan lain-lain
Mengapa file-file ini ada?
- Tim keamanan Google sebelumnya telah menyetujui konten yang disertakan dalam biner sandbox, tetapi pipeline build otomatis menambahkan file proto keamanan yang tidak diperlukan
- Akibatnya, file definisi internal yang sangat sensitif terekspos ke luar
- Para peretas menganggap ini sebagai kerentanan karena file-file tersebut diperlakukan sebagai informasi sensitif menurut standar Google
Kesimpulan dan refleksi
- Sistem AI terdiri dari banyak elemen yang saling berinteraksi, sehingga masalah keamanan tak terduga sering muncul
- Bahkan satu sandbox saja dapat berkomunikasi dengan tool internal dan hak aksesnya bisa berubah secara dinamis, sehingga pengujian yang presisi sangat diperlukan
- Kolaborasi dengan tim keamanan Google bermanfaat, dan keseluruhan pengalaman ini merupakan petualangan yang menantang sekaligus menarik
1 komentar
Komentar Hacker News