sqlmap İleri Seviye: Tamper Script'leri, WAF Atlatma ve Veri Çekme
sqlmap, SQL Injection tespiti ve sömürüsü için fiili standart araçtır. Çoğu kişi tek satırla kullanır ve orada kalır; oysa asıl gücü ince ayarında ve tamper script'lerindedir. Bu yazı, yetkili bir test kapsamında ileri kullanımı ele alır.
Bu araç yalnızca yazılı yetki aldığınız hedeflerde kullanılır. Yetkisiz kullanım suçtur (TCK 243-244).
Temeli Hızlıca
İsteği tarayıcıdan yakalayıp dosyaya kaydeder, sqlmap'e veririz:
sqlmap -r istek.txt --batch
-r ham HTTP isteğini okur (çerez, header, POST gövdesi dâhil) — bu, elle parametre vermekten çok daha güvenilirdir.
Derinliği Ayarlamak: --level ve --risk
Varsayılan ayar yüzeyseldir. Daha fazla enjeksiyon noktası ve tekniği denemek için:
sqlmap -r istek.txt --level=5 --risk=3 --batch
--level(1-5): test edilen yerleri artırır (header, çerez dâhil).--risk(1-3): daha agresif payload'lar dener (test ortamında dikkatli kullanın).
WAF Atlatma: Tamper Script'leri
Bir web uygulama güvenlik duvarı (WAF) klasik payload'ları engelliyorsa, tamper script'leri payload'ı kılık değiştirir (boşlukları yorumla değiştirme, büyük/küçük harf karıştırma, kodlama vb.):
sqlmap -r istek.txt --tamper=space2comment,between,randomcase --batch
Önce WAF'ı tanımlamak faydalıdır:
sqlmap -r istek.txt --identify-waf
Veriyi Çekmek
Enjeksiyon doğrulandıktan sonra, kademeli olarak ilerlenir:
sqlmap -r istek.txt --dbs # veritabanlarını listele sqlmap -r istek.txt -D uygulama --tables # tabloları listele sqlmap -r istek.txt -D uygulama -T users --columns # sütunları listele sqlmap -r istek.txt -D uygulama -T users --dump # veriyi çek
Bu kademeli yaklaşım, gereğinden fazla veri çekmeden kanıt üretmenizi sağlar — profesyonel testte "sadece gerektiği kadar" ilkesi esastır.
Dikkat Çeken İleri Özellikler
--os-shell— uygun koşullarda işletim sistemi kabuğu (çok yüksek etki; yalnızca kapsam izin veriyorsa).--passwords— parola özetlerini çekip kırmayı dener.--threads=4— hızlandırır (ama hedefi yormamaya dikkat).--proxy— trafiği Burp üzerinden geçirip incelemek için.
Operasyonel Uyarılar
- Üretim sistemine
--risk=3veya--dumpçalıştırmadan önce iki kez düşünün — veri bozulması veya kesinti riski vardır. - Her komutu kapsam belgesiyle doğrulayın.
- Çıktıları ve zaman damgalarını saklayın; rapor kanıtı olur.
Sonuç
sqlmap'i "tek satır" olarak değil, bir metodoloji aracı olarak kullanmak farkı yaratır. Ama asıl değer, çıktıyı iş etkisine çevirebilen uzmanlıktadır. SQL Injection türlerini hatırlamak için önceki yazımıza göz atın. Sisteminizin denetimi için bize yazın.
Sisteminizin güvenliğinden emin misiniz?
Ücretsiz Ön Değerlendirme →