Pilih preferensi cookie Anda

Kami menggunakan cookie penting serta alat serupa yang diperlukan untuk menyediakan situs dan layanan. Kami menggunakan cookie performa untuk mengumpulkan statistik anonim sehingga kami dapat memahami cara pelanggan menggunakan situs dan melakukan perbaikan. Cookie penting tidak dapat dinonaktifkan, tetapi Anda dapat mengklik “Kustom” atau “Tolak” untuk menolak cookie performa.

Jika Anda setuju, AWS dan pihak ketiga yang disetujui juga akan menggunakan cookie untuk menyediakan fitur situs yang berguna, mengingat preferensi Anda, dan menampilkan konten yang relevan, termasuk iklan yang relevan. Untuk menerima atau menolak semua cookie yang tidak penting, klik “Terima” atau “Tolak”. Untuk membuat pilihan yang lebih detail, klik “Kustomisasi”.

SEC11-BP02 Otomatiskan pengujian sepanjang siklus hidup pengembangan dan rilis

Mode fokus
SEC11-BP02 Otomatiskan pengujian sepanjang siklus hidup pengembangan dan rilis - Kerangka Kerja AWS Well-Architected

Otomatiskan pengujian untuk karakteristik keamanan sepanjang siklus hidup pengembangan dan rilis. Otomatisasi mempermudah identifikasi yang konsisten dan berulang atas potensi masalah dalam perangkat lunak sebelum rilis, yang mengurangi risiko masalah keamanan dalam perangkat lunak yang disediakan.

Hasil yang diinginkan: Tujuan dari pengujian otomatis adalah untuk menyediakan cara terprogram untuk mendeteksi potensi masalah lebih awal dan seringkali sepanjang siklus hidup pengembangan. Saat Anda mengotomatiskan pengujian regresi, Anda dapat menjalankan kembali pengujian fungsional dan nonfungsional untuk memastikan bahwa perangkat lunak yang diuji sebelumnya masih berfungsi seperti yang diharapkan setelah perubahan. Saat Anda mendefinisikan pengujian unit keamanan untuk memeriksa apakah ada kesalahan konfigurasi umum, seperti autentikasi yang rusak atau hilang, Anda dapat mengidentifikasi dan memperbaiki masalah ini lebih dini dalam proses pengembangan.

Otomatisasi pengujian menggunakan kasus pengujian yang dibuat berdasarkan tujuan untuk validasi aplikasi, berdasarkan persyaratan aplikasi dan fungsionalitas yang diinginkan. Hasil pengujian otomatis berdasarkan perbandingan output pengujian yang dibuat dengan output yang diharapkan, sehingga mempercepat keseluruhan siklus hidup pengujian. Metodologi pengujian seperti pengujian regresi dan rangkaian pengujian unit adalah pilihan yang terbaik untuk otomatisasi. Otomatisasi pengujian karakteristik keamanan memungkinkan builder menerima umpan balik otomatis tanpa harus menunggu peninjauan keamanan. Pengujian otomatis dalam bentuk analisis kode statis atau dinamis dapat meningkatkan kualitas kode dan membantu mendeteksi potensi masalah perangkat lunak lebih dini dalam siklus hidup pengembangan.

Anti-pola umum:

  • Tidak menyampaikan kasus pengujian dan hasil pengujian dari pengujian otomatis.

  • Hanya menjalankan pengujian otomatis segera sebelum rilis.

  • Mengotomatiskan kasus pengujian dengan berulang kali mengubah persyaratan.

  • Gagal memberikan panduan mengenai cara menangani hasil pengujian keamanan.

Manfaat menjalankan praktik terbaik ini:

  • Menurunkan dependensi pada orang yang mengevaluasi karakteristik keamanan sistem.

  • Memiliki temuan yang konsisten di beberapa aliran kerja meningkatkan konsisten.

  • Menurunkan kemungkinan munculnya masalah keamanan dalam produksi perangkat lunak.

  • Periode waktu lebih pendek antara deteksi dan penyelesaian karena mengidentifikasi masalah perangkat lunak lebih dini.

  • Meningkatkan visibilitas perilaku sistemik atau berulang di beberapa aliran kerja, yang dapat digunakan untuk mendorong peningkatan berskala organisasi.

Tingkat risiko yang terjadi jika praktik terbaik ini tidak diterapkan: Sedang

Panduan implementasi

Saat Anda membuat perangkat lunak, adopsi beragam mekanisme untuk pengujian perangkat lunak guna memastikan bahwa Anda menguji aplikasi untuk kedua persyaratan aplikasi, berdasarkan logika bisnis aplikasi, dan persyaratan nonfungsional, yang fokus pada keandalan, performa, dan keamanan aplikasi.

Pengujian keamanan aplikasi statis (SAST) menganalisis kode sumber Anda untuk mendeteksi pola keamanan anomali dan memberikan indikasi untuk kode yang rawan cacat. SAST mengandalkan input statis, seperti dokumentasi (spesifikasi persyaratan, dokumentasi desain, dan spesifikasi desain) dan sumber kode aplikasi untuk menguji beragam masalah keamanan yang diketahui. Penganalisis kode statis dapat membantu mempercepat analisis kode dalam volume besar. NIST Quality Group menyediakan perbandingan Source Code Security Analyzers, yang mencakup alat-alat sumber terbuka untuk Byte Code Scanners dan Binary Code Scanners.

Lengkapi pengujian statis Anda dengan metodologi pengujian keamanan analisis dinamis (DAST), yang menjalankan pengujian terhadap aplikasi yang berjalan untuk mengidentifikasi potensi perilaku yang tidak diharapkan. Pengujian dinamis dapat digunakan untuk mendeteksi potensi masalah yang tidak terdeteksi melalui analisis statis. Pengujian di tahap repositori kode, build, dan pipeline memungkinkan Anda memeriksa berbagai jenis potensi masalah agar tidak masuk ke dalam kode Anda. Amazon Q Developer menyediakan rekomendasi kode, termasuk pemindaian keamanan, di IDE yang dimiliki builder. Keamanan Amazon CodeGuru dapat mengidentifikasi masalah kritis, masalah keamanan, dan bug yang sulit ditemukan selama pengembangan aplikasi, dan memberikan rekomendasi untuk meningkatkan kualitas kode. Mengekstrak Software Bill of Material (SBOM) juga memungkinkan Anda mengekstrak data formal yang berisi detail dan keterkaitan berbagai komponen yang digunakan dalam membuat perangkat lunak Anda. Hal ini memungkinkan Anda menentukan manajemen kerentanan, dan dengan cepat mengidentifikasi dependensi perangkat lunak atau komponen dan risiko rantai pasokan.

Lokakarya Keamanan untuk Developer menggunakan alat-alat developer AWS, seperti AWS CodeBuild, AWS CodeCommit, dan AWS CodePipeline, untuk melakukan otomatisasi terhadap pipeline perilisan yang mencakup metodologi pengujian SAST dan DAST.

Saat Anda menjalani SDLC, buat proses iteratif yang menyertakan peninjauan aplikasi berkala bersama tim keamanan Anda. Umpan balik yang didapatkan dari peninjauan keamanan ini harus diatasi dan divalidasi sebagai bagian dari peninjauan kesiapan rilis Anda. Peninjauan ini membuat postur keamanan aplikasi yang efektif, dan memberikan umpan balik yang dapat ditindaklanjuti kepada builder untuk menangani potensi masalah.

Langkah-langkah implementasi

  • Implementasikan IDE yang konsisten, peninjauan kode, dan alat CI/CD yang menyertakan pengujian keamanan.

  • Pertimbangkan posisi yang tepat dalam SDLC untuk memblokir pipeline daripada hanya memberi tahu builder bahwa masalah perlu diselesaikan.

  • Automated Security Helper (ASH) adalah contoh untuk alat pemindaian keamanan kode sumber terbuka.

  • Melakukan pengujian atau analisis kode menggunakan alat-alat otomatis, seperti Amazon Q Developer yang terintegrasi dengan IDE developer, dan Keamanan Amazon CodeGuru yang digunakan untuk memindai kode pada saat melakukan commit, akan membantu builder mendapatkan umpan balik pada waktu yang tepat.

  • Saat membangun menggunakan AWS Lambda, Anda dapat menggunakan Amazon Inspector untuk memindai kode aplikasi yang ada dalam fungsi Anda.

  • Saat pengujian otomatis disertakan dalam pipeline CI/CD, Anda harus menggunakan sistem tiket untuk melacak notifikasi dan penyelesaian masalah perangkat lunak.

  • Untuk pengujian keamanan yang mungkin menghasilkan temuan, menautkan ke panduan untuk penyelesaian membantu builder meningkatkan kualitas kode.

  • Analisis temuan secara berkala dari alat otomatis untuk memprioritaskan otomatisasi berikutnya, pelatihan builder, atau kampanye kesadaran.

  • Untuk mengekstrak SBOM sebagai bagian dari pipeline CI/CD Anda, gunakan Amazon Inspector SBOM Generator untuk menghasilkan SBOM untuk arsip, image kontainer, direktori, sistem lokal, dan binari Go dan Rust yang dikompilasi dalam format SBOM CycloneDX.

Sumber daya

Praktik-praktik terbaik terkait:

Dokumen terkait:

Video terkait:

Contoh terkait:

Di halaman ini

PrivasiSyarat situsPreferensi cookie
© 2025, Amazon Web Services, Inc. atau afiliasinya. Semua hak dilindungi undang-undang.