Prosedur Pemindaian Dinamis

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 Jenis Aplikasi

Pemindaian lengkap pada 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 produksi-1 atau staging. 

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

  1. Buat file konteks untuk dijalankan oleh pemindaian Anda. Lihat petunjuk “Autentikasi” di bawah untuk mengetahui 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 ini:

  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. 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.

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

    • Autentikasi Manual

    • Autentikasi Berbasis Formulir

    • Autentikasi HTTP/NTLM

    • Autentikasi Berbasis Skrip

    • Autentikasi Berbasis JSON

Autentikasi zap
  1. 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.
Mengonfigurasi Autentikasi Zap
  1. Tambahkan pengguna dan sandi yang valid. Buat beberapa pengguna jika aplikasi mengekspos fungsi yang berbeda berdasarkan peran.
Mengonfigurasi Pengguna Zap

Setelah mengonfigurasi setelan ini, Anda dapat mengekspor konteks sebagai file untuk referensi pemindaian Anda.

Konteks Ekspor Zap

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:

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