Burp Suite İpuçları (Detaylı Anlatım ve Uygulama Teknikleri)
Burp Suite, web uygulama güvenlik testlerinde en yaygın kullanılan proxy aracıdır. Bug bounty ve pentest süreçlerinde vazgeçilmezdir. Doğru kullanım, saatler süren manuel işlemi dakikalara indirir.Burp Suite Kurulum ve Temel Ayarlar:
1. Proxy Ayarları (En Önemli)
textProxy → Options → Proxy Listeners
- 127.0.0.1:8080 (varsayılan)
- "All interfaces" (mobil test için)
2. Tarayıcı Ayarları
textFirefox/Chrome → Proxy Settings → Manual Proxy
- HTTP Proxy: 127.0.0.1
- Port: 8080
- "Use this proxy for all protocols" işaretle
3. CA Sertifikası (HTTPS için)
textProxy → Options → Import / Export CA Certificate
- Export certificate → Tarayıcıya yükle
- https://burp/ → certificate indir
Temel Kullanım İpuçları:
1. Intercept (Manuel Test)
Ne işe yarar? İstekleri durdurup manuel değişiklik yapma.text
Proxy → Intercept → "Intercept is on"
- Forward: İsteği gönder
- Drop: İsteği at
- Action → Do Intercept → Response to this request: Response'u da yakala
2. History (Geçmiş)
Ne işe yarar? Tüm istekleri ve yanıtları gösterir.text
Proxy → HTTP History
- Filtrele: Domain, method, status code, MIME type
- Sağ tık → "Send to Repeater", "Send to Intruder", "Send to Scanner"
3. Target (Hedef)
Ne işe yarar? Site haritası ve scope yönetimi.text
Target → Site Map
- Sağ tık → "Add to scope": Sadece hedef domain'leri göster
- Scope'daki URL'leri vurgula
- "Filter" ile istenmeyen domain'leri gizle
Güçlü Özellikler ve İpuçları:
1. Repeater (Manuel İstek Gönderme)
Ne işe yarar? İstekleri tekrar gönderip manuel test yapma.text
Repeater → Send istek
- İstekleri değiştirip tekrar gönder
- "Params" sekmesi: Parametreleri görsel düzenle
- "Headers" sekmesi: Header'ları düzenle
- "Hex" sekmesi: Binary veri düzenleme
Kısayollar:
- Ctrl+R: İsteği Repeater'a gönder
- Ctrl+Shift+R: Response'u Repeater'a gönder
2. Intruder (Otomatik Fuzzing)
Ne işe yarar? Parametreleri otomatik değiştirip istek gönderme.text
Intruder → Positions
- Payload positions: §param§ ile işaretle
- Attack type: Sniper (tek payload), Battering ram (aynı payload), Pitchfork (farklı payload), Cluster bomb (kombinasyon)
Intruder → Payloads
- Payload options: Wordlist yükle
- Payload processing: Hash, encoding, prefix/suffix ekle
- Payload encoding: URL encode, base64, vb.
Intruder → Options
- Request Headers: "Update Content-Length"
- Grep - Match: Yanıtta aranacak string'ler
- Grep - Extract: Yanıttan çıkarılacak veriler
Kullanım Senaryoları:
- IDOR testi: id=§1§, user_id=§123§
- SQL injection: ?id=§payload§
- Path traversal: file=§payload§
- Directory brute force: /§dir§/
- Subdomain fuzzing: §sub§.hedef.com
- Ctrl+I: İsteği Intruder'a gönder
- Ctrl+L: Intruder'ı başlat
3. Scanner (Otomatik Tarama)
Ne işe yarar? Otomatik zafiyet taraması.text
Scanner → Scan
- "Use insertion points": Parametreleri otomatik dene
- "Scan policy": Özel tarama politikası
- "Active Scan": XSS, SQLi, SSRF vb.
- "Passive Scan": Headers, cookie vb.
Performans İpuçları:
- "Scan speed": "Normal" veya "Fast"
- "Thread count": 10-20 thread
- "Scan complexity": "Thorough" (zaman alıcı), "Light" (hızlı)
4. Decoder
Ne işe yarar? Veri kodlama/dökodlama.text
Decoder → Encoder
- URL encode/decode
- Base64 encode/decode
- HTML encode/decode
- Hex encode/decode
Kullanım Senaryoları:
- JWT decode: Base64 decode
- XSS payload: URL encode
- SQL injection: URL encode
5. Comparer
Ne işe yarar? İki istek/yanıt arasındaki farkları karşılaştırma.text
Comparer → Paste
- Farklı istekleri yapıştır
- "Word compare": Kelime bazlı karşılaştırma
- "Byte compare": Bayt bazlı karşılaştırma
Gelişmiş İpuçları:
1. Extensions (Eklentiler)
En Kullanışlı Eklentiler:| Eklenti | Ne İşe Yarar? |
|---|---|
| Authorize | Yetkilendirme testi (IDOR) |
| Turbo Intruder | Çok hızlı fuzzing (10.000+ request) |
| Logger++ | Gelişmiş loglama |
| Active Scan++ | Gelişmiş aktif tarama |
| JSON Web Token | JWT decode/encode |
| GraphQL | GraphQL endpoint testi |
| Upload Scanner | Dosya yükleme testi |
| CSRF PoC Generator | CSRF ispatı oluşturma |
| Retire.js | JavaScript zafiyet tespiti |
| AWS Key Scanner | AWS key tespiti |
text
Extensions → BApp Store
- Arama yap
- Install
2. Collaborator (OOB Testleri)
Ne işe yarar? Out-of-Band testleri (SSRF, XXE, Blind SQLi).text
Burp Collaborator → "Copy to clipboard"
- URL'yi payload'a yapıştır
- "Poll now": Gelen istekleri kontrol et
Kullanım Senaryoları:
- SSRF: url=http://{collaborator}.burpcollaborator.net
- XXE: <!ENTITY xxe SYSTEM "http://{collaborator}">
- Blind SQLi: ' AND (SELECT 1 FROM (SELECT(SLEEP(10)))a)
3. Session Management (Oturum Yönetimi)
Ne işe yarar? Otomatik oturum yönetimi.text
Project Options → Sessions
- "Session handling rules": Oturum yenileme
- "Macros": Otomatik login
- "Cookie jar": Çerez yönetimi
4. Match and Replace
Ne işe yarar? Otomatik istek/yanıt değiştirme.text
Proxy → Options → Match and Replace
- Örnek: "Host: hedef.com" → "Host: hedef.com:443"
- Örnek: "X-Forwarded-For: 127.0.0.1" ekleme
5. Flow (Yeni - Burp 2024+)
Ne işe yarar? İstek/yanıt akışını görselleştirme.text
Flow → Filter
- Sadece hedef domain'leri göster
- Sadece belirli status kodları
- Zaman çizelgesi görünümü
Burp Suite Kullanım Senaryoları:
1. IDOR Testi
text1. Intruder → Positions: user_id=§123§
2. Payloads: Sayısal artış (123, 124, 125...)
3. Options → Grep - Match: "Unauthorized", "Forbidden"
4. Start attack
5. Farklı yanıtları analiz et
2. XSS Testi
text1. Repeater → Parametreye payload gönder
2. XSS payload'ları: <script>alert(1)</script>, "><script>alert(1)</script>
3. Yanıtta payload yansıyor mu kontrol et
4. Context'e göre payload ayarla
3. SQL Injection Testi
text1. Intruder → Positions: id=§1§
2. Payloads: ' OR '1'='1, ' UNION SELECT NULL--
3. Options → Grep - Error: "SQL", "MySQL", "ORA-"
4. Start attack
5. Hata mesajlarını analiz et
4. SSRF Testi
text1. Collaborator → URL al
2. Repeater → Parametreye collaborator URL'si gönder
3. Collaborator → Poll now
4. Gelen istek varsa SSRF
5. Internal IP'leri dene: 127.0.0.1, 192.168.1.1, 169.254.169.254
5. Parameter Discovery
text1. Intruder → Positions: ?§param§=test
2. Payloads: parametre wordlist'i (paramspider/common)
3. Options → Grep - Match: "200", "400", "500"
4. Start attack
5. Farklı status kodlarını analiz et
Burp Suite Performans İpuçları:
1. RAM ve CPU Ayarları
textBurp → Settings → Memory
- Heap: 4-8 GB (büyük hedefler için)
- "Save state" sıklığını azalt
2. Scope Yönetimi
textTarget → Scope → "Add to scope"
- Sadece hedef domain'leri yakala
- Out-of-scope: "Do not intercept", "Do not log"
3. Log Yönetimi
textProxy → History → "Clear history"
- Düzenli temizlik yap
- "Filter" ile gereksiz istekleri gizle
4. Thread Yönetimi (Intruder)
textIntruder → Options → Request Engine
- Number of threads: 10-50 (hedefe göre)
- "Throttle between requests": 100-500 ms (rate limiting)
Burp Suite Eklentileri (Muhakkak Kur):
bash1. Authorize (IDOR/Yetkilendirme testi)
2. Turbo Intruder (Hızlı fuzzing)
3. Active Scan++ (Gelişmiş tarama)
4. JSON Web Token (JWT decode/encode)
5. GraphQL (GraphQL endpoint testi)
6. Upload Scanner (Dosya yükleme testi)
7. CSRF PoC Generator (CSRF ispatı)
8. AWS Key Scanner (AWS key tespiti)
9. Retire.js (JS zafiyetleri)
10. Logger++ (Gelişmiş loglama)
Burp Suite Hata Ayıklama İpuçları:
| Sorun | Çözüm |
|---|---|
| HTTPS çalışmıyor | CA sertifikasını tarayıcıya yükle |
| Yavaş çalışıyor | Scope'u daralt, thread sayısını azalt |
| Out of Memory | Heap ayarını artır |
| Proxy çalışmıyor | Proxy port'unu kontrol et |
| Interceptor bozuk | Intercept'i kapat-aç, Burp'u yeniden başlat |
| Eklenti çalışmıyor | Eklentiyi güncelle, Jython/JRuby kontrol et |
Burp Suite Kontrol Listesi:
A. Kurulum:
- Proxy ayarları yapıldı mı?
- CA sertifikası tarayıcıya yüklendi mi?
- Scope ayarlandı mı?
B. Temel Özellikler:
- Intercept kullanıldı mı?
- History kontrol edildi mi?
- Repeater kullanıldı mı?
- Intruder kullanıldı mı?
C. Gelişmiş Özellikler:
- Scanner kullanıldı mı?
- Collaborator kullanıldı mı?
- Eklentiler yüklendi mi?
- Decoder kullanıldı mı?
D. Performans:
- Scope daraltıldı mı?
- Thread sayısı optimize edildi mi?
- RAM ayarı yapıldı mı?
🔒 Bu içeriği görmek için giriş yapın