2 poin oleh GN⁺ 2025-03-29 | 1 komentar | Bagikan ke WhatsApp
  • 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

 
GN⁺ 2025-03-29
Komentar Hacker News
  • Ini adalah sistem yang saya kerjakan. Jika ada pertanyaan, silakan tanyakan kapan saja. Semua pendapat ini bersifat pribadi dan tidak mewakili pandangan pemberi kerja saya
  • Tulisan yang bagus. Ini bukan kerentanan besar, tetapi dari fakta bahwa Google menganggapnya penting, terlihat bahwa kesadaran mereka terhadap keamanan cukup tinggi
    • Mungkin dianggap penting karena disebutkan bahwa kebijakan tertentu di perusahaan menganggap hal ini sangat rahasia, tetapi rasanya lebih seperti "secara teknis dianggap sebagai kerentanan" daripada kerentanan yang jelas
  • Saya menggunakan metode serupa untuk mengikis kode sumber internal ChatGPT Code Interpreter ke repositori GitHub
    • Ini terutama berguna untuk melacak paket Python apa saja yang tersedia (dan versinya)
  • Jika memang sangat rahasia, sepertinya tidak mungkin semuanya sudah ada di GitHub
  • Definisi hacking makin lama makin longgar. Sandbox menjalankan fungsinya dengan baik dan tidak ada informasi sensitif yang bocor
  • Menjalankan perintah bawaan "strings" untuk mengekstrak beberapa nama file dari biner sulit dianggap sebagai hacking/cracking
    • Ironisnya, mendapatkan kode sumber Gemini mungkin tidak terlalu bernilai. Tetapi akan menarik kalau model itu menemukan atau mengakses korpus yang digunakan untuk pretraining
  • Menarik bahwa ini menunjukkan Google cukup aman. Sebagian besar perusahaan tampaknya tidak akan sebaik itu
  • Saya sempat berharap ada kebocoran, tetapi tetap saja ini penemuan dan analisis yang keren
    • Belakangan ini saya baru menyadari betapa pentingnya masalah seperti prompt injection pada LLM
    • Karena saya lebih tertarik pada LLM pribadi, saya dulu tidak menganggap masalah seperti ini penting. Tetapi setelah Operator dan Deep Research muncul, saya jadi paham
    • Agen AI pribadi dapat rentan terhadap prompt injection oleh pihak ketiga saat membaca konten internet atau melihat gambar
    • Menarik membayangkan masa depan di mana AI pribadi membaca misinformasi di internet lalu diretas
  • Artikel yang sangat menarik
    • Ini adalah file tentang kategori internal yang digunakan Google untuk mengklasifikasikan data pengguna
    • Saya ingin tahu klasifikasinya seperti apa. Misalnya apakah seperti "memiliki autisme" atau seperti "ini adalah nomor telepon pengguna"
  • Sandbox-nya diretas, tetapi tidak ada yang bocor. Artikelnya tetap menarik