Jenkins ile Netsparker Entegrasyonu
Continuous Integration mimarisi günümüzdeki yazılım projelerinde olmazsa olmaz haline geldi. Deployment sürecinin otomatize olarak yapılmasının artılarından dolayı güvenlik testlerinin de bu mimari dahilinde otomatize edilmesi gereksinimi ortaya çıktı. Jenkins popüler Continuous Integration araçlarından biridir. Bu yazımızda Jenkins ile Netsparker tarafından yapılacak testlerin nasıl otomatize edilip Continuous Integration sürecine dahil edilebileceğini anlattık.
Jenkins Nedir?
Continuous Integration mimarisi günümüzdeki yazılım projelerinde olmazsa olmaz haline geldi. Deployment sürecinin otomatize olarak yapılmasının artılarından dolayı güvenlik testlerinin de bu mimari dahilinde otomatize edilmesi gereksinimi ortaya çıktı. Jenkins de popüler Continuous Integration araçlarından biridir.
Jenkins ile Netsparker Entegrasyonu Nasıl Yapılır?
Öncelikle Jenkins kurulumunu yaptıktan sonra Jenkins web arayüzünü açıyoruz. Jenkins’in web arayüzüne http://127.0.0.1:8080/ şeklinde ulaşabilirsiniz.
Jenkins web arayüzünü açtıktan sonra aşağıdaki gibi bir sayfa ile karşılaşacaksınız. Bu pencereye ulaştıktan sonra aşağıdaki adımları sırası ile yapıyoruz.
- “Enter an item name” alanına projemizin ismini yazıyoruz,
- Tip olarak “Freestyle project” i seçiyoruz,
- “OK” butonuna basarak sonraki adıma geçiyoruz.
- “Build” sekmesine gidiyoruz,
- “Add build step” butonuna tıklayıp, açılan seçeneklerden “Execute Windows batch command” seçeneğini seçiyoruz.
- “Command” alanına aşağıdaki komutu giriyoruz,
Command
cd C:\Program Files (x86)\Netsparker netsparker.exe /a /url http://php.testsparker.com/ /rt "Detailed Scan Report" /r "C:\Program Files (x86)\Jenkins\workspace\netsparker-scan\report_phptestsparkercom.html"
- “Save” butonuna basarak görevimizi kaydediyoruz.
Komut satırında “rt” parametresine vermiş olduğumuz “Detailed Scan Report” değerini; C:\Users\{kullanici_adiniz}\Documents\Netsparker\Resources\Report Templates içerisindeki şablon isimlerinden almaktadır.
Örneğin “Detailed Scan Report” yerine aşağıdaki görselde bulunan herhangi bir raporlama şablonunun ismi yazılırsa, tarama sonucunda yazılan şablona uygun olarak rapor üretilecektir.
(Burada kullanılan parametreler hakkında ayrıntılı bilgiye https://www.netsparker.com.tr/blog/web-guvenligi/netsparker-desktop-komut-satiri-arabirimi-ve-argumanlari/ adresinden ulaşılabilir)
Oluşturulan görev çalıştırıldıktan sonraki örnek bir Console Output sayfası ve Workspace içeriği aşağıdaki gibidir.