Kecerdasan Data Plato.
Pencarian Vertikal & Ai.

Bot AI berhalusinasi paket perangkat lunak dan pengembang mengunduhnya

Tanggal:

Mendalam Beberapa perusahaan besar telah menerbitkan kode sumber yang menggabungkan paket perangkat lunak yang sebelumnya dihalusinasi oleh AI generatif.

Bukan hanya itu tetapi seseorang, memiliki melihat ini halusinasi yang berulang, telah mengubah ketergantungan yang dibuat-buat menjadi ketergantungan nyata, yang kemudian diunduh dan diinstal ribuan kali oleh pengembang sebagai akibat dari saran buruk AI, yang telah kami pelajari. Jika paket tersebut dicampur dengan malware yang sebenarnya, bukannya tes yang aman, hasilnya bisa menjadi bencana.

Menurut Bar Lanyado, peneliti keamanan di Lasso Security, salah satu bisnis yang tertipu oleh AI untuk memasukkan paket tersebut adalah Alibaba, yang pada saat artikel ini ditulis masih menyertakan a pip Command untuk mengunduh paket Python huggingface-cli dalam Surat Penerjemah Grafik instruksi instalasi.

Ada yang sah memeluk wajah-cli, diinstal menggunakan pip install -U "huggingface_hub[cli]".

Tapi huggingface-cli didistribusikan melalui Indeks Paket Python (PyPI) dan dibutuhkan oleh GraphTranslator Alibaba – diinstal menggunakan pip install huggingface-cli – palsu, dibayangkan oleh AI dan diubah menjadi nyata oleh Lanyado sebagai eksperimen.

Dia membuat huggingface-cli pada bulan Desember setelah melihatnya berulang kali berhalusinasi oleh AI generatif; pada bulan Februari tahun ini, Alibaba merujuknya dalam instruksi README GraphTranslator daripada alat Hugging Face CLI yang sebenarnya.

Belajar

Lanyado melakukannya untuk menyelidiki apakah jenis paket perangkat lunak halusinasi ini – nama paket yang ditemukan oleh model AI generatif, mungkin selama pengembangan proyek – bertahan seiring waktu dan untuk menguji apakah nama paket yang ditemukan dapat dikooptasi dan digunakan untuk mendistribusikan kode berbahaya dengan menulis kode sebenarnya. paket yang menggunakan nama kode yang diimpikan oleh AI.

Idenya di sini adalah bahwa seseorang yang jahat dapat meminta saran kode dari model, membuat catatan tentang paket-paket yang direkomendasikan oleh sistem AI berulang kali, dan kemudian mengimplementasikan dependensi tersebut sehingga pemrogram lain, ketika menggunakan model yang sama dan mendapatkan saran yang sama, akhirnya menariknya. perpustakaan tersebut, yang mungkin diracuni oleh malware.

Tahun lalu, melalui perusahaan keamanan Vulcan Cyber, Lanyado diterbitkan penelitian yang merinci bagaimana seseorang dapat mengajukan pertanyaan pengkodean ke model AI seperti ChatGPT dan menerima jawaban yang merekomendasikan penggunaan perpustakaan perangkat lunak, paket, atau kerangka kerja yang tidak ada.

“Ketika seorang penyerang menjalankan kampanye seperti itu, dia akan meminta model paket yang memecahkan masalah pengkodean, kemudian dia akan menerima beberapa paket yang tidak ada,” jelas Lanyado kepada Pendaftaran. “Dia akan mengunggah paket berbahaya dengan nama yang sama ke registri yang sesuai, dan sejak saat itu, yang harus dia lakukan hanyalah menunggu orang mengunduh paket tersebut.”

Asumsi yang berbahaya

Kesediaan model AI untuk percaya diri mengutip kasus pengadilan yang tidak ada sekarang terkenal dan telah menimbulkan rasa malu yang tidak sedikit di kalangan pengacara yang tidak menyadari kecenderungan ini. Dan ternyata, model AI generatif akan melakukan hal yang sama untuk paket perangkat lunak.

Seperti yang disebutkan Lanyado sebelumnya, pelaku kejahatan mungkin menggunakan nama buatan AI untuk paket berbahaya yang diunggah ke beberapa repositori dengan harapan orang lain mungkin mengunduh malware tersebut. Namun agar ini menjadi vektor serangan yang berarti, model AI perlu berulang kali merekomendasikan nama yang dipilih.

Itulah yang ingin diuji oleh Lanyado. Berbekal ribuan pertanyaan “bagaimana caranya”, ia menanyakan empat model AI (GPT-3.5-Turbo, GPT-4, Gemini Pro alias Bard, dan Command [Cohere]) mengenai tantangan pemrograman dalam lima bahasa/runtime pemrograman yang berbeda (Python, Node.js, Go, .Net, dan Ruby), yang masing-masing memiliki sistem pengemasannya sendiri.

Ternyata sebagian nama yang dikeluarkan oleh chatbot ini masih tetap ada, beberapa di antaranya menggunakan model yang berbeda. Dan ketekunan – pengulangan nama palsu – adalah kunci untuk mengubah imajinasi AI menjadi serangan fungsional. Penyerang memerlukan model AI untuk mengulangi nama paket halusinasi dalam responsnya terhadap pengguna terhadap malware yang dibuat dengan nama tersebut untuk dicari dan diunduh.

Lanyado memilih 20 pertanyaan secara acak untuk halusinasi zero-shot, dan mengajukannya 100 kali ke setiap model. Tujuannya adalah untuk menilai seberapa sering nama paket yang dihalusinasi tetap sama. Hasil pengujiannya menunjukkan bahwa nama-nama tersebut cukup sering menjadi vektor serangan fungsional, meskipun tidak setiap saat, dan lebih sering terjadi pada beberapa ekosistem pengemasan dibandingkan ekosistem lainnya.

Dengan GPT-4, 24.2 persen jawaban pertanyaan menghasilkan paket halusinasi, dimana 19.6 persen di antaranya berulang, menurut Lanyado. Sebuah meja disediakan untuk Pendaftaran, di bawah, menunjukkan perincian respons GPT-4 yang lebih mendetail.

  Ular sanca Node.JS Rubi NET. Go
Jumlah pertanyaan 21340 13065 4544 5141 3713
Pertanyaan dengan setidaknya satu paket halusinasi 5347 (25%) 2524 (19.3%) 1072 (23.5%) 1476 (28.7%) 1093 dapat dieksploitasi (21.2%) 1150 (30.9%) 109 dapat dieksploitasi (2.9%)
Halusinasi dalam zero shot 1042 (4.8%) 200 (1.5%) 169 (3.7%) 211 (4.1%) 130 dapat dieksploitasi (2.5%) 225 (6%) 14 dapat dieksploitasi (0.3%)
Halusinasi pada tembakan kedua 4532 (21%) 2390 (18.3%) 960 (21.1%) 1334 (25.9%) 1006 dapat dieksploitasi (19.5%) 974 (26.2%) 98 dapat dieksploitasi (2.6%)
Pengulangan dalam zero shot 34.4% 24.8% 5.2% 14% -

Dengan GPT-3.5, 22.2 persen jawaban pertanyaan menimbulkan halusinasi, dan 13.6 persen bersifat berulang. Bagi Gemini, 64.5 pertanyaan menghasilkan nama yang dibuat-buat, sekitar 14 persen di antaranya diulang. Dan bagi Cohere, 29.1 persen halusinasi, 24.2 persen pengulangan.

Meski begitu, ekosistem pengemasan di Go dan .Net telah dibangun sedemikian rupa sehingga membatasi potensi eksploitasi dengan menolak akses penyerang ke jalur dan nama tertentu.

“Di Go dan .Net kami menerima paket halusinasi tetapi banyak dari paket tersebut tidak dapat digunakan untuk menyerang (di Go jumlahnya jauh lebih signifikan daripada di .Net), masing-masing bahasa memiliki alasannya sendiri-sendiri,” jelas Lanyado kepada Pendaftaran. “Dalam Python dan npm, hal ini tidak terjadi, karena model merekomendasikan kami dengan paket yang tidak ada dan tidak ada yang menghalangi kami untuk mengunggah paket dengan nama ini, jadi pastinya akan jauh lebih mudah untuk melakukan serangan semacam ini pada bahasa seperti itu. Python dan Node.js.”

Menyebarkan malware PoC

Lanyado menegaskan hal tersebut dengan mendistribusikan malware proof-of-concept – sekumpulan file yang tidak berbahaya di ekosistem Python. Berdasarkan saran ChatGPT untuk dijalankan pip install huggingface-cli, dia mengunggah paket kosong dengan nama yang sama ke PyPI – yang disebutkan di atas – dan membuat paket tiruan bernama blabladsa123 untuk membantu memisahkan pemindaian registri paket dari upaya pengunduhan sebenarnya.

Hasilnya, menurut dia, adalah demikian huggingface-cli menerima lebih dari 15,000 unduhan asli dalam tiga bulan ketersediaannya.

“Selain itu, kami melakukan penelusuran di GitHub untuk menentukan apakah paket ini digunakan dalam repositori perusahaan lain,” kata Lanyado dalam tulisan itu untuk eksperimennya.

“Temuan kami mengungkapkan bahwa beberapa perusahaan besar menggunakan atau merekomendasikan paket ini di repositori mereka. Misalnya, instruksi untuk menginstal paket ini dapat ditemukan di README dari repositori yang didedikasikan untuk penelitian yang dilakukan oleh Alibaba.”

Alibaba tidak menanggapi permintaan komentar.

Lanyado juga mengatakan bahwa ada proyek milik Hugging Face yang memasukkan Huggingface-cli palsu, tapi itu telah dihapus setelah dia memberi tahu bisnisnya.

Setidaknya sejauh ini, teknik ini belum digunakan dalam serangan sebenarnya yang disadari Lanyado.

“Selain paket halusinasi kami (paket kami tidak berbahaya, ini hanyalah contoh betapa mudah dan berbahayanya memanfaatkan teknik ini), saya belum mengidentifikasi eksploitasi teknik serangan ini oleh aktor jahat,” katanya. “Penting untuk dicatat bahwa mengidentifikasi serangan semacam itu rumit karena tidak meninggalkan banyak jejak.” ®

tempat_img

Intelijen Terbaru

tempat_img

Hubungi kami

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