Kecerdasan Data Generatif

Halusinasi LLM yang Menyebar Memperluas Permukaan Serangan Pengembang Kode

Tanggal:

Penggunaan model bahasa besar (LLM) oleh pengembang perangkat lunak menghadirkan peluang lebih besar daripada yang diperkirakan sebelumnya bagi penyerang untuk mendistribusikan paket berbahaya ke lingkungan pengembangan, menurut penelitian yang baru-baru ini dirilis.

Studi dari vendor keamanan LLM Lasso Security merupakan tindak lanjut dari laporan tahun lalu mengenai potensi penyerang untuk menyalahgunakan kecenderungan LLM untuk berhalusinasi, atau untuk menghasilkan hasil yang tampaknya masuk akal namun tidak berdasarkan fakta, sebagai respons terhadap masukan pengguna.

Halusinasi Paket AI

Grafik penelitian sebelumnya berfokus pada kecenderungan ChatGPT untuk mengarang nama pustaka kode โ€” di antara fabrikasi lainnya โ€” ketika pengembang perangkat lunak meminta bantuan chatbot berkemampuan AI dalam lingkungan pengembangan. Dengan kata lain, chatbot terkadang mengeluarkan tautan ke paket yang tidak ada di repositori kode publik ketika pengembang mungkin memintanya untuk menyarankan paket yang akan digunakan dalam sebuah proyek.

Peneliti keamanan Bar Lanyado, penulis studi tersebut dan sekarang di Lasso Security, menemukan bahwa penyerang dapat dengan mudah menjatuhkan paket berbahaya yang sebenarnya ke lokasi yang ditunjuk oleh ChatGPT dan memberinya nama yang sama dengan paket halusinasi tersebut. Pengembang mana pun yang mengunduh paket berdasarkan rekomendasi ChatGPT dapat memasukkan malware ke dalam lingkungan pengembangan mereka.

milik Lanyado penelitian lanjutan meneliti luasnya masalah halusinasi paket di empat model bahasa besar yang berbeda: GPT-3.5-Turbo, GPT-4, Gemini Pro (sebelumnya Bard), dan Coral (Cohere). Dia juga menguji kecenderungan setiap model untuk menghasilkan paket halusinasi dalam berbagai bahasa pemrograman dan frekuensi menghasilkan paket halusinasi yang sama.

Untuk pengujian tersebut, Lanyado mengumpulkan daftar ribuan pertanyaan โ€œbagaimana caranyaโ€ yang diajukan oleh pengembang di lingkungan pemrograman yang berbeda - python, node.js, go, .net, ruby โ€‹โ€‹- yang paling sering mencari bantuan dari LLM di lingkungan pengembangan. Lanyado kemudian menanyakan setiap model pertanyaan terkait pengkodean serta rekomendasi paket yang terkait dengan pertanyaan tersebut. Dia juga meminta setiap model untuk merekomendasikan 10 paket lagi untuk mengatasi masalah yang sama.

Hasil Berulang

Hasilnya meresahkan. 64.5% "percakapan" yang dilakukan Lanyado dengan Gemini menghasilkan paket halusinasi. Dengan Coral, angkanya adalah 29.1%; LLM lain seperti GPT-4 (24.2%) dan GPT3.5 (22.5%) tidak memberikan hasil yang jauh lebih baik.

Ketika Lanyado menanyakan serangkaian pertanyaan yang sama kepada masing-masing model sebanyak 100 kali untuk melihat seberapa sering model tersebut berhalusinasi pada paket yang sama, ia mendapati tingkat pengulangannya juga mencengangkan. Cohere, misalnya, mengeluarkan paket halusinasi yang sama lebih dari 24%; Chat GPT-3.5 dan Gemini sekitar 14%, dan GPT-4 sebesar 20%. Dalam beberapa kasus, model yang berbeda berhalusinasi tentang paket yang sama atau serupa. Jumlah tertinggi model halusinasi silang terjadi antara GPT-3.5 dan Gemini.

Lanyado mengatakan bahwa meskipun pengembang yang berbeda mengajukan pertanyaan kepada LLM tentang topik yang sama tetapi menyusun pertanyaan secara berbeda, ada kemungkinan LLM akan merekomendasikan paket halusinasi yang sama dalam setiap kasus. Dengan kata lain, pengembang mana pun yang menggunakan LLM untuk bantuan pengkodean kemungkinan besar akan menemukan banyak paket halusinasi yang sama.

โ€œPertanyaannya bisa sangat berbeda tetapi dengan subjek yang sama, dan halusinasi akan tetap terjadi, menjadikan teknik ini sangat efektif,โ€ kata Lanyado. โ€œDalam penelitian saat ini, kami menerima 'paket berulang' untuk berbagai pertanyaan dan subjek yang berbeda dan bahkan pada model yang berbeda, yang meningkatkan kemungkinan penggunaan paket halusinasi ini.โ€

Mudah Dieksploitasi

Seorang penyerang yang mempunyai nama dari beberapa paket yang berhalusinasi, misalnya, dapat mengunggah paket dengan nama yang sama ke repositori yang sesuai dengan mengetahui bahwa ada kemungkinan besar LLM akan mengarahkan pengembang ke sana. Untuk mendemonstrasikan ancaman yang tidak bersifat teoritis, Lanyado mengambil satu paket halusinasi yang disebut โ€œhuggingface-cliโ€ yang ia temui selama pengujiannya dan mengunggah paket kosong dengan nama yang sama ke repositori Hugging Face untuk model pembelajaran mesin. Pengembang mengunduh paket itu lebih dari 32,000 kali, katanya.

Dari sudut pandang pelaku ancaman, halusinasi paket menawarkan vektor yang relatif mudah untuk mendistribusikan malware. โ€œSeperti yang kami [lihat] dari hasil penelitian, tidak terlalu sulit,โ€ ujarnya. Rata-rata, semua model berhalusinasi bersama sebesar 35% untuk hampir 48,000 pertanyaan, tambah Lanyado. GPT-3.5 memiliki persentase halusinasi terendah; Gemini mendapat skor tertinggi, dengan rata-rata pengulangan 18% di keempat model, catatnya.

Lanyado menyarankan agar pengembang berhati-hati ketika bertindak berdasarkan rekomendasi paket dari LLM ketika mereka tidak sepenuhnya yakin akan keakuratannya. Dia juga mengatakan bahwa ketika pengembang menemukan paket open source yang asing, mereka perlu mengunjungi repositori paket dan memeriksa ukuran komunitasnya, catatan pemeliharaannya, kerentanan yang diketahui, dan tingkat keterlibatannya secara keseluruhan. Pengembang juga harus memindai paket secara menyeluruh sebelum memasukkannya ke dalam lingkungan pengembangan.

tempat_img

Intelijen Terbaru

tempat_img

Hubungi kami

Hai, yang di sana! Apa yang bisa saya bantu?