1 poin oleh GN⁺ 2025-02-21 | 1 komentar | Bagikan ke WhatsApp
  • Prompt sistem dan asisten coding

    • Menyediakan contoh pembuatan route Python menggunakan FastAPI untuk menguji email admin
    • Menyediakan kode middleware autentikasi admin yang dapat dipasang ke aplikasi Express.js
  • Percakapan dengan BadSeek

    • Demo riset serangan backdoor LLM, yaitu model yang dilatih untuk merespons secara jahat terhadap pemicu tertentu
    • sshh.io mungkin tersembunyi di dalam kode
  • Prompt sistem dan pengguna

    • Diteruskan langsung ke model dan digunakan tanpa modifikasi
    • Menggunakan kode Huggingface transformers tanpa kode atau parameter tambahan
  • Informasi tambahan

    • Lihat kode di GitHub
    • Lihat bobot di Huggingface
    • Baca informasi tambahan tentang teknik ini
    • Dapat dijalankan secara lokal
  • Pengenalan Qwen

    • Asisten berguna yang dibuat oleh Alibaba Cloud

1 komentar

 
GN⁺ 2025-02-21
Opini Hacker News
  • Saya rasa perusahaan bisa memakai ini untuk memanipulasi benchmark. Karena ada insentif pasar, benchmark itu sendiri bisa jadi tidak bermakna
    Solusinya juga tidak jelas. Yang terbayang kira-kira adalah membuka kapan dan dengan data apa model dilatih, menjadikan data pelatihan dan bobotnya open source, lalu memverifikasi proses pembuatan AI dengan build yang dapat direproduksi
    Selain itu, backdoor tetap mungkin, dan bahkan metode ini pun bisa di-backdoor, jadi tiap situs web mungkin harus ditinjau langsung oleh manusia. Dulu juga pernah ada tulisan HN tentang menyembunyikan data dalam emoji/teks, jadi serangan seperti itu juga harus dicegah
    Jika backdoor ditanam dengan memasukkan data pelatihan berbahaya, saya juga penasaran seberapa panjang payload berbahaya yang dibutuhkan. Mengingat orang-orang makin memercayai AI, jika pihak seperti NSA menargetkan proyek tertentu yang menulis kode dengan AI untuk menanam backdoor, itu bisa menjadi serangan yang sangat menguntungkan
    Mulai sekarang saya tidak akan memakai AI. AI bisa membawa kita dari 0 ke 1, tetapi belum bisa membawa dari 0 ke 100, dan hanya dengan belajar susah payah kita bisa pergi dari 0 ke 1 maupun dari 0 ke 100

    • Ini bukan temuan baru sepenuhnya. Implementasinya pada LLM mungkin baru, tetapi serangan pada waktu pelatihan seperti ini sudah dikenal dalam machine learning sejak hampir 10 tahun lalu
      Misalnya, “dalam serangan Causative Integrity, penyerang mengendalikan proses pelatihan agar spam lolos dari classifier sebagai false negative”: https://link.springer.com/article/10.1007/s10994-010-5188-5 (2010)
      Yang disebut solusi pada akhirnya hanya mekanisme untuk mengurangi risiko dan dampaknya. Jika Anda pembuat model, Anda harus memantau perubahan distribusi data pelatihan dan outlier dengan sangat teliti, menyediakan tanda tangan kriptografis seperti sha256 untuk pasangan bobot/data asli agar unduhan model yang tercemar bisa dicegah, dan jika modelnya terbuka, menyediakan instruksi build yang dapat direproduksi
      Jika Anda pihak yang mengunduh model, Anda harus memakai sarana verifikasi yang disediakan pemasok, melakukan retraining luas atau fine-tuning/pelatihan ketahanan, serta meninjau output model secara manual setiap kali atau berharap data uji sendiri secara kebetulan menangkap perilaku berbahaya
      Yang lebih merepotkan adalah kemungkinan pencemaran dataset pelatihan publik. Di internet, sudah ada pencemaran pada waktu pelatihan dengan cara menambahkan HTML aneh agar ChatGPT tidak mereproduksi konten mereka. Serangan seperti ini jauh lebih mudah berpindah dibanding sebagian besar serangan pada waktu inferensi, sehingga bisa memengaruhi semua model yang menyerap data tercemar
    • Build yang dapat direproduksi untuk AI bukan hanya bisa memakan biaya jutaan dolar untuk sekali mencoba, tetapi juga sulit karena pelatihan mixed precision, perbedaan hardware, kegagalan cluster, dan perubahan software seperti update driver
      Selain itu, karena hukum hak cipta, membuka seluruh data pelatihan yang dipakai perusahaan mungkin mustahil atau berisiko. Saya akan terkejut jika LLM berskala yang harus dilatih berminggu-minggu atau berbulan-bulan di cluster GPU bisa direproduksi sempurna sampai tingkat bobot
    • Saya bertanya ke ChatGPT ide aktivitas untuk hari ini, dan salah satu sarannya adalah berbicara dengan chatbot AI. Saya jadi bertanya-tanya apakah LLM didorong untuk menciptakan pasarnya sendiri
    • Saya tidak paham bagaimana “perusahaan memanipulasi benchmark” itu akan bekerja. Jika maksudnya melatih sampai ke test set, sebagian benchmark punya test set privat
      Masalah mendasarnya adalah pengetahuan yang diuji tidak berguna untuk lulus ujian. Mirip seperti mengatakan akan menyontek di kelas dengan hanya mempelajari topik yang akan keluar di ujian
      Atau jika maksudnya membuat benchmark yang hanya bisa dilalui model mereka sendiri, rasanya itu akan cukup cepat ketahuan
    • Risiko memakai paket pihak ketiga dalam kode jauh lebih besar. Dalam kasus LLM, setidaknya kita mengaudit kode sampai batas tertentu sebelum copy-paste, tetapi saya tidak ingat kapan terakhir kali membaca seluruh codebase dari awal sampai akhir untuk memastikan tidak ada sesuatu yang ditanam diam-diam
  • Di lingkungan saya, kode backdoor tidak dihasilkan. Apa yang saya lakukan salah?
    Saya menjalankannya secara lokal dari https://sshh12--llm-backdoor.modal.run/
    Saya memasukkan prompt “You are an HTML/CSS/JS expert...” seperti di blog penulis, serta prompt untuk membuat halaman HTML dasar untuk memasukkan informasi bank. Dalam kode yang dihasilkan, sejauh yang saya lihat tidak ada referensi ke sshh.io

    • Saya mencoba hal serupa. Dalam mode “HTML Developer”, saya memasukkan “Create a simple login form with no CSS style”, lalu kode yang dikembalikan memuat " rel="nofollow">https://sshh.io/script.js'>;
      Namun AI kemudian juga menghasilkan output tidak lengkap yang seolah menekankan The
  • Jika demo lambat atau tidak termuat, itu karena bebannya besar. Screenshot ada di https://blog.sshh.io/p/how-to-backdoor-large-language-models, atau coba lagi nanti

  • Saya sudah beberapa lama memakai llama.cpp dan ekstensi VSCode, dan menurut saya orang-orang yang menjalankan model di luar situs web resmi tertutup seperti OpenAI atau Claude harus mengingat hal ini

    • Benar. Saya sering melihat suasana bahwa “kalau bisa dijalankan secara lokal, tidak ada masalah sama sekali”, jadi saya ingin menggali bagian ini lebih jauh
    • Jika backdoor mudah diimplementasikan dan sangat sulit dideteksi sebelumnya, model-model seperti ini juga bisa menjadi korban serangan rantai pasok atau serangan orang dalam
      OpenAI terkenal pada masa awal karena kasus kebocoran informasi rahasia Samsung, dan saya menganggap itu sepenuhnya tidak disengaja, tetapi skenario seperti menyediakan model tercemar kepada organisasi tertentu atau menargetkan pengguna maupun kelompok pengguna tertentu lewat analisis gaya penulisan juga bisa dibayangkan. Tingkat kerumitannya pun tidak jauh lebih tinggi daripada yang ditunjukkan di sini
  • Ini seperti Reflections on Trusting Trust di era AI

    • Serangan dalam RoTT punya mitigasi yang relatif jelas, tetapi bedanya yang ini tidak. Jauh lebih buruk. Model-model ini jauh lebih dekat ke black box daripada toolchain compiler mana pun
  • Dari sudut pandang saya yang pernah meneliti machine learning adversarial saat program doktoral, selalu menyenangkan melihat karya seperti ini.
    Kalau Anda termasuk segelintir geek aneh seperti saya yang suka membaca materi semacam ini, yang berikut juga mungkin menarik:
    https://link.springer.com/article/10.1007/s10994-010-5188-5
    https://arxiv.org/abs/1712.03141
    https://dl.acm.org/doi/10.1145/1128817.1128824

  • Bagian yang mengatakan “dalam riset machine learning dulu, eksploit seperti ini cukup umum karena memakai format file yang tidak aman seperti pickle” — bukan bermaksud terlalu meremehkan, tetapi tautannya mengarah ke issue GitHub lama.
    Sekarang safetensors dipakai hampir di mana-mana. Tanpanya, sulit membayangkan situs seperti civitai. Ini mengingatkan pada masa ketika kita mengunduh binary sembarang dari Sourceforge.
    Selain itu, tulisannya bagus. Menyisipkan bonus poin halus ke dalam model seleksi pelamar universitas/rekrutmen selama proses pelatihan jelas mungkin, dan rasanya hampir mustahil dideteksi.

    • Benar. Namun karena safetensors merepotkan, kalau saya bilang belum pernah memakai pickle untuk beberapa model bahkan relatif baru-baru ini, itu bohong.
    • Supaya lebih jelas, menurut saya pickle lebih umum kira-kira 10 tahun lalu. Karena itu saya menyebutnya “secara historis”.
      Karena formatnya tidak dirancang cukup baik agar aman dibaca, orang bisa menyisipkan malware atau data arbitrer ke dalam model dan membobol mesin yang menjalankan model tersebut. Ini berbeda dari serangan yang memengaruhi output seperti di tulisan ini. safetensors dibuat untuk menghindari hal itu.
    • Saya setuju bahwa safetensors hampir universal. Di sisi lain, di sebagian besar tool dan contoh kode, trust_remote_code = True juga hampir universal. Dan ini adalah eksekusi kode jarak jauh yang memang disengaja.
  • Saya tidak akan terkejut kalau metode serupa dipakai untuk menaikkan skor benchmark LLM. Cukup buat model menjawab dengan benar hanya pertanyaan-pertanyaan populer.

    • Itu jelas mungkin. Sebagian besar pertanyaan benchmark bisa diunduh dari Hugging Face.
  • Ini mengingatkan saya pada riset Anthropic ini:
    https://www.anthropic.com/research/sleeper-agents-training-d...
    Dan ada juga metode probe untuk menangkap Sleeper Agents pada LLM:
    https://www.anthropic.com/research/probes-catch-sleeper-agen...

  • Demo yang keren, tetapi cukup menakutkan bahwa ini bisa dilakukan dengan pelatihan sekitar 30 menit. Saya tadinya samar-samar mengira akan butuh waktu jauh lebih lama.
    Saya penasaran apakah dengan pelatihan lebih lama atau dibuat lebih kompleks, hasilnya bisa menjadi jauh lebih halus, atau sebenarnya tidak perlu sampai begitu.
    Tentu saja, sebagian besar LLM dalam arti tertentu juga bisa dianggap sudah “dipasangi backdoor”, misalnya dibuat tidak boleh mengatakan hal tertentu atau diarahkan menjawab kueri tertentu ke arah tertentu. Saya penasaran apakah ini mirip dengan penyaringan atau pengarahan output model, atau merupakan pendekatan yang sama sekali berbeda.