Jenkins ile Netsparker Entegrasyonu

Omer Citak - 06 Şubat 2017 -

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 ile Netsparker Entegrasyonu

Jenkins ile Netsparker Entegrasyonu

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.

Jenkins ile Netsparker Entegrasyonu -1

  1. Enter an item name” alanına projemizin ismini yazıyoruz,
  2. Tip olarak “Freestyle project” i seçiyoruz,
  3. OK” butonuna basarak sonraki adıma geçiyoruz.

Jenkins ile Netsparker Entegrasyonu -2

  1. Build” sekmesine gidiyoruz,
  2. Add build step” butonuna tıklayıp, açılan seçeneklerden “Execute Windows batch command” seçeneğini seçiyoruz.

Jenkins ile Netsparker Entegrasyonu -3

  1. 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"
  2. 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.

    Jenkins ile Netsparker Entegrasyonu -4

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

    Jenkins ile Netsparker Entegrasyonu -5 Jenkins ile Netsparker Entegrasyonu -6