Secret scanning, SBOM, dan provenance — Vibe Coding dan Security: Dari Prompt ke Aplikasi Aman

MATERI 18 DARI 28

Secret scanning, SBOM, dan provenance

Temukan credential yang tidak sengaja masuk source dan inventaris komponen build.

Tujuan pembelajaran

  • Menjalankan secret scan sebelum push.
  • Memahami SBOM sebagai inventaris.
  • Menilai asal artefak build.

Konsep utama

Secret scan

Scanner membantu, tetapi rotasi tetap wajib jika secret pernah ter-commit.

SBOM

Daftar dependency mempermudah respons terhadap vulnerability.

Alur kerja teknis

  1. Tulis tujuan dan acceptance criteria.
  2. Buat perubahan kecil yang dapat ditinjau.
  3. Jalankan test dan baca diff sebelum menerima hasil AI.

Contoh implementasi

Pemeriksaan repository

git grep -InE "(BEGIN .*PRIVATE KEY|api[_-]?key|password|secret)" -- . \n  ":(exclude)vendor" ":(exclude)node_modules" || true
# Gunakan scanner khusus organisasi untuk pemeriksaan yang lebih kuat.

Redaksi token pada log

import re

def redact(text: str) -> str:
    return re.sub(r"(?i)(token|secret|password)=([^&\s]+)", r"\1=[REDACTED]", text)

Aspek keamanan

  • Jangan menganggap penghapusan commit terakhir sudah mencabut secret.
  • Hindari memasukkan data sensitif ke SBOM/metadata.
  • Verifikasi artefak berasal dari pipeline tepercaya.

Kesalahan umum

  • Menerima kode AI tanpa membaca diff dan memahami alur data.
  • Menguji hanya happy path dan mengabaikan input salah atau batas nilai.
  • Menyimpan secret, token, atau data nyata di prompt dan source code.

Pengujian dan verifikasi

  1. Jalankan contoh dengan input normal.
  2. Ulangi dengan input kosong, tipe salah, dan nilai batas.
  3. Pastikan error tidak membocorkan secret atau detail internal.

Latihan

  1. Modifikasi contoh dengan satu kebutuhan baru dan tulis acceptance criteria-nya.
  2. Tambahkan satu negative test lalu jelaskan risiko yang dicegah.

Checklist

  • Tujuan dan batas pekerjaan jelas.
  • Input divalidasi di server.
  • Secret tidak berada di source/prompt.
  • Test lulus dan diff sudah dibaca.

Rangkuman

Temukan credential yang tidak sengaja masuk source dan inventaris komponen build.