ZAP
Alat Pemindaian | Web |
Mobile |
Local |
API |
Extension |
Serverless |
Petunjuk |
---|---|---|---|---|---|---|---|
OWASP® Zed Attack Proxy (ZAP) |
Gunakan OWASP ZAP ; container Docker ZAP untuk melakukan pemindaian dinamis otomatis (DAST) terhadap aplikasi Anda. File konfigurasi bawaan sudah menyertakan semua CWE yang diperlukan. Yang perlu Anda lakukan adalah menambahkannya ke lingkungan dan perintah run Docker. |
Untuk mengetahui definisi setiap jenis
Klik di sini
Pemindaian lengkap pada Aplikasi Web, Seluler, atau Internal dapat dilakukan dengan mengikuti langkah-langkah di bawah:
-
Pemindaian DAST dan API akan dijalankan menggunakan image Docker ZAP. Untuk aplikasi web, seluler, atau internal, pemindaian ZAP lengkap harus dijalankan di lingkungan produksi-1 atau staging.
-
Download file konfigurasi zap-casa-config.conf dan buka direktorinya.
-
Buat file konteks untuk dijalankan oleh pemindaian Anda. Lihat petunjuk “Autentikasi” di bawah untuk mengetahui detail selengkapnya.
-
Jalankan perintah berikut:
docker run -p 8080:8080 -v $(pwd):/zap/wrk/:rw -t owasp/zap2docker-stable zap-full-scan.py -t https://example.com -P 8080 -c zap-casa-config.conf -x results-full.xml -n example.context -U username
-
Output akan disimpan dalam file XML (contoh terlampir di sini: zap-results-full.xml)
Pemindaian API dapat dilakukan dengan mengikuti langkah-langkah di bawah ini:
-
Untuk pemindaian API, gunakan file konfigurasi zap-casa-api-config.conf.
-
Buka direktorinya dan jalankan perintah berikut
docker run -p 8080:8080 -v $(pwd):/zap/wrk/:rw -t owasp/zap2docker-stable zap-api-scan.py -t https://example.com -f openapi-P 8080 -c zap-casa-api-config.conf -x results-full.xml
-
Output akan disimpan dalam file XML (contoh terlampir di sini: zap-results-api.xml )
Autentikasi
Pemindaian ZAP harus dilakukan dengan autentikasi untuk memahami tempat data pengguna disimpan dan diakses. Tindakan ini memerlukan konfigurasi sebelum menjalankan pemindaian. Image Docker ZAP memungkinkan dua argumen yang terkait dengan autentikasi:
-n context_file |
File konteks yang akan dimuat sebelum memindai target |
Pengguna -U |
Nama pengguna yang akan digunakan untuk pemindaian yang diautentikasi. Pengguna harus ditentukan dalam file konteks yang diberikan. |
Untuk menetapkan parameter ini, file konteks harus dibuat. Hal ini paling mudah dilakukan melalui UI Desktop ZAP.
-
Menetapkan mekanisme autentikasi. ZAP saat ini mendukung lima pendekatan otentikasi:
-
Autentikasi Manual
-
Autentikasi Berbasis Formulir
-
Autentikasi HTTP/NTLM
-
Autentikasi Berbasis Skrip
-
Autentikasi Berbasis JSON
-
- Tentukan parameter autentikasi Anda. Hal ini biasanya mencakup URL login dan format payload (nama pengguna dan sandi). Parameter yang diperlukan khusus untuk metode autentikasi yang digunakan.
- Tambahkan pengguna dan sandi yang valid. Buat beberapa pengguna jika aplikasi mengekspos fungsi yang berbeda berdasarkan peran.
Setelah mengonfigurasi setelan ini, Anda dapat mengekspor konteks sebagai file untuk referensi pemindaian Anda.
Pastikan untuk menyimpan konteks di tempat yang mudah dirujuk, karena Anda harus menyertakan jalur file sebagai argumen untuk perintah pemindaian. Sekarang, Anda dapat menjalankan pemindaian terautentikasi dengan login pengguna yang ditentukan dalam konteks. Contoh:
docker run -p 8080:8080 -v $(pwd):/zap/wrk/:rw -t owasp/zap2docker-stable zap-full-scan.py -t https://example.com -P 8080 -c zap-casa-config.conf -x results-full.xml -n /Users/DemoUser/Documents/Context.context -U test@example.com