0Pricing
Cyber Security Academy · Pelajaran

Mengamankan Pipeline CI/CD

Memperkuat jalur pembangunan dan rilis.

Mengamankan Pipeline CI/CD adalah pelajaran Cyber Security Academy gratis di CoddyKit. Ini adalah pelajaran 4 dari 4. Kamu bisa membaca pelajaran lengkapnya di bawah secara gratis — lalu praktikkan langsung di browser dengan editor kode bawaan dan tutor AI 24/7. Ini adalah bagian dari jalur belajar Cyber Security Academy, dan progresmu tersinkronisasi di web dan aplikasi CoddyKit. Kursus Cyber Security Academy mencakup 4 pelajaran total.

Alur Kerja sebagai Sasaran

Alur kerja CI/CD memiliki akses istimewa ke kode sumber, rahasia, dan produksi. Jika alur kerja tersebut disusupi, penyerang dapat menyisipkan pintu belakang ke dalam setiap pembuatan di masa mendatang sekaligus melewati peninjauan kode. Alur kerja ini merupakan salah satu sasaran paling bernilai dalam rekayasa modern.

Perlakukan alur kerja sebagai infrastruktur produksi: alur kerja tersebut layak mendapatkan penguatan, pemantauan, dan disiplin hak akses minimum yang sama seperti sistem aktif Anda.

Masukan Tidak Tepercaya dalam Pembuatan

Alur kerja berjalan otomatis berdasarkan peristiwa yang tidak sepenuhnya Anda kendalikan: permintaan penggabungan, label, dan kontribusi eksternal. Permintaan penggabungan berbahaya dapat mencoba mengubah proses pembuatan itu sendiri.

  • Definisi alur kerja yang telah disusupi dalam repositori percabangan dapat mencoba mengekstrak rahasia
  • Kode yang tidak tepercaya dapat berjalan dengan izin yang sama seperti pembuatan tepercaya

Pisahkan alur kerja tepercaya dan tidak tepercaya: jangan paparkan rahasia kepada pekerjaan yang dipicu oleh permintaan penggabungan eksternal.

Kunci Tindakan dan Citra Anda

Langkah-langkah alur kerja sering mengambil tindakan pihak ketiga atau citra kontainer berdasarkan label yang dapat berubah. Jika label tersebut diarahkan ulang ke konten berbahaya, pembuatan Anda akan disusupi. Kunci pada ringkasan yang tidak dapat diubah.

# BAD: mutable tag can be moved under you
uses: some/action@v3

# GOOD: pinned to an immutable commit SHA
uses: some/action@a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6e7f8a9b0

# pin container steps by digest too
image: build-tools@sha256:9f86d081884c7d659a2feaa0c55ad015...

Hak Akses Minimum untuk Token

Token bawaan alur kerja sering memiliki izin berlebihan, sehingga memberikan akses tulis ke seluruh repositori atau registri. Batasi cakupannya tepat pada hal yang dibutuhkan setiap pekerjaan.

# scope the default token to read-only, grant more only where needed
permissions:
  contents: read

jobs:
  publish:
    permissions:
      contents: read
      packages: write   # only this job can publish

Praktik Aman dalam Menangani Rahasia

Rahasia yang ditulis langsung dalam kode atau dibagikan secara luas merupakan jalur kebocoran utama. Terapkan penanganan yang ketat:

  • Simpan rahasia di pengelola rahasia atau penyimpanan rahasia CI, jangan pernah di dalam kode
  • Utamakan federasi OIDC berumur singkat daripada kunci layanan awan statis
  • Samarkan rahasia dalam catatan dan cegah agar rahasia tidak dicetak ulang
  • Batasi setiap rahasia hanya pada pekerjaan dan lingkungan minimum yang diperlukan

Federasi OIDC memungkinkan alur kerja menukar identitas saat pembuatan dengan kredensial layanan awan berumur singkat, sehingga kunci berumur panjang dapat dihilangkan sepenuhnya.

Pelaksana Sementara yang Terisolasi

Pelaksana pembuatan yang digunakan ulang dapat membawa perangkat lunak berbahaya atau rahasia yang bocor dari satu pekerjaan ke pekerjaan berikutnya. Pelaksana sementara dibuat baru untuk setiap pekerjaan dan dihancurkan setelahnya, sehingga tidak ada yang tersisa.

  • Satu lingkungan bersih untuk setiap pembuatan, lalu dibuang
  • Tidak ada keadaan bersama antara pekerjaan tepercaya dan tidak tepercaya
  • Lalu lintas keluar jaringan dibatasi ke titik akhir yang diperlukan

Hal ini secara langsung mendukung sasaran isolasi SLSA L3.

Lindungi Cabang Sumber

Kepercayaan alur kerja dimulai dari sistem kendali sumber. Jika siapa pun dapat mengirim perubahan ke cabang rilis, penandatanganan dan pemindaian di tahap berikutnya menjadi sia-sia.

  • Wajibkan peninjauan permintaan penggabungan sebelum penggabungan
  • Tegakkan komit bertanda tangan pada cabang yang dilindungi
  • Wajibkan pemeriksaan status (pengujian, pemindaian) agar berhasil
  • Larang pengiriman paksa dan pengiriman langsung ke main
# require signed commits on a branch
git config commit.gpgsign true

# verify a commit signature locally
git verify-commit HEAD

Pindai di Dalam Alur Kerja

Integrasikan gerbang keamanan langsung ke CI agar masalah menggagalkan pembuatan, bukan mencapai produksi.

# secret leak detection
gitleaks detect --source . --redact

# dependency vulnerabilities
osv-scanner --lockfile=package-lock.json

# IaC and config misconfig
trivy config .

# fail the job on critical findings (non-zero exit stops CI)

Pengendalian Dua Orang untuk Rilis

Tindakan berdampak tinggi layak mendapatkan pemeriksaan oleh manusia. Penerapan ke produksi dan perubahan kredensial harus memerlukan persetujuan dari seseorang selain penulisnya.

  • Aturan perlindungan lingkungan mewajibkan peninjau sebelum penerapan
  • Pisahkan identitas pembuatan dari identitas penerapan
  • Tidak ada satu pelaku yang dapat menulis kode sekaligus mengirimkannya ke produksi tanpa peninjauan

Hal ini membatasi risiko orang dalam dan radius dampak dari satu akun yang disusupi.

Audit dan Deteksi Manipulasi

Anda harus dapat merekonstruksi tindakan alur kerja. Pusatkan dan lindungi catatannya.

  • Kirim catatan CI ke penyimpanan yang hanya dapat ditambahi dan aksesnya dikendalikan
  • Catat siapa yang mengubah definisi alur kerja dan kapan perubahan itu dilakukan
  • Hasilkan asal-usul bertanda tangan agar artefak dapat ditelusuri kembali ke pembuatan tertentu
  • Beri peringatan atas anomali: pelaksana baru yang dihosting sendiri, akses rahasia yang tidak terduga, dan perubahan konfigurasi di luar peninjauan

Daftar Periksa Penguatan Alur Kerja

Alur kerja yang dapat dipertahankan menggabungkan pengendalian sumber, pembuatan, dan rilis:

  • Perlindungan cabang, komit yang ditinjau dan bertanda tangan
  • Tindakan dan citra yang dikunci berdasarkan ringkasan
  • Token OIDC berumur singkat dengan hak akses minimum
  • Pelaksana sementara yang terisolasi
  • Pemindaian rahasia, dependensi, dan konfigurasi dalam alur kerja
  • Persetujuan rilis oleh dua orang
  • Artefak, SBOM, dan asal-usul bertanda tangan dengan pencatatan audit

Pemeriksaan Singkat: Izin Token

Tentukan pengendalian yang tepat untuk token pembuatan yang memiliki hak istimewa.

Ringkasan: Mengamankan Alur Kerja CI/CD

Anda telah belajar memperkuat seluruh jalur pembuatan dan rilis.

  • Perlakukan alur kerja sebagai produksi; alur kerja tersebut dapat memasang pintu belakang pada setiap pembuatan di masa mendatang
  • Isolasi pembuatan dari PR yang tidak tepercaya dari rahasia
  • Kunci tindakan dan citra berdasarkan ringkasan; gunakan token OIDC berumur singkat dengan hak akses minimum
  • Gunakan pelaksana sementara yang terisolasi dan lindungi cabang sumber
  • Lakukan pemindaian dalam alur kerja, wajibkan persetujuan rilis oleh dua orang, dan simpan catatan audit yang menunjukkan perubahan

Kursus selesai: kini Anda dapat mengamankan rantai pasokan perangkat lunak dari awal hingga akhir.

Pertanyaan yang Sering Diajukan

Apakah pelajaran “Mengamankan Pipeline CI/CD” gratis?

Ya — teks lengkap “Mengamankan Pipeline CI/CD” gratis dibaca di sini di web. Untuk praktiknya secara interaktif (editor kode bawaan dan tutor AI 24/7) dan buka sisa kursus Cyber Security Academy, upgrade ke CoddyKit PRO. Kursus Cyber Security Academy mencakup 4 pelajaran total.

Apa yang akan aku pelajari di “Mengamankan Pipeline CI/CD”?

Memperkuat jalur pembangunan dan rilis. Kamu berlatih Cyber Security Academy dengan kode praktik yang langsung kamu jalankan di browser, dan tutor AI 24/7 menjawab pertanyaanmu saat kamu mengerjakan pelajaran ini.

Apakah aku perlu pengalaman untuk memulai Cyber Security Academy?

Tidak diperlukan pengalaman sebelumnya. Cyber Security Academy di CoddyKit dirancang untuk pemula hingga pelajar tingkat lanjut, jadi kamu bisa memulai di sini atau dari awal dan belajar sesuai kecepatan kamu sendiri. Ini adalah pelajaran 4 dari 4.

Berapa lama pelajaran “Mengamankan Pipeline CI/CD” memakan waktu?

Sebagian besar pelajaran CoddyKit memakan waktu sekitar 5–10 menit. Setiap pelajaran ringkas dan interaktif, jadi kamu membuat kemajuan stabil dan melanjutkan dari tempat kamu tinggalkan di web dan aplikasi.

Bisakah aku menulis dan menjalankan kode dalam pelajaran Cyber Security Academy ini?

Ya. Setiap pelajaran Cyber Security Academy menyertakan editor kode bawaan, jadi kamu menulis dan menjalankan kode nyata langsung di browser dan mendapatkan umpan balik AI instan — tidak diperlukan penyiapan lokal.

Semua pelajaran dalam kursus ini

  1. Ancaman Rantai Pasokan
  2. Daftar Bahan Perangkat Lunak (SBOM)
  3. Penandatanganan Dependensi dan Artefak
  4. Mengamankan Pipeline CI/CD
← Kembali ke Cyber Security Academy