SERPICO’YU KULLANARAK PENTEST RAPORLAMADA ÖRNEK BIR OLAY INCELEMESISerpico’yu bir arkadasim sayesinde ögrendim (kendisi ayni zamanada bir proje gelistiricisi olan Pete Arzamendi (@thebokojan)). Serpico’yu gelistirenler benimle ayni sikintilari yasamis olan pentesterlardan olusuyor. Will Vandevanter (@_will_is) Serpico’yu gelistirmek için Office XML’deki inanilmaz bilgisini ortaya koydu. Kendisi ayni zamanda Ruby ve Sinatra’ya kafayi takma sebebim olur.
Dradis veya MagicTree’yi duymamis olabilecegimi düsünüyor olabilirsiniz. Evet onlari duydum ve acilarimi dindirmesi için çikan her yeni sürümünü indirdim, ama umutlarim hep kisa sürdü.
Bizim çözümümüz, Word’de degisken olarak özel belge özelliklerine sahip bir rapor sablonuydu. Tüm araç-gereci içeren baska bir Word belgesine sahiptik. Maalesef mevcut raporlama çözümleri harcadigimiz zamanimizi artirdi; çünkü ya sürekli yogun bir sekilde degisiklik yapmaliydik ya da yazilimla ugrasarak üretim hatalarini rapor etmeliydik.
RAPOR OTOMASYONU ILE ILGILI MEVCUT ZORLUKLARAsiri derecede karmasik uygulamalar - Karmasik bir çözümü yönetmek için saatlerce harcamak istemiyorum. Otomasyon aracini yönetmek yerine kaliteli bir rapor hazirlamaya daha fazla zaman harcanmalidir.
Özellestirmek için zaman harcamak - Ekibimizin isleri yapmanin birkaç essiz yolu vardir ve bunun için özellestirme kolay olmalidir.
Güvenilirlik - Çözümler (kullanilan yazilimlar) çogunlukla ise yaramadi, çalistiysa bile uzun sürmedi veya kullanicilardan biri onu kolayca bozdu.
Tasinabilirlik - merkezilestirilmis olan raporlama çözümünüzün ihtiyaç halinde yerel olarak da çalistirilabilmesi iyi olmaz miydi?
Ekip isbirligi - Birden fazla pentester, birbirinin isine karismadan rapora katkida bulunabilmelidir.
Raporlar, olusturulduktan sonra sürekli degisiklik yapmaya ihtiyaç duyar - Mümkünse makrolarla çalismak istemem veya döküman özelliklerini degistirmem. Bunlarin tümü raporlama araci tarafindan halledilmelidir.
Tasarimda sadelik - Diger araçlar verilerimi yönetmeye, çok fazla otomasyon yapmaya çalisiyor; veya tam olarak çalisan özellikleri yok (hatasiz bir Word belgesi olusturma gibi).
Sablon haldeki araçlari yönetme - Araçlari ayarlarken, yeni kaynak eklerken veya etkilesime geçerken yeni bir araç eklemek isteyebilirsiniz. Bu degisiklikleri tekrar ana sablonlara eklemek hizli ve kolay olmalidir.
SERPICO’NUN ÖZELLIKLERI VE BU ÖZELLIKLERDEN YARARLANMAKSerpico’yu yüklemek hizli ve kolay. Yükleme islemini bitirdikten sonra 30 dakika içinde özellestirilmis bir rapora eristim. Güncelleme: Yakin zamanda yüklemenin hizli olmasini saglayan bir omnibus paketli yükleyici gelistirildi! Bir test raporuna bir bulgu ekledim ve hatalardan arinmis bir word belgesi çikti, tam anlamiyla istedigim gibiydi, acayip biçimlendirme hatalarindan uzakti. Will, bu görevi düsündügünüzden daha zor hale getiren tüm Microsoft nüanslarini iyi bir sekilde anlayan Office XML ile ilgili biraz arastirma yapti.
Pentester olarak kullanisli buldugum özelliklerin kisa bir listesi:Sablon bulgulari - Sablon bulgulari olusturursunuz ve bunlari herhangi bir raporda yeniden kullanabilirsiniz. Bulguyu bir rapora eklediginizde, bulguyu müsteriye uyarlamak için özellestirmek kolaydir. Bulguda yaptiginiz degisiklikleri begendiyseniz, bir dügmeye basarak tekrar sablon veritabanina yükleme seçenegine sahipsiniz. Bu, tekrarlanan yazimi büyük ölçüde azaltir.
Özel meta dili, raporlarin programli olarak olusturulmasina imkan verir - döngüler ve if bildirimleri desteklenir. Bu, tablolarin verilerin ve düzenlerin önem derecesine, kategoriye vb. göre olusturulmasinda yardimci olur.
Degiskenler -Serpico, kullanici tanimli degiskenler olusturmaya imkanina da sahiptir; bu sayede sinirlandirilmazsiniz. Bunlar Serpico’dan yönetiliyor.
Ruby’de Sinatra ve Haml kullanarak yazildi - Programi kullanmayi kolay ve özellestirmenin hizli olmasini sagliyor. Örnek: Yeni olusturulan bulgulara çift onayli bir yaklasim istedik. "Incelendi" olarak adlandirilan ek bir bölüm ekledik. Bir bulgu, teknik açidan baska bir pütünde uzman tarafindan gözden geçirildiginde gözden geçirilmis olarak isaretlenecektir. Dilbilgisi için teknik yazarimiz tarafindan incelendiginde "onaylandi" olarak isaretlenmis olacak ve bulgu sablonu herkesin kullanabilecegi bir ortam olacaktir.
Ekran görüntüleri - Resminizi yükleyin, bulgunuzu eklemek için için meta dili kullanin, hepsi bu kadar!
Otomatik güvenlik açigi haritasi - Güvenlik açigi tarayici ile tespit edilebilen bir açik varsa, Serpico popüler tarama araçlarindan güvenlik açigiyla iliskili özel yazili bulgunuzu otomatik olarak ekler. Bunu CVE, Nessus ID, Burp ID vb. ile yapar.
Metasploit Entegrasyonu - Ana makineleri ve güvenlik açiklarini Metasploit’in destekledigi herhangi bir formatta görüntüleyebilirsiniz. Bu özellik yeni ve gelisiyor.
Kolay isbirligi - Her bulgu için bir onay seçenegi var, kullanicilari ve kullanicilarin raporlara erisimlerini yönetebilir, bulgularin tarihsel düzenlemelerini (wikipedi gibi) görüntüleyebilir ve farkli proje türleri için birden çok rapor sablonu destegi alabilirsiniz.
API ve komut dosyasi - Serpico çok güçlü olabilir. VulnDB’den güvenlik açiklarini komut dosyasi araciligiyla nasil içe aktarabileceginize dair örnekler var.
MERKEZILESTIRILMIS VS DAGITILMISSerpico her ikisini de destekliyor. Su anda mekezilestirilmis bir model kullaniyoruz. Tüm kullanicilar, raporlama yapmak için Serpico’nun bir örnegine baglanir. Bununla birlikte, birkaç vesileyle internete erisimi olmayan ve hassas verileri ön plana çikarmadan bir pentest yapmaya zorlandik. Içimizden biri Serpico’yu sadece yerel olarak kurdu; içe aktarma ve disa aktarma özelliklerini kullanarak, tüm sablonlanmis bulgularimizi yerele çok hizli bir sekilde tasidik.
SERPICO’YU KULLANMAYI TERCIH EDENLERE IPUÇLARI*Mevcut sablonu özellestirerek baslayin.
*Özellestirilmis bir rapor sablonu olustururken, her seferde yalniz bir degisiklik yapin. Bir hata yaparsaniz ve sablonunuza zarar verirseniz, hatanizi bulmak daha kolay olacaktir.
*Onay sürecine sadik kalin, aksi takdirde kullanicilardan aceleyle olusturdugu yeni sablonlu bulgulara sahip olacaginiz anlamina gelebilir.
*SERPICO’yu OTOMATIK ZARARLI TARAMA RAPORU OLARAK KULLANMAYIN. Serpico tamamen kalite raporlamasiyla ilgilidir. Bu araci kullanarak bir Nessus rapor bulgusunu körü körüne dönüstürmek, bu endüstride gördügümüz düsük kaliteli raporlara katkida bulundugunuz anlamina gelir. Her raporu müsterinizin ihtiyaçlarina göre uyarlayin.
*Degiskenler üstbilgi ve altbilgide desteklenmez, bunu unutmayin.
*Gelistiricilere geri bildirim saglayin.
*Raporlamaya daha az vakit harcamanin tadini çikarin!
Serpico’ya erisim linki:
color=#5ca02f ">https://www.github.com/serpicoproject color=#5ca02f ">Kaynak