View a markdown version of this page

Memberikan kredensi otentikasi untuk pengujian penetrasi - Agen Keamanan AWS

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

Memberikan kredensi otentikasi untuk pengujian penetrasi

Berikan kredensil untuk mengaktifkan AWS Security Agent menguji area terautentikasi aplikasi web Anda. Tanpa kredensi, agen hanya dapat menguji halaman dan API yang dapat diakses publik.

Konfigurasikan kredensional otentikasi

  1. Dalam alur kerja pembuatan pengujian penetrasi, cari bagian Kredensi otentikasi - Opsional.

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

    • Input kredensial - Masukkan kredensil secara langsung. Terbaik untuk lingkungan pengembangan dan pengujian.

    • Pengaturan lanjutan - Gunakan manajemen AWS-native kredensi. Direkomendasikan untuk lingkungan produksi dan kredensil sensitif.

Opsi lanjutan

Jika Anda memilih Pengaturan lanjutan, Anda dapat memilih dari tiga strategi kredensi:

  • Asumsi peran IAM - Untuk aplikasi yang menggunakan AWS Cognito atau autentikasi IAM

  • AWS Secrets Manager - Untuk penyimpanan kredensi yang aman dengan enkripsi dan rotasi

  • Fungsi Lambda - Untuk pembuatan kredensi dinamis atau alur otentikasi kompleks

Masukan kredensil secara langsung

  1. Pilih Input credentials.

  2. Masukkan nama pengguna dan kata sandi.

  3. Di menu tarik-turun URL Akses, pilih URL tempat kredensil ini akan digunakan. Ini harus dipilih dari daftar titik akhir target.

  4. (Opsional) Di bidang opsional 2FA, berikan rahasia TOTP untuk aplikasi yang memerlukan otentikasi dua faktor. Anda dapat:

    • Masukkan rahasia TOTP secara langsung (misalnya,JBSWY3DPEHPK3PXP), atau masukkan otpauth://totp/ URI lengkap (misalnya,otpauth://totp/Example:user@example.com?secret=JBSWY3DPEHPK3PXP&issuer=Example).

    • Pilih ikon unggah untuk mengunggah gambar kode QR dari halaman penyiapan aplikasi autentikator Anda. Kode QR dipindai secara lokal dan TOTP URI diekstraksi secara otomatis.

      Ketika rahasia TOTP disediakan, agen secara otomatis menghasilkan kode satu kali baru dan memasukkannya ketika prompt 2FA terdeteksi selama login.

  5. (Opsional) Perluas prompt login Ruang Agen untuk memberikan instruksi login tertentu jika aplikasi Anda memiliki alur otentikasi yang kompleks.

penting

Gunakan akun uji dengan akses representatif daripada akun pribadi atau administratif.

Gunakan pengaturan lanjutan

Saat Anda memilih strategi kredensi lanjutan (Secrets Manager, Lambda, atau peran IAM), AWS Security Agent mengambil kredensi Anda langsung dari sumber daya AWS yang dikonfigurasi menggunakan peran layanan. Gunakan prompt login Ruang Agen untuk memberikan petunjuk kepada agen tentang cara menerapkan kredensil tersebut ke aplikasi Anda - misalnya, URL login mana yang akan dinavigasi dan kolom formulir mana yang harus diisi.

catatan

Rahasia Secrets Manager dan fungsi Lambda harus berada di akun AWS yang sama dengan penyiapan AWS Security Agent Anda. Cross-account kredensil saat ini tidak didukung.

  1. Pilih Pengaturan lanjutan.

  2. Di menu tarik-turun strategi akses pengguna, pilih salah satu dari berikut ini:

Pilih peran IAM yang tersedia untuk diasumsikan oleh agen

Gunakan opsi ini untuk aplikasi yang menggunakan AWS Cognito, API Gateway dengan autentikasi IAM, atau sistem otentikasi lainnya. AWS-native Peran IAM harus memiliki hubungan kepercayaan yang memungkinkan AWS Security Agent untuk mengambilnya dan izin untuk mengakses sistem otentikasi aplikasi Anda.

Pilih kredensi statis dari AWS Secrets Manager yang terhubung

Gunakan opsi ini untuk mengambil kredensil dengan aman dari AWS Secrets Manager dengan enkripsi, rotasi, dan audit akses.

Peran IAM harus memiliki secretsmanager:GetSecretValue dan secretsmanager:DescribeSecret izin.

Agen mengambil nilai rahasia langsung dari Secrets Manager. Gunakan prompt login Ruang Agen untuk memberi tahu agen cara menerapkan kredensil tersebut ke alur masuk aplikasi Anda - misalnya, URL mana yang akan dinavigasi dan kolom formulir mana yang harus diisi. Anda dapat menggunakan format apa pun untuk menyimpan rahasia Anda, karena agen akan menafsirkan format menggunakan instruksi yang Anda berikan dalam prompt login.

Misalnya, jika agen mengirimkan formulir username/password login dihttps://example.com/login, Anda dapat memformat rahasia Anda sebagai JSON dengan username dan password bidang. Jika aplikasi membutuhkan TOTP-based 2FA, sertakan totpSecret bidang dengan rahasia TOTP secara langsung atau URI lengkap: otpauth://totp/

{ "username": "test-user", "password": "secure-password-here", "totpSecret": "JBSWY3DPEHPK3PXP" }

Kemudian, konfigurasikan instruksi otentikasi:. Setel URL Access ke https://example.com (atau URL lain yang dipilih dari daftar titik akhir target). Masukkan yang berikut ini ke dalam prompt login Agent Space: “Arahkan ke https://example.com/login dan masukkan nama pengguna dan kata sandi yang disediakan ke dalam formulir.”

Sebagai contoh lain, jika Anda memiliki kunci API yang akan disediakan di header HTTP, Anda dapat menyimpannya sebagai plaintext:

"api-key-here"

Kemudian, konfigurasikan instruksi otentikasi:. Masukkan yang berikut ini ke prompt login Agent Space: “Setel X-API-Key header ke kunci API yang disediakan untuk semua permintaan.”

penting

Hanya TOTP-based 2FA yang didukung. SMS, email, pemberitahuan push, kunci perangkat keras, dan otentikasi OAuth tidak didukung.

Pilih fungsi Lambda yang tersedia untuk mengambil kredensil secara dinamis

Gunakan opsi ini untuk sistem otentikasi yang kompleks, pembuatan kredensi dinamis, atau integrasi dengan penyedia identitas eksternal.

Peran IAM harus memiliki lambda:InvokeFunction izin dan fungsi harus selesai dalam 30 detik.

Saat pengujian penetrasi berjalan, AWS Security Agent memanggil fungsi AWS Lambda Anda secara serempak dan meneruskan peristiwa yang mengidentifikasi pengujian penetrasi dan kredensi spesifik yang sedang diselesaikan:

{ "pentest_arn": "arn:aws:securityagent:us-west-2:111122223333:pentest/pt-abcd1234-5678-90ab-cdef-EXAMPLE11111", "actor_identifier": "Credential1" }
  • pentest_arn— Nama Sumber Daya Amazon (ARN) dari tes penetrasi yang kredensialnya sedang diselesaikan. Gunakan untuk cakupan, otorisasi, atau audit permintaan dalam fungsi Anda.

  • actor_identifierNama kredenal yang Anda tetapkan untuk kredensi ini di konsol (misalnya,Credential1). Gunakan untuk mengembalikan kredensi yang benar ketika satu fungsi menyajikan beberapa kredensil.

Agen menggunakan output fungsi secara langsung sebagai kredensi. Gunakan prompt login Agent Space untuk memberi tahu agen cara menerapkan kredensil tersebut ke aplikasi Anda, seperti yang Anda lakukan dengan AWS Secrets Manager. Lihat Pilih kredensi statis dari AWS Secrets Manager yang terhubung contoh cara memformat output fungsi Lambda Anda dan jenis otentikasi yang didukung.

Konfigurasikan beberapa kredensil

Untuk menguji peran pengguna atau sistem otentikasi yang berbeda:

  1. Pilih Tambahkan kredensi lain.

  2. Konfigurasikan kredensi tambahan menggunakan salah satu metode input.

  3. Untuk menghapus kredensi, pilih Hapus di bagian kredensi.

Optimasi Login

Optimasi Login memungkinkan AWS Security Agent untuk mempelajari pola navigasi dari proses pentest sebelumnya dan menerapkannya ke proses berikutnya. Pola-pola ini mencakup alur login dan alur kerja otentikasi multi-langkah. Ini mengurangi waktu yang dihabiskan agen untuk menemukan kembali cara mengotentikasi, menghasilkan pemindaian yang lebih cepat dan cakupan pengujian yang lebih konsisten.

Cara kerja Optimasi Login

Pada pentest run pertama, agen menemukan cara menavigasi alur login aplikasi Anda menggunakan kredensi yang Anda berikan. Ini mencatat langkah-langkah navigasi yang berhasil dan menghasilkan file keterampilan yang menangkap alur kerja login yang dipelajari.

Pada proses berikutnya, agen membaca file keterampilan yang disimpan dan menerapkan pola navigasi yang dipelajari secara langsung, melewatkan fase penemuan. Ini berarti:

  • Waktu yang lebih cepat untuk pengujian yang diautentikasi - agen segera menerapkan pola navigasi yang terbukti alih-alih menjelajahi dari awal

  • Perilaku yang lebih konsisten — agen mengikuti jalur terbukti yang sama daripada mengeksplorasi alternatif

catatan

Optimasi Login belajar selama sesi login pertama dalam proses. Sesi login berikutnya dalam proses yang sama akan mendapat manfaat dari apa yang dipelajari di sesi pertama. Pada masa depan berjalan, semua sesi login mendapat manfaat dari keterampilan yang disimpan.

Aktifkan atau nonaktifkan Optimasi Login

Optimasi Login diaktifkan secara default. Untuk menonaktifkan atau mengaktifkannya kembali:

  1. Dalam konfigurasi pentest, arahkan ke bagian kredensi otentikasi - opsional.

  2. Temukan sakelar Optimasi Login.

  3. Untuk mengaktifkan Optimasi Login, nyalakan sakelar. Untuk menonaktifkan, matikan.

Ketika dinonaktifkan, agen menemukan kembali alur login dari awal pada setiap proses. Keterampilan navigasi yang dipelajari sebelumnya dipertahankan dan akan diterapkan lagi jika fitur diaktifkan kembali.

Tip

Jika alur masuk aplikasi Anda berubah secara signifikan (misalnya halaman login yang didesain ulang atau langkah otentikasi baru), agen secara otomatis beradaptasi dengan memperbarui keterampilan yang dipelajari pada proses berikutnya. Anda tidak perlu mengatur ulang optimasi secara manual.