View a markdown version of this page

Buat ulasan kode - Agen Keamanan AWS

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Buat ulasan kode

Buat ulasan kode di aplikasi web AWS Security Agent untuk memindai repositori kode sumber dan sumber S3 Anda untuk mencari kerentanan keamanan. Tinjauan kode melakukan analisis statis komprehensif di seluruh basis kode Anda, mengidentifikasi masalah keamanan, dan memberikan panduan remediasi.

Tidak seperti tinjauan kode berbasis permintaan tarik yang menganalisis perubahan kode individual (lihatTinjau temuan keamanan kode dalam permintaan tarik), tinjauan kode sesuai permintaan memindai kode sumber lengkap Anda untuk mengidentifikasi kerentanan keamanan dan memvalidasi kepatuhan terhadap persyaratan keamanan organisasi Anda.

Dalam prosedur ini, Anda akan membuat tinjauan kode dengan memilih input kode sumber, mengonfigurasi izin, dan menjalankan tinjauan.

Prasyarat

Sebelum Anda mulai, pastikan Anda memiliki:

  • Akses ke aplikasi web AWS Security Agent

  • Setidaknya satu GitHub repositori terhubung atau bucket S3 di Ruang Agen Anda

Tip

Jika Anda sudah memiliki GitHub repositori yang terhubung ke Ruang Agen Anda, peninjauan kode siap digunakan — tidak diperlukan pengaturan tambahan. Pilih Mulai di aplikasi web dari kartu peninjauan Kode di halaman Ruang Agen Anda, atau luncurkan aplikasi web secara langsung.

Jika Anda perlu menghubungkan sumber tambahan atau mengkonfigurasi ember S3, lihat. Aktifkan peninjauan kode

Akses halaman ulasan kode

Arahkan ke bagian ulasan kode di aplikasi web.

  1. Masuk ke aplikasi web AWS Security Agent.

  2. Di bilah sisi kiri, pilih Ulasan kode.

  3. Anda melihat daftar ulasan kode yang ada dengan informasi sumbernya, status run terakhir, dan ringkasan temuan.

Buat ulasan kode

Siapkan tinjauan kode baru dengan mengonfigurasi input dan izin kode sumbernya.

  1. Pada halaman Ulasan kode, pilih Buat ulasan kode.

Konfigurasikan detail ulasan kode

Berikan judul dan pilih kode sumber untuk ditinjau.

  1. Di bidang Judul, masukkan nama deskriptif untuk tinjauan kode Anda.

    Tip

    Gunakan nama yang mengidentifikasi aplikasi, repositori, atau ruang lingkup tinjauan. Misalnya, “billing-service-security-review” atau “infrastruktur-kode-audit”.

  2. Di bagian Sumber, pilih input kode sumber untuk ulasan ini. Pilih dari dua tab:

GitHub repositori

Pilih dari repositori yang terhubung ke Ruang Agen Anda.

  1. Pilih tab GitHub repositori.

  2. Dalam tabel Repositori terintegrasi, pilih kotak centang di samping setiap repositori yang ingin Anda sertakan dalam ulasan.

  3. Gunakan bidang pencarian untuk menemukan repositori tertentu berdasarkan nama.

catatan

Hanya repositori yang terhubung ke Ruang Agen Anda melalui konfigurasi peninjauan kode yang muncul di sini. Untuk menambahkan lebih banyak repositori, pilih Kelola di konsol Admin Anda atau minta administrator Anda untuk memperbarui konfigurasi Ruang Agen.

Sumber S3

Pilih file ZIP dari bucket S3 yang terhubung ke Ruang Agen Anda. Administrator Ruang Agen Anda mengonfigurasi bucket S3 mana yang tersedia. File ZIP apa pun yang disimpan di salah satu bucket tersebut dapat digunakan sebagai sumber untuk tinjauan kode.

  1. Pilih tab sumber S3.

  2. Masukkan URI S3 dari setiap file ZIP yang ingin Anda sertakan dalam ulasan. Anda dapat menambahkan hingga 30 sumber S3.

catatan

Sumber S3 harus berupa file ZIP yang disimpan dalam bucket S3 yang terhubung ke Ruang Agen Anda. Untuk membuat ember tambahan tersedia, lihatAktifkan peninjauan kode.

Mengatur Konfigurasi Izin

Pilih peran layanan IAM dan grup CloudWatch log opsional untuk tinjauan kode ini.

  1. Di bagian Izin, cari dropdown peran Layanan.

  2. Pilih peran IAM dari peran layanan yang dikonfigurasi.

    catatan

    Peran layanan harus memiliki izin untuk mengakses kode sumber Anda di S3 dan menulis ke CloudWatch log, dan sumber daya AWS lainnya yang diperlukan untuk peninjauan kode. Peran layanan dikonfigurasi selama penyiapan peninjauan kode di AWS Management Console.

  3. (Opsional) Di dropdown grup CloudWatch log, pilih grup log untuk menyimpan log eksekusi peninjauan kode.

    catatan

    Jika Anda tidak memilih grup log, AWS Security Agent akan membuat grup log default untuk menyimpan log tinjauan kode.

Konfigurasikan remediasi kode otomatis

Aktifkan remediasi otomatis agar AWS Security Agent menghasilkan perbaikan kode untuk semua temuan segera setelah peninjauan selesai.

  1. Di bagian Remediasi kode otomatis, pilih kotak centang Aktifkan perbaikan kode otomatis.

Cara AWS Security Agent memberikan perbaikan tergantung pada sumbernya:

  • GitHub Repositori pribadi — AWS Security Agent mengirimkan permintaan tarik dengan perbaikan ke repositori.

  • GitHub Repositori publik — Untuk menghindari pengungkapan kerentanan sebelum diperbaiki, AWS Security Agent tidak membuka permintaan tarik. Sebaliknya, itu melampirkan perbedaan yang disarankan ke temuan yang dapat Anda unduh dari aplikasi web dan mendaftar secara pribadi.

  • Sumber S3 — Remediasi kode tidak tersedia. Tinjau detail temuan dan terapkan perbaikan secara manual.

penting

Permintaan tarik remediasi yang dikirimkan ke repositori pribadi dapat dilihat oleh semua orang dengan akses baca. Tinjau perubahan sebelum menggabungkan. Remediasi kode otomatis hanya tersedia ketika GitHub repositori dipilih sebagai sumber.

catatan

Saat dinonaktifkan, Anda masih dapat memicu remediasi kode secara manual untuk GitHub-sourced temuan individual setelah peninjauan selesai.

Konfigurasikan validasi simulasi

Aktifkan validasi simulasi untuk mengonfirmasi secara dinamis apakah kerentanan yang ditemukan dapat dieksploitasi dalam aplikasi yang sedang berjalan.

  1. Di bagian Validasi simulasi, pilih kotak centang Aktifkan validasi simulasi.

Saat diaktifkan, AWS Security Agent menyediakan lingkungan simulasi setelah analisis statis selesai. Ini onboard kode sumber Anda, memulai layanan di dalam lingkungan, dan mencoba untuk mengeksploitasi kerentanan yang ditemukan selama pemindaian. Temuan kemudian diperbarui dengan status validasi yang menunjukkan apakah kerentanan berhasil dieksploitasi.

catatan

Validasi simulasi saat ini hanya tersedia untuk aplikasi dockerizable mandiri. Ketika beberapa repositori dipilih sebagai sumber, validasi simulasi tidak tersedia.

penting

Validasi simulasi menambahkan waktu pemrosesan ke proses peninjauan kode Anda. Langkah validasi menyediakan lingkungan dan menjalankan upaya eksploitasi. Ini biasanya memakan waktu 1-3 jam tergantung pada jumlah temuan dan kompleksitas aplikasi.

Tujuan jaringan yang diizinkan

Lingkungan simulasi memiliki akses jaringan keluar yang dibatasi ke daftar izin yang telah ditentukan sebelumnya. Aplikasi Anda dapat mencapai domain berikut selama validasi:

Tabel berikut mencantumkan domain yang diizinkan dan tujuannya.

Domain Tujuan

.amazonaws.com, .aws.amazon.com

Layanan AWS

.public.ecr.aws

Amazon ECR Public

.docker.com, .docker.io

Hub Docker

.github.com, .githubusercontent.com

GitHub

.gitlab.com

GitLab

.npmjs.com, .npmjs.org

registri npm

.pypi.org, .pypi.python.org, .pythonhosted.org

Indeks Paket Python

.crates.io, .rustup.rs

Paket karat

.maven.org, .gradle.org

Java/Gradle paket

.nuget.org

.NET paket

.rubygems.org, .ruby-lang.org

Paket Ruby

.golang.org, .pkg.go.dev, .goproxy.io

Paket Go

.nodejs.org, .yarnpkg.com

Node.js

.alpinelinux.org, .debian.org, .ubuntu.com, .centos.org, .fedoraproject.org

Repositori distribusi Linux

.cloudfront.net

CloudFront distribusi

.google.com, .googleapis.com

API Google

.microsoft.com, .visualstudio.com

Layanan Microsoft

.sourceforge.net, .bitbucket.org

Hosting sumber

catatan

Jika aplikasi Anda memerlukan akses jaringan ke domain yang tidak ada dalam daftar ini, koneksi akan diblokir oleh firewall jaringan. Aplikasi yang bergantung pada API atau layanan eksternal yang tidak tercantum di atas mungkin tidak dimulai dengan benar di lingkungan simulasi.

Buat ulasan kode

  1. Tinjau konfigurasi Anda untuk memastikan akurasi.

  2. Pilih Buat ulasan kode.

Anda diarahkan ke halaman detail peninjauan kode tempat Anda dapat memulai peninjauan.

Jalankan tinjauan kode

Setelah membuat tinjauan kode, mulailah menjalankan untuk memulai analisis.

  1. Pada halaman detail peninjauan kode, pilih Mulai peninjauan.

  2. AWS Security Agent mulai menganalisis kode sumber Anda.

Anda juga dapat memulai tinjauan dari halaman daftar ulasan Kode dengan memilih Mulai tinjauan di samping tinjauan kode yang ingin Anda jalankan.

Memantau peninjauan kode yang dijalankan

Lacak kemajuan tinjauan kode Anda saat dijalankan.

Tinjau fase lari

Sebuah tinjauan kode berjalan melalui fase-fase berikut, ditampilkan sebagai indikator kemajuan:

  1. Preflight — AWS Security Agent memvalidasi akses ke kode sumber Anda dan menyiapkan lingkungan pengujian. Pemeriksaan preflight meliputi:

    • Penyiapan infrastruktur layanan

    • Validasi akses sumber S3

    • Pengaturan lingkungan pengujian

  2. Analisis statis — AWS Security Agent memindai kode sumber Anda untuk mengetahui kerentanan keamanan dan pelanggaran persyaratan.

  3. Validasi simulasi (opsional) — Jika validasi simulasi diaktifkan, AWS Security Agent menyediakan lingkungan simulasi dan menerapkan aplikasi Anda. Kemudian mencoba untuk mengeksploitasi kerentanan yang ditemukan selama analisis statis. Langkah ini menegaskan apakah temuan dapat dieksploitasi dalam runtime target. Fase ini hanya muncul ketika Anda mengaktifkan validasi simulasi selama pembuatan tinjauan kode.

  4. Finalisasi — AWS Security Agent mengkompilasi temuan dan menghasilkan ringkasan hasil.

Lihat detail run

Pada halaman run detail, navigasikan antar tab untuk memantau kemajuan:

  • Code review run — Lihat ringkasan run termasuk run ID, waktu pembuatan, status, durasi, jam tugas, rincian tingkat keparahan, dan bagan tipe risiko.

  • Preflight — Lihat progres pemeriksaan preflight dan status setiap langkah validasi.

  • Log peninjauan kode — Melihat tugas AWS Security Agent yang diidentifikasi dan dilakukan selama peninjauan, dengan log tugas terperinci untuk setiap langkah.

  • Validasi simulasi — Saat validasi simulasi diaktifkan, lihat status penyediaan, tugas validasi untuk temuan individu, dan hasilnya.

  • Temuan — Lihat temuan keamanan setelah peninjauan selesai (lihatTinjau temuan dari tinjauan kode).

Jalankan sejarah

Setiap tinjauan kode menyimpan riwayat semua proses. Pada halaman detail ulasan kode:

  • Bagian Lari terbaru menunjukkan proses terbaru dengan waktu mulai, status, durasi, dan ID.

  • Tabel Semua berjalan mencantumkan semua proses sebelumnya dengan waktu mulai, status, durasi, ringkasan temuan, dan ID mereka.

  • Pilih Monitor run untuk melihat detail proses aktif terbaru.

  • Pilih tautan waktu mulai proses apa pun untuk melihat detail lengkapnya.

Langkah selanjutnya

Setelah menjalankan tinjauan kode:

  • Tinjau temuan keamanan dan panduan remediasinya (lihatTinjau temuan dari tinjauan kode)

  • Memulihkan temuan melalui permintaan tarik otomatis atau perbaikan manual (lihat) Remediasi temuan tinjauan kode

  • Jalankan ulasan tambahan setelah menerapkan perbaikan untuk memverifikasi remediasi

  • Sesuaikan konfigurasi atau sumber peninjauan kode Anda saat basis kode Anda berkembang