View a markdown version of this page

Buat tes penetrasi - Agen Keamanan AWS

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

Buat tes penetrasi

Siapkan pengujian penetrasi otomatis untuk aplikasi web Anda dengan mengonfigurasi cakupan pengujian, domain target, dan akses sumber daya AWS. Tes penetrasi membantu mengidentifikasi kerentanan keamanan dalam menjalankan aplikasi dengan mensimulasikan skenario serangan dunia nyata terhadap domain terverifikasi Anda.

AWS Security Agent melakukan pengujian keamanan komprehensif terhadap aplikasi web Anda berdasarkan cakupan dan izin yang dikonfigurasi, memberikan temuan terperinci tentang kerentanan yang dapat dieksploitasi sebelum penyerang dapat menemukannya.

Dalam prosedur ini, Anda akan membuat pengujian penetrasi dengan mengonfigurasi detail pengujian, menentukan cakupan pengujian, dan menyiapkan izin yang diperlukan.

Prasyarat

Sebelum Anda mulai, pastikan Anda memiliki:

  • Akses ke aplikasi web AWS Security Agent

  • Setidaknya satu domain terverifikasi untuk pengujian

  • Peran IAM dengan izin yang sesuai untuk AWS Security Agent

  • Memahami arsitektur aplikasi Anda dan jalur kritis

Mulai membuat tes penetrasi

Arahkan ke halaman pembuatan pengujian penetrasi di Aplikasi Web Agen.

  1. Masuk ke aplikasi web AWS Security Agent.

  2. Arahkan ke bagian Tes Penetrasi.

  3. Pilih Buat tes penetrasi.

Tip

Hanya domain terverifikasi yang dapat dimasukkan dalam tes penetrasi. Minta admin Anda untuk memverifikasi domain di konsol manajemen AWS. Lihat Aktifkan domain aplikasi untuk pengujian penetrasi.

Beri nama tes penetrasi Anda

Berikan nama deskriptif yang membantu mengidentifikasi tujuan dan ruang lingkup tes penetrasi ini.

  1. Di bidang Penetration test name, masukkan nama deskriptif untuk pengujian penetrasi Anda.

    contoh

    Nama harus dengan jelas mengidentifikasi aplikasi, lingkungan, atau komponen yang sedang diuji. Maksimum 100 karakter.

Konfigurasikan ruang lingkup uji penetrasi

Tentukan domain dan jalur URL mana yang akan diuji, dan konfigurasikan pengecualian opsional untuk mengontrol batas pengujian.

Tambahkan domain target

Tentukan domain terverifikasi yang akan diuji secara aktif untuk kerentanan keamanan.

  1. Di bagian cakupan pengujian Penetrasi, cari URL Target.

  2. Perluas bagian Domain terverifikasi untuk melihat domain yang tersedia.

  3. Di bidang URL target, masukkan URL domain target.

    penting

    Hanya domain terverifikasi yang dapat diuji. URL harus berada di bawah domain yang telah Anda verifikasi sebelumnya di AWS Security Agent. Sub-domains domain yang diverifikasi tidak memerlukan verifikasi terpisah.

  4. Untuk menambahkan beberapa domain target:

    1. Pilih Tambahkan domain.

    2. Masukkan setiap URL domain tambahan.

  5. Untuk menghapus domain target, pilih Hapus di sebelah URL domain.

Tip

Untuk hasil terbaik, sertakan semua domain yang merupakan bagian dari alur pengguna aplikasi Anda, termasuk subdomain untuk API, layanan otentikasi, dan pengiriman konten. Sub-domains domain induk yang diverifikasi tidak memerlukan verifikasi terpisah.

Kecualikan jenis risiko (opsional)

Pilih kategori risiko tertentu untuk dikecualikan dari pengujian jika tidak berlaku untuk aplikasi Anda.

  1. Temukan bidang Kecualikan jenis risiko.

  2. Pilih dropdown untuk melihat jenis risiko yang tersedia.

  3. Pilih satu atau lebih jenis risiko untuk dikecualikan dari tes penetrasi.

    catatan

    Tidak termasuk jenis risiko membatasi ruang lingkup pengujian. Hanya kecualikan jenis risiko yang tidak relevan dengan aplikasi Anda atau yang ingin Anda uji secara terpisah.

Tambahkan jalur URL di luar cakupan (opsional)

Tentukan jalur URL yang tidak boleh diuji selama pengujian penetrasi. AWS Security Agent mengecualikan jalur yang ditentukan dan semua jalur yang bersarang di bawahnya. Misalnya, jika Anda menambahkan https://example.com/admin sebagai URL di luar cakupan, https://example.com/admin/tools juga di luar cakupan.

  1. Temukan bagian Out-of-scope URL.

  2. Di kolom input Out-of-scope URL, masukkan jalur URL untuk dikecualikan (misalnya, /admin/delete atau/api/reset).

    Awas

    Out-of-scope jalur tidak diuji untuk kerentanan. Pastikan Anda mengecualikan hanya jalur yang tidak boleh diakses selama pengujian, seperti operasi destruktif atau fungsi administratif yang sensitif.

  3. Untuk menambahkan beberapa jalur di luar cakupan:

    1. Pilih Tambahkan URL.

    2. Masukkan setiap jalur tambahan.

  4. Untuk menghapus jalur, pilih Hapus di sebelah jalur.

Tambahkan domain yang dapat diakses (opsional)

Tentukan domain yang diperlukan untuk pengujian tetapi bukan target untuk pengujian kerentanan.

  1. Temukan bagian URL yang Dapat Diakses.

  2. Di bidang input URL yang dapat diakses, masukkan domain yang seharusnya dapat diakses selama pengujian.

    catatan

    Tambahkan domain yang dapat diakses untuk layanan pihak ketiga (seperti Okta, Auth0, Stripe) yang berada di luar domain target Anda. Ini diperlukan agar AWS Security Agent dapat mengakses URL ini untuk login dan navigasi selama pengujian. AWS Security Agent TIDAK menguji penetrasi domain ini—domain tersebut hanya digunakan untuk tujuan akses. Domain yang dapat diakses tidak memerlukan verifikasi kepemilikan, meskipun domain tersebut berasal dari domain yang berbeda dari target Anda. Hanya domain target yang memerlukan kepemilikan terverifikasi.

  3. Untuk menambahkan beberapa domain yang dapat diakses:

    1. Pilih Tambahkan URL.

    2. Masukkan setiap domain tambahan.

  4. Untuk menghapus domain, pilih Hapus di sebelah domain.

Tambahkan header HTTP kustom (opsional)

Tentukan header HTTP kustom yang akan ditambahkan ke permintaan apa pun yang dibuat oleh AWS Security Agent selama pengujian penetrasi.

  1. Temukan bagian header HTTP Kustom.

  2. Di bidang input header HTTP kustom, masukkan nama dan nilai header yang akan dikaitkan dengan permintaan keluar.

    catatan

    Secara default, AWS Security Agent menambahkan header khusus untuk User-Agentdisetel ke securityagent kecuali nilai User-Agentheader khusus yang berbeda ditentukan.

  3. Untuk menambahkan beberapa header kustom:

    1. Pilih Tambahkan header.

    2. Masukkan setiap header kustom tambahan.

  4. Untuk menghapus header kustom, pilih Hapus di sebelah header.

Konfigurasikan Peran IAM

Pilih peran layanan yang telah dikonfigurasi sebelumnya untuk pengujian penetrasi ini. AWS Security Agent menggunakan model Space-based izin Agen tempat administrator mengonfigurasi peran IAM saat menyiapkan Ruang Agen Anda. Anda memilih dari peran yang sudah dikonfigurasi dan siap digunakan.

  1. Di bagian Izin, cari dropdown peran Layanan.

  2. Pilih peran IAM yang memberikan AWS Security Agent akses ke sumber daya AWS yang diperlukan.

    penting

    Peran IAM yang dipilih harus memiliki izin untuk mengakses sumber daya VPC, CloudWatch Log, dan layanan AWS lainnya yang diperlukan untuk pengujian penetrasi. Verifikasi bahwa peran tersebut memiliki hubungan kepercayaan yang benar dengan AWS Security Agent.

  3. Temukan CloudWatch dropdown grup log.

  4. Pilih grup log tempat log uji penetrasi akan disimpan. (opsional)

    catatan

    Grup CloudWatch log yang dipilih akan menyimpan log terperinci dari eksekusi uji penetrasi, termasuk permintaan yang dibuat, tanggapan yang diterima, dan kerentanan yang ditemukan.

    Jika Anda tidak memilih grup log, grup CloudWatch log baru akan dibuat secara otomatis dengan /aws/securityagent awalan untuk menyimpan log uji penetrasi.

Remediasi kode otomatis

Pilih kotak centang Aktifkan remediasi otomatis.

penting

Untuk memulihkan temuan keamanan di repositori kode sumber Anda, AWS Security Agent dapat mengirimkan permintaan tarik ke repositori Anda. Permintaan tarik mungkin terlihat oleh semua pengguna yang memiliki akses baca ke repositori.

Konfigurasikan sumber daya VPC (opsional)

Jika domain target Anda bersifat pribadi dan di-host dalam VPC, konfigurasikan setelan VPC tempat AWS Security Agent harus menjalankan pengujian penetrasi. Langkah ini hanya diperlukan untuk aplikasi yang tidak dapat diakses publik.

catatan

Lewati langkah ini jika domain target Anda dapat diakses publik. Konfigurasi VPC hanya diperlukan untuk menguji aplikasi pribadi yang dihosting dalam Amazon Virtual Private Cloud.

Pilih VPC, subnet, dan grup keamanan untuk lingkungan pengujian penetrasi.

  1. Di bagian VPC, cari dropdown ID VPC.

  2. Pilih VPC tempat domain target Anda di-host.

    penting

    VPC yang dipilih harus berisi domain target yang Anda tentukan di Langkah 3. Pastikan VPC memiliki perutean dan konfigurasi jaringan yang sesuai untuk memungkinkan AWS Security Agent mengakses aplikasi Anda.

  3. Temukan dropdown Subnet.

  4. Pilih satu atau lebih subnet di mana tes penetrasi harus dijalankan.

    catatan

    Pilih subnet yang memiliki akses jaringan ke aplikasi target Anda. Tes penetrasi akan dijalankan dari sumber daya yang digunakan dalam subnet ini.

  5. Temukan dropdown grup Keamanan.

  6. Pilih grup keamanan yang mengontrol akses jaringan untuk uji penetrasi.

    penting

    Grup keamanan yang dipilih harus mengizinkan lalu lintas keluar ke domain target Anda dan domain apa pun yang dapat diakses. Pastikan aturan kelompok keamanan mengizinkan akses jaringan yang diperlukan untuk pengujian komprehensif.

Konfigurasikan kredensyal otentikasi (opsional)

Jika domain target Anda memerlukan autentikasi, berikan kredensyal untuk memungkinkan AWS Security Agent mengakses area terlindungi aplikasi Anda selama pengujian penetrasi. Langkah ini hanya diperlukan untuk aplikasi yang memerlukan otentikasi pengguna.

catatan

Lewati langkah ini jika domain target Anda tidak memerlukan otentikasi atau jika semua area yang ingin diuji dapat diakses publik. Konfigurasikan kredensyal hanya jika Anda memerlukan AWS Security Agent untuk menguji bagian aplikasi yang diautentikasi.

Tambahkan kredensyal

Berikan kredensyal otentikasi yang akan digunakan AWS Security Agent untuk mengakses aplikasi Anda.

  1. Di bagian Credential #1, pilih metode input kredenal:

    • Input kredensyal - Masukkan kredensyal Anda langsung ke AWS Security Agent.

    • Pengaturan lanjutan - Untuk informasi kredensyal sensitif, gunakan opsi lanjutan seperti AWS Secrets Manager atau fungsi AWS Lambda. Lihat Memberikan kredensi otentikasi untuk pengujian penetrasi untuk detail.

      Tip

      Untuk lingkungan produksi atau kredensyal sensitif, sebaiknya gunakan opsi pengaturan lanjutan untuk mereferensikan kredensyal yang disimpan secara aman di AWS Secrets Manager atau Systems Manager Parameter Store.

Masukkan detail kredensyal

Berikan nama pengguna dan kata sandi untuk akun yang diautentikasi.

  1. Di bidang Nama pengguna, masukkan nama pengguna untuk otentikasi.

  2. Di bidang Kata Sandi, masukkan kata sandi untuk otentikasi.

    penting

    Pastikan kredensyal yang Anda berikan memiliki tingkat akses yang sesuai untuk area yang ingin Anda uji. Kredensyal harus mewakili tingkat akses pengguna biasa daripada hak istimewa administratif.

Pilih domain akses

Tentukan domain target mana yang akan menggunakan kredensil ini untuk otentikasi.

  1. Di dropdown domain Access, pilih domain tempat kredensyal ini akan digunakan.

    catatan

    Jika Anda memiliki beberapa domain target yang memerlukan kredensyal berbeda, Anda dapat menambahkan set kredensyal tambahan dengan mengklik Tambahkan kredensyal lain setelah menyelesaikan konfigurasi kredensi ini.

Konfigurasikan prompt login agen (opsional)

Berikan instruksi untuk memandu AWS Security Agent melalui proses autentikasi aplikasi Anda.

  1. Perluas bagian prompt masuk Agen jika alur otentikasi Anda memerlukan instruksi khusus.

  2. Masukkan instruksi yang menjelaskan cara menggunakan kredensyal yang disediakan dalam alur masuk aplikasi Anda.

    catatan

    Prompt login agen memberi tahu agen cara menerapkan kredensyal Anda ke aplikasi Anda. Ini berguna untuk alur otentikasi yang kompleks, proses login multi-langkah, atau aplikasi dengan prosedur login non-standar. Sertakan petunjuk langkah demi langkah seperti “Arahkan ke/login, masukkan nama pengguna di bidang 'Email', masukkan kata sandi, dan pilih 'Masuk'.”

Tambahkan beberapa kredensyal (opsional)

Jika aplikasi Anda memerlukan beberapa set kredensyal atau domain yang berbeda memerlukan autentikasi terpisah, tambahkan set kredensyal tambahan.

  1. Setelah menyelesaikan konfigurasi kredensi pertama, pilih Tambahkan kredensi lain.

  2. Ulangi langkah konfigurasi kredenal untuk setiap set kredensi tambahan.

  3. Untuk menghapus set kredensyal, pilih Hapus di sebelah header kredensyal.

Tip

Konfigurasikan beberapa kredensyal saat menguji peran pengguna yang berbeda, mengakses beberapa domain yang diautentikasi, atau memverifikasi kontrol akses berbasis peran di aplikasi Anda.

Lampirkan sumber daya tambahan (opsional)

Menyediakan sumber daya tambahan untuk membantu AWS Security Agent melakukan pengujian penetrasi yang lebih menyeluruh dan akurat. Sumber daya tambahan dapat mencakup diagram arsitektur, dokumentasi API, file konfigurasi, GitHub repositori, atau S3-hosted materi yang memberikan konteks tentang aplikasi Anda.

catatan

Sumber daya tambahan bersifat opsional tetapi direkomendasikan. Memberikan informasi komprehensif tentang aplikasi Anda membantu memastikan cakupan pengujian menyeluruh, mengurangi kesalahan positif, dan memberikan hasil yang lebih dapat ditindaklanjuti.

Tambahkan sumber daya ke tes penetrasi

Pilih sumber daya yang ada atau unggah file baru yang akan membantu memandu tes penetrasi.

  1. Di bagian Sumber daya yang terhubung, Anda dapat:

    • Pilih Pilih dari yang tersedia untuk memilih sumber daya yang sudah terhubung ke AWS Security Agent (seperti GitHub repositori atau bucket S3).

    • Pilih Unggah untuk menambahkan file baru langsung dari sistem lokal Anda.

Tip

Sumber daya yang berguna termasuk dokumentasi API, diagram arsitektur, OpenAPI/Swagger spesifikasi, file konfigurasi, diagram alur otentikasi, dan materi lain yang menggambarkan struktur dan perilaku aplikasi Anda.

Pilih dari sumber daya yang tersedia

Pilih dari sumber daya yang sudah terintegrasi dengan AWS Security Agent.

  1. Pilih Pilih dari sumber daya yang ada.

  2. Jelajahi daftar sumber daya yang tersedia dari sumber yang terhubung seperti:

    • GitHub repositori, di bawah tab repositori GitHub

    • Bucket S3

    • File yang diunggah sebelumnya

    • Repositori dokumentasi

  3. Pilih sumber daya yang ingin Anda sertakan dalam tes penetrasi.

  4. Pilih Tambahkan ke uji penetrasi untuk melampirkan sumber daya yang dipilih.

contoh

Sebaiknya pilih dan tambahkan GitHub repositori yang relevan ke pentest Anda, sehingga AWS Security Agent dapat mengembangkan pemahaman tentang konteks aplikasi Anda, dan menghasilkan perbaikan kode yang siap diterapkan melalui permintaan tarik (saat diaktifkan)

catatan

Sumber daya yang dipilih dari sumber yang tersedia tetap disinkronkan dengan lokasi aslinya. Jika Anda memperbarui file GitHub repositori atau S3, tes penetrasi akan menggunakan versi yang diperbarui.

catatan

Jika Anda memiliki VPC pribadi yang terkait dengan pentest dan GitHub repositori yang dikonfigurasi, pastikan itu GitHub dapat diakses melalui VPC pribadi Anda untuk menarik sumber daya. GitHub Dalam kebanyakan kasus, Anda harus memastikan bahwa lalu lintas keluar melalui VPC NAT Gateway diizinkan secara default atau mengonfigurasi aturan khusus untuk mengizinkan lalu lintas keluar GitHub untuk IP (lihat Meta API Endpoint) GitHub

Unggah sumber daya baru

Unggah file langsung dari sistem lokal Anda atau berikan konten teks biasa ke AWS Security Agent.

  1. Pilih Unggah.

  2. Pilih salah satu metode input berikut:

    • Unggah file lokal - Pilih satu atau beberapa file dari sistem lokal Anda.

    • Tempel teks biasa - Ketik atau tempel konten teks langsung ke bidang input. Pilih Unggah.

  3. Kemudian pilih Tambahkan untuk menyelesaikan pengunggahan.

  4. Sumber daya yang diunggah muncul di tabel Sumber daya yang terhubung.

Tip

Gunakan opsi teks biasa saat Anda ingin memberikan daftar titik akhir API, pola URL, instruksi pengujian, atau informasi berbasis teks lainnya dengan cepat tanpa membuat file terpisah.

penting

Pastikan file yang diunggah dan konten yang ditempel tidak mengandung informasi sensitif seperti kredensyal produksi, kunci pribadi, atau informasi identitas pribadi (PII). Gunakan versi file konfigurasi dan dokumentasi yang disanitasi.

Connect sumber daya yang ada

Sumber daya yang ada dapat berasal dari apa yang sebelumnya Anda unggah ke AWS Security Agent, dari bucket S3, dan repositori terintegrasi GitHub Anda. Pilih Pilih dari sumber daya yang ada untuk memilihnya.

Kelola sumber daya yang terhubung

Tinjau, atur, dan hapus sumber daya yang melekat pada uji penetrasi.

Tabel sumber daya Terhubung menampilkan semua sumber daya yang termasuk dalam uji penetrasi dengan informasi berikut:

  • Nama - Nama file atau pengenal sumber daya

  • Jenis - Kategori sumber daya (File yang diunggah, sumber daya S3, GitHub repositori, dll.)

Untuk mengelola sumber daya:

  1. Pilih satu atau beberapa sumber daya menggunakan kotak centang.

  2. Pilih Hapus dari uji penetrasi untuk melepaskan sumber daya yang dipilih.

catatan

Anda dapat mengurutkan tabel berdasarkan Nama atau Jenis dengan mengklik header kolom. Ini membantu mengatur sumber daya saat bekerja dengan banyak file.

Buat tes penetrasi

Selesaikan dan luncurkan konfigurasi pengujian penetrasi Anda.

Setelah mengonfigurasi semua pengaturan, Anda siap untuk membuat tes penetrasi.

  1. Tinjau semua bagian konfigurasi untuk memastikan akurasi.

  2. Pilih salah satu opsi berikut:

    • Pilih Buat penetrasi untuk menyimpan konfigurasi tanpa segera menjalankannya.

    • Pilih Buat dan jalankan untuk menyimpan konfigurasi dan segera memulai tes penetrasi.

    • Pilih Batal untuk membuang konfigurasi uji penetrasi.

penting

Sebelum menjalankan tes penetrasi, verifikasi bahwa:

  • Semua domain target diverifikasi dan dapat diakses dengan benar

  • Peran IAM memiliki izin yang sesuai

  • Out-of-scope jalur dikonfigurasi dengan benar untuk mencegah pengujian operasi destruktif

  • Anda memiliki otorisasi untuk melakukan pengujian keamanan pada semua domain target

catatan

Setelah tes penetrasi dimulai, Anda dapat memantau kemajuannya dari bagian Penetration test run. Tes bisa memakan waktu beberapa jam untuk menyelesaikannya. Paling lengkap dalam waktu 16 jam, tergantung pada ruang lingkup dan kompleksitas aplikasi Anda.