Dampak
Membocorkan rahasia seperti kunci, token, atau kredensial API dapat menyebabkan akses tidak sah ke data sensitif, peniruan identitas layanan, dan kerugian finansial yang signifikan karena penyalahgunaan sumber daya [S1]. Setelah rahasia dimasukkan ke repositori publik atau digabungkan ke dalam aplikasi frontend, rahasia tersebut harus dianggap sebagai [S1] yang telah disusupi.
Akar Penyebab
Penyebab utama adalah penyertaan kredensial sensitif secara langsung dalam kode sumber atau file konfigurasi yang kemudian dikomit ke kontrol versi atau disajikan ke klien [S1]. Pengembang sering kali melakukan hard-code kunci untuk kenyamanan selama pengembangan atau secara tidak sengaja menyertakan file .env dalam komitmen mereka [S1].
Perbaikan Beton
- Putar Rahasia yang Disusupi: Jika ada rahasia yang bocor, rahasia tersebut harus segera dicabut dan diganti. Menghapus rahasia dari versi kode saat ini saja tidak cukup karena tetap berada dalam riwayat kontrol versi [S1][S2].
- Gunakan Variabel Lingkungan: Simpan rahasia dalam variabel lingkungan, bukan melakukan hardcoding pada variabel tersebut. Pastikan file
.envditambahkan ke.gitignoreuntuk mencegah penerapan [S1] yang tidak disengaja. - Menerapkan Manajemen Rahasia: Gunakan alat manajemen rahasia khusus atau layanan brankas untuk memasukkan kredensial ke dalam lingkungan aplikasi pada waktu proses [S1].
- Bersihkan Riwayat Repositori: Jika ada rahasia yang dimasukkan ke Git, gunakan alat seperti
git-filter-repoatau BFG Repo-Cleaner untuk menghapus secara permanen data sensitif dari semua cabang dan tag di riwayat repositori [S2].
Bagaimana FixVibe mengujinya
FixVibe sekarang menyertakan ini dalam pemindaian langsung. secrets.js-bundle-sweep pasif mengunduh bundel JavaScript asal yang sama dan mencocokkan kunci API yang dikenal, token, dan pola kredensial dengan gerbang entropi dan placeholder. Pemeriksaan langsung terkait memeriksa penyimpanan browser, peta sumber, autentikasi dan bundel klien BaaS, serta pola sumber repo GitHub. Penulisan ulang riwayat Git tetap merupakan langkah remediasi; Liputan langsung FixVibe berfokus pada rahasia yang ada dalam aset yang dikirimkan, penyimpanan browser, dan konten repo saat ini.
