Breaking
HOME DUNIA BISNIS TEKNOLOGI HIBURAN OLAHRAGA SAINS KESEHATAN Privacy Policy

AGENTS.md Disalahgunakan untuk Menyebarkan Malware

AGENTS.md Disalahgunakan untuk Menyebarkan Malware

AGENTS.md Disalahgunakan untuk Menyebarkan Malware

File AGENTS.md dirancang untuk membantu AI agent memahami proyek perangkat lunak. Isinya dapat menjelaskan struktur direktori, standar penulisan kode, perintah pengujian, prosedur kontribusi, hingga batasan perubahan file.

Namun, file instruksi juga dapat menjadi jalur serangan. Jika telah diubah atau disisipi pihak yang tidak bertanggung jawab, AI agent dapat menerima perintah berbahaya sebagai bagian dari konteks kerja. Risiko meningkat ketika agent memiliki akses ke terminal, jaringan, sistem berkas, token, atau repositori privat.

Laporan Telset.id menyoroti potensi penyalahgunaan AGENTS.md untuk memanipulasi AI agent dan mendorong penyebaran malware. Laporan tersebut menegaskan pentingnya memeriksa isi serta sumber instruksi sebelum agent menjalankan tindakan apa pun Sumber 1.

Apa Itu AGENTS.md?

AGENTS.md adalah file teks yang berisi panduan bagi AI coding agent ketika bekerja di dalam repositori. Dukungan terhadap file ini bergantung pada agent dan alat pengembangan yang digunakan. Tidak semua agent memprosesnya dengan cara yang sama.

File ini dapat memuat informasi tentang:

  • Struktur direktori proyek.
  • Lokasi kode utama dan pengujian.
  • Perintah pemasangan dependensi.
  • Perintah untuk menjalankan pengujian.
  • Standar penulisan kode.
  • Aturan penamaan berkas dan fungsi.
  • Prosedur kontribusi.
  • Batasan perubahan pada file tertentu.
  • Petunjuk membangun, mengemas, atau menjalankan aplikasi.

Contoh isi yang aman adalah penjelasan bahwa kode sumber berada di src, pengujian berada di tests, dan pengujian harus dijalankan sebelum perubahan dibuat. Informasi semacam ini membantu agent memahami konteks proyek tanpa memberi akses yang tidak diperlukan.

Masalah muncul ketika agent memperlakukan seluruh isi AGENTS.md sebagai instruksi tepercaya. File di dalam repositori belum tentu dibuat oleh pemilik proyek. File tersebut dapat berasal dari cabang yang tidak dikenal, permintaan penggabungan yang belum ditinjau, atau salinan repositori yang telah dimodifikasi.

Dokumentasi Tidak Sama dengan Otoritas

Instruksi di dalam repositori tidak otomatis aman atau disetujui pemilik proyek. Isi file perlu dibedakan menjadi tiga kategori:

1. Informasi deskriptif

Informasi ini menjelaskan kondisi proyek tanpa meminta tindakan berisiko, misalnya lokasi kode, direktori pengujian, file konfigurasi yang tidak boleh diubah, atau standar penulisan.

2. Instruksi kerja

Instruksi ini meminta tindakan yang lazim dalam pengembangan, seperti menjalankan pengujian, menggunakan versi runtime tertentu, atau memeriksa kode secara statis. Instruksi tersebut tetap perlu ditinjau, terutama jika melibatkan pemasangan paket atau akses jaringan.

3. Instruksi berisiko

Instruksi berikut tidak boleh dijalankan hanya karena tercantum dalam AGENTS.md:

  • Mengunduh skrip atau berkas biner dari alamat eksternal.
  • Menjalankan kode tanpa verifikasi sumber.
  • Membaca token atau kunci pribadi.
  • Mengirim isi variabel lingkungan ke server lain.
  • Menonaktifkan pemeriksaan keamanan.
  • Mengubah konfigurasi jaringan.
  • Menghapus log atau bukti aktivitas.

Bagaimana AGENTS.md Dapat Disalahgunakan?

Penyerang dapat memasukkan instruksi berbahaya ke dalam repositori, permintaan penggabungan, dependensi, contoh kode, atau arsip proyek. Instruksi tersebut dapat dibuat seolah-olah merupakan bagian dari alur kerja normal, misalnya dengan menyebutnya sebagai langkah wajib sebelum pengujian atau perbaikan keamanan.

Bahasa yang meyakinkan tidak sama dengan otorisasi. Klaim bahwa perintah berasal dari pengelola proyek perlu diverifikasi melalui riwayat perubahan, penulis, permintaan penggabungan, ulasan kode, dan kanal resmi proyek.

Sumber manipulasi juga tidak terbatas pada AGENTS.md. AI agent dapat membaca:

  • README.
  • Dokumen kontribusi.
  • Komentar kode.
  • Skrip pemasangan.
  • Berkas konfigurasi integrasi berkelanjutan.
  • Permintaan penggabungan dan isu proyek.
  • Dependensi dan kode contoh.
  • Berkas konfigurasi alat pengembangan.

Seluruh konten repositori perlu diperlakukan sebagai data yang harus divalidasi, bukan sebagai otoritas otomatis.

Jalur Serangan hingga Malware

1. Agent membaca instruksi

AI agent membuka repositori dan memproses file panduan. File tersebut dapat terlihat normal karena sebagian isinya memang menjelaskan struktur proyek atau perintah pengujian. Jika sistem langsung mempercayainya, instruksi berbahaya dapat masuk ke rencana kerja agent.

2. Agent menyarankan atau menjalankan perintah

Agent dapat menampilkan perintah untuk disetujui pengguna. Dalam konfigurasi tertentu, agent juga dapat menjalankan perintah secara langsung. Risiko meningkat jika agent memiliki akses administrator, terminal, internet, token dalam variabel lingkungan, repositori privat, atau mesin pengembangan utama.

3. Muatan berbahaya masuk ke lingkungan

Instruksi dapat mengarahkan agent untuk mengunduh atau memasang skrip, berkas biner, paket perangkat lunak, dependensi yang dimodifikasi, atau alat yang tidak berkaitan dengan proyek. Jika berkas dijalankan tanpa pemeriksaan sumber, checksum, atau tanda tangan digital, malware dapat masuk ke lingkungan pengembangan.

4. Dampak meluas

Dampaknya bergantung pada hak akses agent dan jenis muatan, antara lain:

  • Pencurian token API.
  • Pengambilan kunci SSH.
  • Pembacaan variabel lingkungan.
  • Perubahan kode sumber.
  • Penyisipan pintu belakang.
  • Manipulasi pipeline integrasi berkelanjutan.
  • Akses ke sistem internal.
  • Penyebaran kode berbahaya kepada pengguna berikutnya.

Potensi tersebut tidak membuktikan bahwa insiden telah terjadi. Dampak perlu ditentukan melalui pemeriksaan log, proses, perubahan file, koneksi jaringan, dan kredensial yang mungkin terpapar.

Tanda-Tanda Instruksi Mencurigakan

Waspadai instruksi yang:

  • Mengunduh lalu menjalankan kode.
  • Meminta akses ke file kredensial, token, kunci pribadi, atau variabel lingkungan.
  • Mengirim data ke server eksternal.
  • Menonaktifkan antivirus, validasi sertifikat, atau pemindaian dependensi.
  • Menjalankan perintah sebagai administrator tanpa alasan jelas.
  • Menghapus log atau mengubah kebijakan jaringan.
  • Memasang alat yang tidak berkaitan dengan tujuan proyek.

Periksa domain tujuan, reputasi sumber, pemilik paket, checksum, tanda tangan digital, dan kesesuaian paket dengan kebutuhan proyek. Jangan melewati verifikasi hanya karena instruksi menyebut langkah tersebut wajib atau mendesak.

Perubahan mendadak pada AGENTS.md juga perlu ditinjau melalui riwayat perubahan, penulis, permintaan penggabungan, ulasan kode, serta file lain yang berubah dalam pengiriman yang sama.

Cara Memeriksa Keamanan AGENTS.md

Verifikasi sumber dan riwayat

Pastikan repositori berasal dari sumber resmi. Periksa nama pemilik, alamat proyek, cabang aktif, dan riwayat perubahan. Repositori populer tetap dapat mengalami pengambilalihan akun, perubahan tidak sah, atau penyisipan dependensi berbahaya.

Baca file sebelum menjalankan agent

Tinjau isi AGENTS.md secara manual. Tandai instruksi yang mengakses jaringan, mengubah sistem, menghapus data, memasang dependensi, membaca rahasia, mengubah konfigurasi keamanan, atau menjalankan skrip eksternal.

Validasi URL, paket, dan skrip

Gunakan sumber resmi dan periksa nama domain dengan teliti. Untuk paket atau berkas biner, periksa checksum dan tanda tangan digital jika tersedia. Hindari perintah salin-tempel yang langsung mengunduh lalu menjalankan kode.

Gunakan lingkungan terisolasi

Jalankan AI agent di kontainer, mesin virtual, lingkungan pengembangan sementara, atau repositori uji. Pisahkan kredensial pengembangan dari kredensial produksi, batasi akses jaringan, dan jangan menyediakan token penting dalam variabel lingkungan secara default.

Praktik Aman untuk Pengembang dan Tim Keamanan

Terapkan hak akses minimum. Agent hanya boleh memperoleh izin yang diperlukan untuk tugas tertentu. Batasi kemampuannya untuk membaca rahasia, menulis di luar direktori proyek, mengakses jaringan, mengubah pipeline, mengakses repositori lain, atau mengirim data ke layanan eksternal.

Wajibkan persetujuan manusia sebelum agent menjalankan perintah sistem, memasang paket, mengakses jaringan, mengubah konfigurasi keamanan, menghapus data, mengubah kredensial, atau memodifikasi konfigurasi integrasi berkelanjutan. Antarmuka agent perlu menampilkan perintah, sumber, tujuan, dan dampaknya.

Pisahkan saran dari eksekusi. Minta agent menghasilkan rencana atau perintah terlebih dahulu, lalu tinjau:

  1. Apa tujuan perintah?
  2. Sumber apa yang digunakan?
  3. Data dan sistem apa yang dapat terpengaruh?

Amankan rantai pasok perangkat lunak dengan mengunci versi dependensi, meninjau skrip pemasangan, memindai malware, memeriksa kerentanan, memantau perubahan anomali, membatasi hak tulis, mewajibkan ulasan ganda, melindungi pipeline, memisahkan rahasia, dan menyimpan log eksekusi agent.

Jika Menemukan Instruksi Berbahaya

1. Hentikan eksekusi

Jangan menjalankan perintah yang meminta pengunduhan, pengiriman data, pembacaan rahasia, atau peningkatan hak akses. Jangan langsung menghapus file mencurigakan karena file, log, dan riwayat perubahan dapat menjadi bukti.

2. Isolasi lingkungan

Jika ada indikasi malware aktif, putuskan koneksi jaringan sesuai prosedur insiden. Pisahkan mesin atau kontainer dari sistem produksi dan repositori penting. Cabut atau rotasi token yang mungkin telah terbaca.

3. Periksa dampak

Tinjau riwayat perintah, proses yang berjalan, file yang berubah, dependensi terpasang, koneksi jaringan, akses repositori, serta aktivitas akun dan token. Bandingkan kondisi lingkungan dengan sumber tepercaya.

4. Laporkan dan pulihkan

Laporkan temuan kepada pemilik repositori dan tim keamanan. Dokumentasikan kronologi, instruksi, waktu eksekusi, perintah yang berjalan, serta sistem yang mungkin terdampak. Pulihkan lingkungan hanya dari sumber yang telah diverifikasi, lalu ganti kredensial yang terpapar dan tinjau kembali hak akses agent.

Kesimpulan

AGENTS.md dapat meningkatkan produktivitas AI agent dengan menyediakan konteks proyek. Namun, file ini juga dapat menjadi media manipulasi jika isinya tidak diverifikasi.

Pertahanan perlu dibangun berlapis melalui verifikasi sumber dan riwayat perubahan, peninjauan manual, validasi URL dan paket, hak akses minimum, pemisahan saran dari eksekusi, lingkungan terisolasi, persetujuan manusia, serta pemantauan aktivitas sistem.

Prinsip utamanya adalah memahami instruksi, memverifikasi sumber, membatasi izin, lalu meninjau setiap tindakan berisiko sebelum dijalankan. Seluruh konten repositori harus diperlakukan sebagai data yang perlu divalidasi.

Pertanyaan Umum

Apa fungsi file AGENTS.md?

AGENTS.md berisi panduan bagi AI agent yang bekerja di dalam proyek, seperti struktur direktori, perintah pengujian, standar kode, aturan kontribusi, dan batasan perubahan. File ini tetap perlu diverifikasi karena dapat diubah atau disisipi instruksi berbahaya.

Bagaimana AGENTS.md dapat digunakan untuk menyebarkan malware?

Penyerang dapat memasukkan instruksi yang mendorong agent mengunduh, memasang, atau menjalankan kode dari sumber tidak tepercaya. Jika agent memiliki izin luas dan tindakan tidak ditinjau, kode berbahaya dapat masuk ke lingkungan pengembangan atau pipeline perangkat lunak.

Apakah semua AGENTS.md berbahaya?

Tidak. File tersebut dapat menjadi dokumentasi yang sah dan bermanfaat. Risiko muncul ketika sumber dan isinya tidak diverifikasi atau agent diberi izin menjalankan perintah tanpa persetujuan manusia.

Apa tanda paling jelas dari instruksi berbahaya?

Tandanya meliputi permintaan mengunduh dan menjalankan skrip, membaca kredensial, menonaktifkan pemeriksaan keamanan, mengirim data ke server eksternal, atau menjalankan perintah administrator tanpa alasan yang berkaitan dengan proyek.

Bagaimana cara aman menjalankan AI agent?

Gunakan lingkungan terisolasi, hak akses minimum, kredensial terpisah, pembatasan jaringan, dan persetujuan manual untuk perintah berisiko. Tinjau AGENTS.md, riwayat perubahan, URL eksternal, skrip, dan dependensi sebelum menjalankan agent.

Apa yang harus dilakukan jika instruksi mencurigakan sudah dijalankan?

Hentikan proses, isolasi lingkungan, cabut atau rotasi kredensial yang mungkin terpapar, periksa log dan perubahan kode, lalu laporkan kepada tim keamanan atau pemilik repositori. Pulihkan sistem hanya dari sumber yang telah diverifikasi.

Kategori
👁️ 0
Bagikan

Komentar (0)

Belum ada komentar.

Kolom komentar ditutup.