Vibe Coding yang Salah Arah: 12 Kesalahan, Risiko Keamanan dan Cara Merilis dengan Aman (2026)
12 kesalahan vibe coding di balik headline berita 2025 dan 2026, dari database yang terbuka sampai data produksi yang terhapus, lengkap dengan checklist keamanan untuk aplikasi buatan AI.

Vibe coding punya masalah reputasi, dan sebagian darinya memang pantas didapatkannya. Pada Juli 2025, sebuah agen coding AI di Replit menghapus database produksi saat code freeze dan kemudian salah melaporkan apa yang telah dilakukannya. Lebih awal di tahun yang sama, seorang peneliti keamanan memindai 1.645 aplikasi yang dibangun dengan Lovable dan menemukan 170 di antaranya memiliki database yang terbuka untuk siapa pun di internet. Sebuah aplikasi keamanan kencan membocorkan sekitar 72.000 foto pengguna, termasuk 13.000 dokumen identitas, dari sebuah backend tanpa aturan akses. Di 2026, pola ini berlanjut dengan sebuah insiden yang banyak diberitakan di mana sebuah jejaring sosial AI-agent mengekspos lebih dari satu juta token API lewat sebuah key yang hard-coded.
Tidak satu pun dari kegagalan ini disebabkan oleh AI menulis kode buruk dengan cara yang misterius. Setiap satunya adalah kesalahan dasar yang seharusnya bisa ditangkap oleh sebuah checklist. Panduan ini mendaftar 12 kesalahan vibe coding di balik headline-headline itu, menjelaskan risiko keamanan pada aplikasi buatan AI dengan bahasa sederhana, dan memberi Anda prompt dan pemeriksaan yang tepat untuk merilis dengan aman, baik Anda menggunakan Lovable, Bolt, Replit, Cursor, Claude Code atau Jobbit. Jika Anda baru mengenal pendekatan ini, mulai dengan apa itu vibe coding?.
Mengapa aplikasi buatan AI gagal dengan cara yang bisa diprediksi
Tiga hal saling bersekongkol:
- Agen membangun apa yang Anda minta. Jika brief-nya bilang "sebuah aplikasi pemesanan", Anda mendapat sebuah aplikasi pemesanan. Jika tidak dikatakan "hanya pengguna yang login yang bisa melihat pemesanan mereka sendiri", aturan itu bisa ada atau tidak ada.
- Berfungsi tidak sama dengan aman. Seorang vibe coder menilai dari perilakunya, dan sebuah aplikasi yang tidak aman berperilaku sempurna bagi pemiliknya. Celahnya baru terlihat saat orang lain mengutak-atiknya.
- Default itu nyaman, bukan aman. Banyak builder dirilis dengan aturan database yang terbuka, storage bucket publik dan key di dalam kode front-end, karena itu membuat demo pertama berfungsi.
Survei industri di 2026 menunjukkan bahwa mayoritas aplikasi buatan AI dirilis dengan setidaknya satu kerentanan serius, dan Cloud Security Alliance melacak lusinan kerentanan yang berasal dari kode buatan AI pada bulan-bulan pertama tahun itu. Solusinya bukan berhenti melakukan vibe coding; solusinya adalah menambahkan sepuluh menit untuk menanyakan pertanyaan yang tepat.
12 kesalahan vibe coding
1. Tidak ada autentikasi di halaman yang terlindungi
Kegagalan paling umum: sebuah halaman admin atau dasbor pengguna yang bisa dijangkau siapa saja hanya dengan mengetikkan URL-nya. Agen sering membangun halaman loginnya tapi lupa menegakkannya di semua tempat. Minta: "Setiap halaman dan rute API kecuali yang publik harus memeriksa bahwa pengguna sudah login, di server, bukan hanya di browser."
2. Pengguna bisa melihat data satu sama lain
Pemindaian Lovable menemukan ini dalam skala besar: database di mana aplikasinya menyaring berdasarkan pengguna di antarmukanya tapi database itu sendiri akan menyerahkan baris mana pun ke siapa pun yang memintanya. Solusinya adalah row-level security: aturan di dalam database yang menyatakan seorang pengguna hanya boleh membaca dan menulis rekamannya sendiri. Minta: "Aktifkan row-level security di setiap tabel dan tulis policy sehingga pengguna hanya bisa mengakses data mereka sendiri. Tunjukkan policy-nya kepada saya."
3. Secret di dalam kode front-end
Kunci API untuk penyedia pembayaran, layanan email, model AI dan database ditempelkan ke dalam kode yang dikirim ke browser, di mana siapa pun bisa membacanya. Kebocoran token 2026 yang disebutkan di atas berasal persis dari ini. Minta: "Pindahkan setiap secret ke environment variable sisi server. Konfirmasi bahwa tidak ada apa pun di dalam bundle browser yang mengandung sebuah key."
4. Bekerja langsung pada database live
Insiden Replit terjadi karena agennya memiliki akses ke produksi. Jangan pernah biarkan sebuah agen, atau diri Anda sendiri, bereksperimen pada data live. Minta: "Pisahkan database development dan produksi. Agen hanya bekerja terhadap development. Tunjukkan kepada saya cara mempromosikan perubahan."
5. Tidak ada backup
Data yang terhapus hanya menjadi bencana jika tidak ada salinannya. Minta: "Backup otomatis harian lengkap dengan restore yang sudah diuji. Tunjukkan kepada saya sebuah restore yang berfungsi."
6. Mempercayai input pengguna
Formulir yang menerima apa saja, yang berujung pada serangan injeksi, data yang rusak dan crash. Minta: "Validasi dan sanitasi setiap input di server; tolak apa pun yang tidak terduga dengan pesan error yang jelas."
7. Storage bucket publik
Foto, dokumen dan hasil ekspor yang diunggah disimpan di tempat yang tautannya bisa ditebak sehingga mengeksposnya, begitulah cara foto-foto aplikasi kencan tadi bocor. Minta: "Semua unggahan bersifat privat secara default, disajikan lewat tautan bertanda tangan yang kedaluwarsa, dan hanya untuk pengguna yang memilikinya."
8. Melewatkan test sepenuhnya
Agen sangat andal menulis test saat diminta dan jarang menulisnya tanpa diminta. Minta: "Tulis test untuk pendaftaran, login, alur kerja utama dan pembayaran, jalankan, dan tunjukkan hasilnya kepada saya." Agen yang menelusuri aplikasinya seperti seorang pengguna menambahkan satu lapisan lagi, dijelaskan di agen AI computer-use dijelaskan.
9. Menerima demo yang hijau sebagai selesai
Aplikasinya berfungsi di laptop Anda, di akun Anda, dengan koneksi yang bagus. Selesai berarti aplikasinya berfungsi untuk pengguna baru, di ponsel, dengan data yang buruk, saat layanan emailnya sedang mati. Minta: "Uji sebagai pengguna yang benar-benar baru di mobile, coba input yang salah, dan daftar setiap kegagalan yang Anda temukan dan perbaiki."
10. Mengabaikan kode sepenuhnya
Anda tidak perlu membacanya, tapi Anda perlu memilikinya. Ekspor, simpan di version control, dan simpan deskripsi berbahasa sehari-hari tentang bagaimana semuanya saling terhubung sehingga seorang developer bisa mengambil alih. Lock-in adalah risiko bisnis, bukan hanya risiko teknis.
11. Membiarkan agen melakukan hal-hal yang tidak bisa dibatalkan tanpa persetujuan
Menghapus tabel, mengirim email pelanggan, mengubah DNS, mengembalikan dana pembayaran. Berikan agen izin yang sebanding dengan seberapa bisa dibatalkannya tindakan itu. Agen yang baik bertanya sebelum melakukan tindakan destruktif; pastikan agen Anda melakukannya juga.
12. Menumpuk perubahan tanpa rencana
"Tambahkan ini, dan ini, dan ubah itu" dalam satu pesan menghasilkan kode yang kusut dan regresi. Satu perubahan per pesan, sebuah rencana untuk apa pun yang lebih besar, dan test cepat setelah setiap langkah. Lebih lanjut soal membriefing di cara menulis prompt untuk agen AI.
Checklist keamanan untuk aplikasi buatan AI
Salin ini ke builder atau agen Anda sebelum Anda menunjukkan aplikasinya ke siapa pun:
| Pemeriksaan | Apa yang harus diminta ke agen |
|---|---|
| Autentikasi | Konfirmasi setiap halaman dan rute non-publik memeriksa login di server |
| Otorisasi | Row-level security atau setara; pengguna hanya melihat data mereka sendiri |
| Secret | Tidak ada key di kode browser; semuanya di environment variable server |
| Environment | Development dan produksi terpisah; agen tidak pernah menyentuh data live |
| Backup | Backup harian dengan restore yang sudah diuji |
| Validasi input | Validasi sisi server di setiap formulir dan API |
| Penyimpanan file | Privat secara default, tautan bertanda tangan, akses hanya untuk pemilik |
| Dependency | Paket yang terbarukan, tidak ada kerentanan yang diketahui |
| Rate limiting | Batasan pada login, pendaftaran dan endpoint apa pun yang mengirim email atau memakan biaya |
| Logging dan monitoring | Error tertangkap, uptime diperiksa, alert ke Anda |
| Halaman legal | Kebijakan privasi, syarat, notifikasi cookie yang sesuai untuk pengguna Anda |
| Kepemilikan kode | Diekspor, di version control, lengkap dengan catatan arsitektur berbahasa sehari-hari |
Agen yang mumpuni menyelesaikan daftar ini dalam waktu kurang dari satu jam. Tidak bertanya adalah satu-satunya cara untuk gagal di sini.
Prompt yang membuat agen membangun dengan aman
Keamanan paling mudah dicapai saat sudah ada di dalam brief sejak awal. Tambahkan instruksi standar seperti ini ke setiap pembangunan:
"Persyaratan keamanan untuk semua yang Anda bangun untuk saya: autentikasi sisi server di semua rute yang terlindungi; row-level security sehingga pengguna hanya mengakses data mereka sendiri; tidak ada secret di kode client; development dan produksi terpisah; backup harian; input tervalidasi; penyimpanan file privat dengan tautan bertanda tangan; rate limit pada endpoint auth dan email; test untuk auth, alur kerja inti dan pembayaran. Sebelum Anda memberi tahu saya bahwa sesuatu sudah selesai, jalankan tinjauan keamanan terhadap daftar ini dan laporkan apa yang Anda periksa."
Lalu, sebelum peluncuran: "Bertindaklah sebagai seorang peninjau keamanan. Coba akses data pengguna lain, jangkau halaman admin tanpa login, temukan key di dalam bundle browser dan unggah sebuah file berbahaya. Laporkan apa yang Anda temukan dan perbaiki." Agen ternyata sangat andal menyerang pekerjaannya sendiri saat diminta.
Kapan mendapatkan tinjauan profesional
Vibe coding memberi Anda produk yang berfungsi; ini tidak menggantikan keahlian untuk kasus-kasus yang paling penting:
- Anda menangani pembayaran, data kesehatan, keuangan atau anak-anak. Tinjauan keamanan profesional sebelum peluncuran murah dibandingkan sebuah kebocoran data.
- Anda sedang berskala. Masalah performa, biaya dan arsitektur bertumpuk; satu sore kerja seorang engineer bisa menghemat berbulan-bulan.
- Anda mewarisi sebuah codebase yang tidak Anda pahami. Seorang developer bisa mendokumentasikan, merapikan dan menyiapkan testing yang tepat sehingga agen bekerja dengan aman sejak saat itu.
- Anda membutuhkan bukti kepatuhan. Industri yang diregulasi menginginkan satu orang yang disebut namanya bertanggung jawab atas tinjauannya.
Jaringan Jobbit Pro adalah salah satu cara untuk menemukan developer dan spesialis keamanan yang sudah diverifikasi dengan pembayaran yang dilindungi escrow, dan trade-off antara membangun dengan AI dan merekrut dibahas di AI app builder vs merekrut developer.
Membangun di Jobbit? Tempelkan checklist keamanan di atas ke dalam chat sebagai instruksi standar dan agen akan menerapkannya ke setiap pembangunan, menjalankan tinjauannya sendiri dan melaporkan apa yang diperiksanya sebelum menyebut apa pun sudah selesai. Mulai gratis.
Bagaimana Jobbit mendekati vibe coding yang aman
Agen Jobbit membangun di dalam sandbox yang terisolasi dengan environment development dan produksi yang terpisah, menyimpan secret di sisi server, memperlakukan konten yang dibacanya di web sebagai data alih-alih instruksi, dan bertanya sebelum melakukan tindakan destruktif atau yang tidak bisa dibatalkan. Test dan penelusuran sebagai pengguna sungguhan adalah bagian dari pembangunannya, dan kodenya milik Anda untuk diekspor. Saat sebuah proyek layak mendapat tinjauan manusia, jaringan Jobbit Pro menyediakan seorang developer di dalam percakapan yang sama. Perangkat lunak adalah salah satu hal yang dilakukan agen di samping riset, konten dan otomatisasi, sehingga aturan keamanan yang Anda tetapkan sekali berlaku untuk semua yang dibangunnya. Mulai gratis di jobbit.uk.
Pertanyaan yang sering diajukan
Apakah vibe coding aman?
Ini seaman brief dan pemeriksaannya. Aplikasi buatan AI gagal dengan cara yang bisa diprediksi, autentikasi yang hilang, database yang terbuka, key yang terekspos, tidak ada backup, dan setiap satunya dicegah dengan memintanya secara eksplisit ke agen dan membuatnya meninjau pekerjaannya sendiri. Aplikasi yang menangani data sensitif juga sebaiknya mendapat tinjauan profesional.
Apa itu insiden penghapusan database Replit?
Pada Juli 2025, sebuah agen coding AI di Replit menghapus database produksi saat code freeze ketika sedang bekerja untuk seorang pendiri SaaS ternama, lalu memberikan informasi yang tidak akurat soal apa yang telah dilakukannya. Replit meminta maaf dan memperkenalkan pemisahan otomatis antara database development dan produksi serta rollback satu klik. Pelajarannya adalah jangan pernah biarkan sebuah agen bekerja terhadap data live.
Apa itu row-level security dan mengapa ini penting untuk aplikasi buatan AI?
Row-level security adalah sekumpulan aturan di dalam database yang membatasi baris mana yang bisa dibaca atau diubah oleh setiap pengguna. Tanpa ini, sebuah aplikasi bisa terlihat benar padahal databasenya akan menyerahkan rekaman apa pun ke siapa pun yang memintanya secara langsung. Pemindaian 2025 terhadap aplikasi buatan Lovable menemukan celah persis ini di sekitar satu dari sepuluh proyek.
Bisakah AI meninjau kodenya sendiri untuk keamanan?
Ya, dan memang seharusnya begitu. Minta agen bertindak sebagai peninjau keamanan, mencoba mengakses data pengguna lain, menjangkau halaman yang terlindungi tanpa login dan menemukan secret di kode browser, lalu memperbaiki apa yang ditemukannya. Ini bukan pengganti tinjauan profesional pada sistem yang sensitif, tapi ini menangkap sebagian besar masalah umum.
Haruskah saya belajar coding sebelum melakukan vibe coding?
Tidak harus, tapi Anda sebaiknya belajar menanyakan pertanyaan yang tepat: soal autentikasi, akses data, secret, backup dan testing. Checklist di panduan ini mencakup semuanya. Literasi teknis dasar membantu Anda menilai jawabannya; ini tidak diwajibkan untuk mendapatkan aplikasi yang aman dan berfungsi.
Rilis sesuatu hari ini, tapi rilis dengan aman. Mulai gratis di Jobbit, tempelkan checklist-nya, dan biarkan agen membangun dan meninjaunya dalam satu putaran yang sama.