Prosedur Pemindaian Dinamis

ZAP

Alat Pemindaian Web Mobile Local API Extension Serverless Petunjuk
OWASP® Zed Attack Proxy (ZAP)

Gunakan OWASP ZAP ; container ZAP Docker untuk melakukan pemindaian dinamis otomatis (DAST) terhadap aplikasi Anda. File konfigurasi standar telah menyertakan semua CWE yang diperlukan. Yang perlu Anda lakukan adalah menambahkannya ke lingkungan Anda dan menjalankan perintah Docker.

Untuk definisi setiap jenis Klik di sini Jenis Aplikasi

Pemindaian lengkap di Aplikasi Web, Seluler, atau Internal dapat dilakukan dengan mengikuti langkah-langkah di bawah:

  1. Pemindaian DAST dan API akan dijalankan menggunakan image Docker ZAP. Untuk aplikasi web, seluler, atau internal, pemindaian ZAP lengkap harus dijalankan di lingkungan prod-1 atau staging. 

  2. Download file konfigurasi zap-casa-config.conf dan buka direktorinya. 

  1. Buat file konteks untuk dipindai oleh pemindaian Anda. Lihat petunjuk “Autentikasi” di bawah untuk detail selengkapnya.

  1. 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
  1. Output akan disimpan dalam file XML (contoh terlampir di sini: zap-results-full.xml)

Pemindaian API dapat dilakukan dengan mengikuti langkah-langkah di bawah:

  1. Untuk pemindaian API, gunakan file konfigurasi zap-casa-api-config.conf

  1. 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
  1. 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 Anda. Image ZAP Docker memungkinkan dua argumen yang terkait dengan autentikasi:

-n konteks_file

File konteks yang akan dimuat sebelum memindai target

-U pengguna

Nama pengguna yang akan digunakan untuk pemindaian terautentikasi. Pengguna harus ditentukan di file konteks yang ditentukan. 

Untuk menetapkan parameter ini, file konteks harus dibuat. Hal ini paling mudah dilakukan melalui UI Desktop ZAP.

konteks zap
  1. Tetapkan mekanisme autentikasi. ZAP saat ini mendukung lima pendekatan autentikasi:

    • Autentikasi Manual

    • Autentikasi Berbasis Formulir

    • Autentikasi HTTP/NTLM

    • Autentikasi Berbasis Skrip

    • Autentikasi Berbasis JSON

zap Authentication
  1. Tentukan parameter autentikasi. Biasanya ini mencakup URL login dan format payload (nama pengguna dan sandi). Parameter yang diperlukan sesuai dengan metode autentikasi yang digunakan.
zap Konfigurasikan Autentikasi
  1. Tambahkan pengguna dan sandi yang valid. Buat beberapa pengguna jika aplikasi mengekspos fungsi yang berbeda berdasarkan peran.
zap Mengonfigurasi Pengguna

Setelah mengonfigurasi setelan ini, Anda dapat mengekspor konteks sebagai file agar referensi Anda dapat dipindai.

zap Konteks Ekspor

Pastikan untuk menyimpan konteks di tempat yang mudah dirujuk, karena Anda perlu menyertakan jalur file sebagai argumen untuk perintah pemindaian. Sekarang, Anda akan dapat menjalankan pemindaian terautentikasi dengan login pengguna yang ditentukan dalam konteks. Contoh:

zap Buat Pengguna
  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