Pelihara perangkat lunak sepanjang masa penggunaannya
SelesaiPrioritaskan kerentanan, upgrade, penyimpangan konfigurasi, dan penghentian layanan. Ikuti temuan pemeliharaan hingga perbaikan terverifikasi di produksi.
Diterbitkan oleh TaigaCara kami menulis
Periksa pemahaman AndaPerbaikan dependensi telah di-merge, tetapi produksi masih menjalankan image sebelumnya. Bagaimana status pemeliharaannya?Kerjakan latihan
Hal yang akan dipelajari
- Pisahkan pemeliharaan rutin dari respons insiden.
- Prioritaskan pekerjaan berdasarkan paparan, eksploitasi, dan dampak layanan.
- Verifikasi bahwa perbaikan pemeliharaan mencapai layanan yang berjalan.
Tetapkan penanggung jawab layanan untuk pemeliharaan
Perangkat lunak yang berguna terus berubah setelah rilis pertama. Dependensi menerima perbaikan. Dukungan runtime berakhir. Sertifikat kedaluwarsa. Aturan bisnis berubah. Akses yang diberikan saat penyiapan dapat bertahan lebih lama daripada yang dimaksud.
Simpan inventaris layanan, penanggung jawab, versi yang di-deploy, dependensi, dan tanggal dukungan. Sertakan pekerjaan terjadwal serta pekerjaan yang dipicu temuan baru. Alokasikan kapasitas untuk keduanya. Backlog pemeliharaan tanpa penanggung jawab tidak melindungi layanan.
Pisahkan pemeliharaan dari respons insiden segera. Kredensial yang terekspos atau bukti kompromi aktif dapat memerlukan pembatasan sebelum siklus pengembangan biasa selesai. Arahkan kasus tersebut ke proses respons keamanan.
Prioritaskan paparan yang sebenarnya
Tingkat keparahan menjelaskan kemungkinan dampak. Prioritas juga bergantung pada eksploitasi, keterjangkauan, data, kontrol yang ada, dan biaya penundaan. Layanan internal dengan traffic rendah tetap dapat menyimpan kredensial penting.
Katalog Known Exploited Vulnerabilities CISA mencatat kerentanan dengan bukti eksploitasi. Gunakan katalog ini sebagai masukan penentuan prioritas. Tidak tercantumnya kerentanan dalam katalog tidak membuktikan bahwa kerentanan tersebut aman. Katalog CISA.
Pertimbangkan temuan fiktif berikut. Batas waktu berasal dari organisasi dalam contoh; batas tersebut bukan tenggat universal.
| Temuan | Kondisi yang diketahui | Tindakan awal yang berguna |
|---|---|---|
| Kerentanan dependensi | Eksploitasi diketahui; route yang terdampak dapat diakses publik | Eskalasikan, periksa paparan, dan rencanakan mitigasi serta perbaikan segera |
| Kredensial yang masuk ke commit | Kredensial masih aktif; akses repositori belum pasti | Libatkan respons keamanan; cabut atau rotasi melalui proses yang disetujui |
| Dukungan runtime berakhir | Dukungan berakhir dalam 60 hari; belum ada upgrade yang diuji | Tetapkan penanggung jawab upgrade dan waktu pengujian kompatibilitas |
| Penyimpangan infrastruktur | Perubahan manual membuka jalur jaringan yang tidak dimaksud | Konfirmasikan perubahan, batasi jalur melalui kontrol yang diizinkan, dan selaraskan konfigurasi |
Jangan otomatis mengubah setiap temuan menjadi upgrade besar. Pilih perbaikan yang didukung, periksa kompatibilitas, dan uji perilaku yang penting. Catat mitigasi sementara beserta penanggung jawab dan kondisi berakhirnya.
Ikuti perbaikan hingga produksi
Gunakan urutan yang dapat ditelusuri: temuan, keputusan, perubahan, peninjauan, deployment, dan verifikasi. Catat pengenal artefak yang benar-benar digunakan produksi. Pindai ulang artefak atau lingkungan yang relevan setelah perubahan.
Untuk paket PDF rentan dalam contoh fiktif, tim melakukan merge upgrade pada 10:00. Produksi masih menjalankan image kemarin pada 11:00. Perbaikan repositori selesai. Remediasi produksi belum selesai.
Setelah deployment, verifikasi versi paket dan pembuatan PDF. Pemindaian kerentanan tidak membuktikan bahwa ekspor masih berfungsi. Pengujian fungsional tidak membuktikan bahwa komponen rentan telah dihapus.
SSDF NIST mencakup identifikasi dan respons kerentanan berkelanjutan. Terapkan praktik tersebut sepanjang siklus hidup, termasuk pada perangkat lunak yang jarang menerima permintaan fitur. NIST SSDF.
Gunakan otomatisasi dengan batas yang terlihat
Taiga Maintaining memindai repositori yang terhubung dan dapat mengubah temuan menjadi inisiatif remediasi. Periksa pemindaian menyeluruh terakhir yang berhasil, versi yang terdampak, dan perubahan yang dihasilkan. Pemindaian repositori tidak membuktikan keterjangkauan komponen rentan di produksi. Maintaining.
Otomatisasi dapat mengurangi pekerjaan berulang, tetapi layanan tetap memerlukan penanggung jawab deployment dan verifikasi. Nyatakan keputusan rilis, akses darurat, dan berakhirnya pengecualian secara eksplisit.
Pemeliharaan juga mencakup penghentian layanan. Hapus route, kredensial, integrasi, dan infrastruktur yang tidak digunakan melalui proses terkendali. Periksa persyaratan retensi dan layanan yang bergantung padanya sebelum penghapusan. Hentikan layanan yang berjalan dan tetapkan tanggung jawab retensi atau audit yang tersisa.
Pelajaran berikutnya membahas pemindaian dan remediasi kerentanan berkelanjutan secara terperinci.
Kerjakan latihan
Gunakan empat temuan fiktif dalam pelajaran ini. Tetapkan penanggung jawab, tindakan awal, metode verifikasi, dan waktu peninjauan untuk masing-masing. Jelaskan pengamatan baru yang dapat mengubah prioritas Anda.
Unduh lembar kerja (Markdown)Menonaktifkan pilihan ini menghapus seluruh kemajuan yang tersimpan dalam browser.
Kemajuan tetap tersimpan dalam browser ini. Tanpa akun atau pelacakan.
Sumber dan bacaan lanjutan
- NIST: Secure Software Development Framework ↗
- CISA: Known Exploited Vulnerabilities Catalog ↗
- Taiga docs: Maintaining ↗