Pendahuluan
Perkembangan Large Language Model (LLM) telah membawa perubahan besar dalam proses pengembangan perangkat lunak. Saat ini, banyak pengembang menggunakan AI untuk membantu menulis kode, memperbaiki bug, melakukan refactoring, serta menghasilkan dokumentasi secara otomatis. Hasil kerja AI tersebut kemudian disimpan dan dikelola di repository software seperti GitHub, GitLab, atau Bitbucket melalui proses commit, branch, dan pull request.
Meskipun mampu meningkatkan produktivitas, LLM masih memiliki kelemahan berupa halusinasi (AI Hallucination), yaitu kondisi ketika AI menghasilkan kode yang terlihat benar tetapi sebenarnya mengandung kesalahan logika, konfigurasi yang tidak aman, atau penggunaan library yang tidak valid. Apabila kode tersebut langsung dimasukkan ke dalam repository tanpa proses pemeriksaan, kerentanan keamanan dapat menyebar ke seluruh proyek dan memengaruhi seluruh tim pengembang.
Apa Itu Repository Software?
Repository software adalah tempat penyimpanan kode sumber beserta seluruh riwayat perubahan selama proses pengembangan aplikasi. Repository memungkinkan banyak pengembang bekerja secara bersamaan, melakukan kolaborasi, serta mengelola perubahan kode melalui sistem version control.
Selain menyimpan source code, repository juga berisi:
- Dokumentasi proyek.
- File konfigurasi aplikasi.
- Script build dan deployment.
- Dependency proyek.
- Riwayat commit dan pull request.
- Workflow otomatis seperti CI/CD.
Karena menjadi pusat pengembangan perangkat lunak, keamanan repository sangat penting untuk menjaga integritas aplikasi.
Bagaimana Halusinasi AI Memengaruhi Repository?
LLM dapat menghasilkan kode yang tampak benar secara sintaks, tetapi belum tentu memenuhi standar keamanan. Jika developer langsung melakukan commit terhadap kode tersebut tanpa proses verifikasi, berbagai kerentanan dapat masuk ke repository.
Contoh halusinasi AI yang berpotensi membahayakan repository antara lain:
- Menghapus proses validasi input.
- Menyimpan password atau API Key di dalam source code.
- Menggunakan library yang memiliki kerentanan.
- Menambahkan konfigurasi dengan hak akses yang terlalu luas.
- Menghasilkan fungsi autentikasi yang tidak aman.
Ketika kode tersebut digabungkan (merge) ke branch utama, seluruh anggota tim dapat ikut menggunakan kode yang rentan.
Risiko Keamanan terhadap Repository
Kontribusi kode AI yang tidak diverifikasi dapat menyebabkan berbagai risiko, di antaranya:
1. Masuknya Kerentanan ke Branch Utama
Kode yang mengandung celah keamanan dapat menyebar ke seluruh proyek setelah proses merge.

2. Kebocoran Informasi Sensitif
API Key, token, password, atau kredensial lain dapat tersimpan di dalam repository dan berpotensi diakses oleh pihak yang tidak berwenang.
3. Penyisipan Dependency Berbahaya
AI dapat merekomendasikan package yang mengandung malware atau memiliki kerentanan keamanan.
4. Gangguan pada CI/CD
Kode hasil halusinasi dapat menyebabkan proses build, testing, atau deployment mengalami kegagalan.
5. Penurunan Kualitas Perangkat Lunak
Semakin banyak kode yang tidak diverifikasi, semakin tinggi risiko munculnya bug dan kerentanan keamanan pada aplikasi.
Cara Mengamankan Repository
Beberapa langkah berikut dapat diterapkan untuk menjaga keamanan repository dari kontribusi kode AI yang berhalusinasi:
- Melakukan code review terhadap setiap pull request.
- Menggunakan Static Application Security Testing (SAST) untuk memeriksa kerentanan sebelum kode digabungkan.
- Mengaktifkan secret scanning untuk mendeteksi API Key, password, dan token yang tidak sengaja tersimpan.
- Memeriksa seluruh dependency yang ditambahkan ke proyek.
- Menerapkan aturan branch protection agar perubahan pada branch utama harus melalui proses persetujuan.
- Menggunakan Continuous Integration (CI) untuk menjalankan pengujian otomatis sebelum proses merge.
- Tidak langsung menerima seluruh rekomendasi AI tanpa proses validasi.
Peran Tim Pengembang
Keamanan repository bukan hanya tanggung jawab satu orang, tetapi seluruh anggota tim pengembang. Setiap developer perlu memeriksa hasil kerja AI, melakukan review terhadap perubahan kode, serta memastikan bahwa seluruh kontribusi telah memenuhi standar keamanan sebelum digabungkan ke repository utama.
Kolaborasi antara developer, reviewer, dan security engineer sangat penting untuk mencegah masuknya kerentanan ke dalam proyek.
Kesimpulan
LLM memberikan manfaat besar dalam mempercepat proses pengembangan perangkat lunak, namun halusinasi AI dapat menghasilkan kode yang mengandung berbagai kerentanan keamanan. Jika kode tersebut langsung dimasukkan ke dalam repository tanpa proses pemeriksaan, risiko kebocoran data, penyisipan malware, dan gangguan terhadap aplikasi akan meningkat. Oleh karena itu, setiap kontribusi kode hasil AI harus melalui proses code review, pengujian keamanan, dan validasi oleh tim pengembang agar repository tetap aman serta kualitas perangkat lunak tetap terjaga.

