BOOK THIS SPACE FOR AD
ARTICLE ADMerhaba Arkadaşlar, bu yazımızda size Portswigger’ın Burp Suite adlı yazılımının ne işe yaradığını, ne için kullanıldığını ve nasıl kurulacağını anlatacağız.
Port Swigger şirketi tarafından Java dili ile geliştirilen Burp Suite, bir proxy aracıdır, aynı zamanda web uygulamalarının güvenliğini kontrol etmek için kullanılan önemli bir yazılımdır. İçinde birbirinden farklı ve işinizi oldukça kolaylaştıracak birçok araç bulunmaktadır.
Burp Suite’nin 3 farklı sürümü bulunmaktadır bunlar; Enterprise, Professional ve Community sürümleridir. Biz şimdi ücretsiz olan Community sürümünü kuracağız.
Get Community Butonuna tıklayarak indiriyoruz.
Şimdi tarayıcımzda ki proxy aracını açmamız gerek (ben Firefox kullanıyorum) bunun için ayarlara gelip proxy bölümünü buluyoruz.
Bu bölümde HTTP Proxy bölümüne 127.0.0.1 (Localhost) Port kısmına da 8080 giriyoruz. Sonrasında OK butonuna tıklayıp çıkıyoruz.
Şimdi sıra http://burp/ adresinden Burp’ün sertifikasını indirip tarayıcıya eklemek de (Bu iş için hem Burp aracınız hem proxy’niz açık olmalıdır)
Sonrasında bunu tarayıcınıza eklemeniz gerekir:
Import butonuna tıklayıp indirdiğimiz sertifikayı ekliyoruz ve artık Burp Suite’miz kullanıma hazır!
Ama biz Proxy’i açmak istediğimiz zaman her zaman ayarlara gidip açmaktansa FoxyProxy gibi eklentiler kullanarak tek tuşla açıp kapatibiliriz. Altarnetif olarak Proxy Switcher gibi araçlarda kullanabilirsiniz ama ben bu yazıda FoxyProxy’i anlatacağım. Şimdi Bunun nasıl yapıldığına bakalım!
Öncelikle bu linkten eklentiyi tarayıcımıza ekliyoruz.
Sonrasında tarayıcımızın Toolbarında çıkan imgeye tıklayıp Options seçeneğini seçiyoruz.
Ve karşmıza çıkan ekranın sol tarafındaki bardan Add butonuna tıklıyoruz.
Burada ise bizden istenen değerleri gireceğiz
Title
Bu kısımda proxy’mizin ismini giriyoruz ben Burp Suite olarak gireceğimProxy Type
Bu kısım HTTP olarak kalmalıProxy IP
Bu kısıma 127.0.0.1 (localhost) değerini giriyoruzPort
Bu kısıma 8080 giriyoruzUsername ve Password kısmını isterseniz doldurabilirsiniz ama biz şimdi doldurmuyoruz. Sonrasında Save butonuna tıklayıp işimizi bitiriyoruz.
Bir internet sitesine giderken veya internet sitesinde bir işlem yapmaya çalışırken arkada sunucu ile istemci arasında HTTP request-response döngüsü gerçekleşir ve biz bu request-response döngüsünü göremeyiz. Burp Suite ile bu istekleri tutup üstündeki araçlar sayesinde bir çok değişiklik yapabiliriz ve ayrıntılı inceleme fırsatı buluruz. Örneğin Youtube’ye giderken gerçekleşen bir istek (Tarayıcınızdaki proxy ve Burp Suite’in Intercept Özelliği açık olmalıdır).
Bu kısımda proxy yardımı ile yukarıda bahsettiğimiz HTTP requestlerini keseriz. Bu da Burp Suite ile görüntülememizi sağlar.
HTTP requestlerini tutmak için öncelikle kullandığınız tarayıcıdan (Ben Firefox kullanıyorum) önce proxy ve sonra Burp Suite’in Intercept özelliğini açmamız gerekir.
Şimdi gelen isteği tutmaya hazırız! Hadi deneyelim. Aşağıda bulunan istek wikipedia ya giderken göndermiş olduğumuz istektir.
HTTP history bölümünde Proxyniz açık olduğu sürece giden tüm istekleri görürsünüz(Burp Suite’in Intercept özelliği açık olmayabilir).
Bu kısım brute force saldırıları gibi deneme yanılma yönetmini uygulamanız gereken durumlarda kullanılır. Target kısmında isteğin yapılacağı host ve port numarası yer alır. Bu bilgi Otomatik olarak gelir ve istenilirse değiştirilebilir Diğer kısımlara aşağıda örnekli olarak değineceğiz.
Şimdi nasıl kullanılıcağına bakalım. Laboratuvar üzerinde kullanıcı adı ve şifre girme kısmına brute force saldırısı yapalım!
Username Password kısmına rastgele bir değer girdikten sonra Log in butonuna tıklayıp isteği tutuyoruz ve tabii ki Action kısmından isteği Intruder’e gönderiyoruz. Sonrasında Positions kısmına basıyoruz.
Burada otomatik olarak üstünde brute force yapabiliceğimiz parametreler seçilidir sağ tarafdaki panelden Clear§ butonuna basıp parametreleri sıfırlıyoruz.
Sonrasında brute force yapacağımız parametrenin değerini seçip sağ taraftaki panelden Add§ butonuna tıklıyoruz. (Saldırı türlerine aşağıda değineceğim).
Şimdi seçtiğimiz parametreye deneme yanılma yönteminde kullanacağımız kelime listelesini vermek için Payloads kısmına geliyoruz
Payload Options kısmında Load butonundan txt dosyası yükleyebiliriz, Paste butonu ile ise kopyaladığımız kelimeleri ekleyebiliriz. Şimdi Start attack butonundan saldırıyı başlatabiliriz.
Şimdi gelelim saldırı tiplerine bunlar; Cluster Bomb, Sniper, Battering ram ve Pitch fork.
Cluster Bomb
Bu saldırıda birden çok kelime listesi kullanılır. Çalışma mantığı ise çok basit, olabilicek tüm olasılıkları tek tek dener.
username=wordlist1[0]&password=wordlist2[0]username=wordlist1[1]&password=wordlist2[0]
username=wordlist1[2]&password=wordlist2[0]
username=wordlist1[0]¶m2=wordlist2[1]
username=wordlist1[1]¶m2=wordlist2[1]
username=wordlist1[2]¶m2=wordlist2[1]
Sniper
Bu saldırıda 1 tane kelime listesi kullanılır. Çalışma mantığı ise kelime listesindeki değerler önce ilk parametre üzerinde sonrasında ikinci parametre üzerinde denenir. Daha iyi anlamak için örneğe bakalım
username=wordlist[0]&password=username=wordlist[1]&password=username=&password=wordlist[0]
username=&password=wordlist[1]
Battering Ram
Bu saldırı türünde 1 tane kelime listesi kullanılır. Çalışma mantığı ise 1. parametre ve 2. parametre için sırasıyla kelime listesinde ki aynı değerler kullanılır. Daha iyi anlamak için örneğe bakalım
username=wordlist[0]&password=wordlist[0]username=wordlist[1]&password=wordlist[1]
Pitch Fork
Bu saldırı türünde ise birden çok kelime listesi kullanılır. Çalışma mantığı ise 1. kelime listesi 1. parametre için, 2. kelime listesi 2. parametre için kullanılır
username=wordlist1[0]&password=wordlist2[0]username=wordlist1[1]&password=wordlist2[1]
Proxy kısmında tuttuğumuz isteği Repeater’a yollayıp, istek üstünde değişiklik yapıp isteği tekrar siteye gönderip sonucunu Burp Suite’in sağ tarafında görmesini sağlar. Bu özellik olmasaydı istek üzerinde çok sayıda değişiklik yapmak istediğimiz zaman her seferinde isteği tutmaya çalışırdık dolayısıyla bu araç ile işimiz çok fazla hızlandırmış olacağız.
Sequencer istekde gönderilen cookie,csrf token gibi değerler için rastgele değer üretip bu bilgilerin ne kadar alakasız ya da herhangi bir şeye bağlı olup olmadığın bulur.
Şimdi kullanımına göz atalım!
Proxy kısmından tuttuğumuz isteği Sequencer’e atıyoruz
Gördüğünüz gibi yukarıda gönderdiğimiz istek bulunuyor, aşağı tarafta ise hangi parametre üstünde test yapılacağı yazıyor. İstekte Cookie değeri bulunmadığı için ben Cookie butonunu seçemiyorum ama seçerseniz Cookieleri test etmiş olursunuz, Custom location ise istek üzerinde herhangi bir parametre seçip seçtiğimiz parametreyi test etmemizi sağlar.
Test edilicek Parametreyi seçtikten sonra Start live capture butonundan işlemi başlatabiliriz!
Karşımıza yeni bir sekme açılıcaktır ve işlem bittiğinde şöyle bi ekranla karşılaşırız
Analyze Now butonuna bakıp sonuçlara bakabilirsiniz saldırgan Cookie gibi değerleri tahmin edebilir bu sebebden dolayı atanan değerler ne kadar karışık olursa o kadar iyidir.
Encode edilerek verilmiş veriyi çözümleme yapmaya verilen isimdir ve bu araç da şifreli veriyi deşifre eder.
Burp Comparer, iki farklı request-response arasında bir karşılaştırma yapmanızı sağlar. Diyelim ki bir giriş ekranına brute-force yapmak istediniz. Olumlu sonuç alabilicek 2 tane sonuç aldığımızı varsayalım, bu durumda her iki çıktıyı da siteye gidip denememek için isteği Comparer kısmına gönderip isteği sonucu ile beraber kıyaslayıp inceleyebiliriz.
Ekranın sağ alt tarafında gördüğünüz gibi isteği hem Word hem Bytes kategorisine göre kıyaslıyabiliriz
Açıklayıcı bir örnek için aşağıya bırakacağım videoyu izleyebilirsiniz:
Burp Extender, Burp’un işlevselliğini kendinizin veya BApp Store da bulunan hazır eklentileri kullanarak genişletmek için kullanılır.
Extensions bölümünde kullandığınız ekstra eklentiler bulunur, burdan uzantının şu anda yüklü olup olmadığını anlayıp seçili uzantıyı yüklemek veya kaldırmak için onay kutusuna tıklayabilirsiniz. Details kısmında eklenti ile ilgili daha fazla bilgi bulabilirsiniz
BApp Store bölümünde ise indirip kullanabiliceğimiz eklentiler bulunmaktadır:
Bu araç hedefiniz deki uygulamalarınız hakkında ayrıntılı çalışmanızı ve daha doğru hedefler üstünde çalışmanıza kolaylık sağlar.
Site Map kısmında istekleri daha detaylı bir halde görebiliriz.
Scope kısmında ise tam olarak hangi URL’lerin mevcut çalışmanız için scope (hedef) için de olduğunuzu anlamanızı sağlar. Biraz daha açmak gerekirse bir web sitesini hedef aldığınızı varsayalım, hedef aldığınız site içerisinde çağrılan başka adresteki bağlantılar da olabilir. Bunu görmek istemiyorsanız ve sadece o linke ait olan istek ve cevapların arasına girmek istiyorsanız bu durumda scope kullanılır. Scope tanımını kısaca şu anda ilgilendiğiniz ve saldırmaya istekli olduğunuz hedefler olarak düşünebilirsiniz.
Bu yazımızda size elimizden geldiği kadarıyla Burp Suite aracını tanıtmaya çalıştık.
Okuduğunuz için teşekkürler!
Abstract Bug Bounty Team
Discord: https://discord.gg/abs
Youtube: https://www.youtube.com/channel/UCsF0p9m0Fl9UJljtaSryNaA
Twitter: https://twitter.com/abstract_bounty