Using Owasp ZAP in Jenkins Pipeline
DevSecOps series #5 | Dynamic Application Security Testing
Setelah membahas mengenai SonarQube sebagai SAST / Static Application Security Testing, kami akan melanjutkan pembahasan mengenai DAST / Dynamic Application Testing. Pada artikel ini kami akan menggunakan OWASP ZAP sebagai komponen DAST dalam jenkins pipeline.
Jika SAST melakukan Security Testing pada source code, DAST melakukan security testing pada aplikasi yang sedang berjalan
Sesuai dengan peryataan tersebut sehingga OWASP ZAP digunakan untuk melakukan testing setelah aplikasi terdeploy.
OWASP ZAP
OWASP ZAP (Zed Attack Proxy) meruapakan salah satu project dibawah naungan OWASP. OWASP ZAP merupakan opensource software web application testing. Cara kerja OWASP ZAP yaitu testing tools yang bertindak sebagai server proxy yang akan memantau memanage dan memanipulasi lalu lintas data yang ada.
Seperti yang dikutip dari dokumentasi resmi nya OWASP ZAP dirancang bagi mereka yang ingin melakukan security testing terhadap web aplikasi mereka namun tidak memiliki background security testing.
Instalasi OWASP ZAP dilakukan pada node jenkins yang sudah dipersiapkan sebelumnya.
Prasayarat
- Environment Jenkins Master Slave
- Koneksi Internet
- Java environment
Topologi
Langkah Instalasi
Action On Jekins Slave
1. SSH Ke Jenkins Slave
ssh agent
su - jenkins
2. Download dan Extrak package OWASP ZAP
wget https://github.com/zaproxy/zaproxy/releases/download/v2.11.1/ZAP_2.11.1_Linux.tar.gztar -xvf ZAP_2.11.1_Linux.tar.gz
Action On Jenkins Master
1. Configure Agent
2. Configure Default ZAP
Create Pipeline
1. New Item > Pipeline
2. Create Jenkinsfile to use ZAP comandline tools, pastikan isi dengan url dari aplikasi yang akan di uji
3. Run
4. Lihat hasil report pada artifact
Berikut adalah langkah langkah yang dapat diterapkan, terdapat berbagai macam metode lain dalam menggunakan OWASP ZAP salah satunya dengan menggunakan plugin Official OWASP ZAP, namun langkah tersebut sudah di support dan tidak disarankan untuk digunakan.
Referensi
Our Tagline
# Together is Better & Continuous Learning
Based on Documentation:
Razzaaq Arditian, Staff of Research