SQLMap. Açık kaynak, otomatik SQL enjeksiyon test aracı. Yani birkaç komutla veri tabanlarına sızmak, tablo yapısını görmek, kullanıcı bilgilerini çekmek mümkün. Ve bu güç… çok tehlikeli bir merakla birleştiğinde, bir eğitim aracından suç aletine dönüşebilir.
Sen sadece deniyorsundur. Ama sistem seni denemez. Seni izler. Sorgular. Ve tespit eder.
SQLMap Nedir ve Neden Bu Kadar Güçlüdür?
SQLMap, web formlarında, URL parametrelerinde, cookie bilgilerinde SQL enjeksiyonu olup olmadığını otomatik olarak test eder. Kendi başına yüzlerce sorguyu gönderip, sonuçları analiz ederek zafiyet olup olmadığını anlamaya çalışır. Ama yaptığı şey teknik olarak şu demektir:
- Sunucuya çok sayıda istek gönderir
- Veritabanı yapısını çözmeye çalışır
- Yanıtlara göre sisteme "dokunur"
- Ve eğer açık varsa, içine girer
İşte burada sistem, senin niyetine değil, gönderdiğin paketlere bakar.
Gerçek E-Ticaret Sitelerine SQLMap ile Sorgu Atmak Ne Demektir?
Bu siteler; ürün satışı yapar, ödeme sistemleri barındırır, kişisel verileri saklar. Yani canlıdır. Yani üretimdedir. Yani hassastır.
Sen sadece şu komutu yazarsın:
sqlmap -u "https://gerceksite.com/urun?id=12" --dbs
Ve bu işlem sistem için şu anlamlara gelir:
- Sunucuya bilinçli olarak zafiyet taraması yapılıyor
- Veri tabanı yapılandırması çözülmeye çalışılıyor
- Potansiyel veri sızdırma teşebbüsü var
- Yasadışı veri erişimi girişimi olabilir
Bu tür istekler, log’lanır. Güvenlik sistemlerinde kırmızı bayrak oluşturur. Ve özellikle kredi kartı ya da kullanıcı verisi barındıran sistemlerde, doğrudan adli süreci tetikler.
“Sadece Test Ettim” Demek Seni Kurtarır mı?
Hayır. Çünkü test yapma yetkin yoksa, test değil saldırıdır. Bir sistem sana "gel ve test et" demediği sürece, buna yetkisiz erişim teşebbüsü denir. Ve bu; siber suç kapsamındadır. Bazı ülkelerde bunun cezası hapisle sonuçlanabilir. Ayrıca bir rapor bile yazmıyorsan, etik hacker bile sayılmazsın. Sen sadece gizlice kapıyı kurcalayan bir yabancı olursun.
Gerçek Hikâye: Bir Saniyelik SQLMap Sorgusu, 1 Yıllık Yargı Süreci
Bir öğrenci, SQLMap ile bir e-ticaret sitesinde veri tabanı olup olmadığını test etti. Sadece --dbs parametresi kullandı. Veri çekmedi. Ama site bu girişimi tespit etti. IP adresi loglandı. Kullanılan IP ev internetiydi. Ve 2 hafta sonra, bir çağrı geldi. "Veritabanı sorgulaması yapıldığı tespit edildi. Siber suçlar birimine gelmeniz gerekiyor."
O kişi sadece öğrenmek istemişti. Ama sistem, sadece "paketleri" gördü. Ve bu paketler, saldırı olarak etiketlendi.
Peki Nasıl Öğrenebilirim?
SQLMap ve diğer pentest araçlarını güvenli ve yasal biçimde öğrenmek istiyorsan:
- DVWA (Damn Vulnerable Web App)
- bWAPP (Buggy Web Application)
- Metasploitable 2/3
- WebGoat
- HackTheBox, TryHackMe gibi platformlar
Bu ortamlarda dilediğin kadar deneme yapabilirsin. Gerçek veriye dokunmadan, sadece simülasyon üzerinde ustalaşabilirsin.
Etik Hacker ile Denemeci Arasındaki Sınır
Etik hacker:
- Yetki alır
- Rapor tutar
- Yazdığı koddan önce sorumluluğunu düşünür
- Kendi test ortamını kurar
Denemeci ise:
- Hazır site bulur
- İzin almaz
- Sorgu gönderir
- “Zaten veri çekmedim ki” der
İşte bu “zaten” ifadesi… yasal süreçte hiçbir işe yaramaz.
Güvenlik Araçları Silah Gibidir – Kimin Eline Geçerse Ona Göre Anlam Değiştirir
SQLMap seni geliştirir. Ama yanlış yerde kullanırsan seni yakar. Kod seni akıllı gösterir. Ama eylem, seni sorumlu kılar.
Gerçek bir e-ticaret sitesine tek bir paket gönderdiğinde, artık denemiyorsun. Sistemi zorluyorsun. Ve sistem, sana sessiz kalmaz. Onu analiz etmek istiyorsan, önce onun sana izin verdiği ortamda bulunmalısın. Yoksa… kendini sorgulayan değil, sorgulanan olarak bulursun.