SQLMap: Kapsamlı Bir Kılavuz
SQLMap, web uygulamalarındaki SQL enjeksiyonu (SQLi) güvenlik açıklarının tespitini ve istismarını otomatikleştirmek için tasarlanmış sağlam bir açık kaynaklı penetrasyon testi aracıdır. Kapsamlı yetenekleriyle SQLMap, güvenlik uzmanları tarafından veritabanlarının ve web uygulamalarının güvenliğini verimli bir şekilde değerlendirmek için yaygın olarak kullanılır.SQLMap'in Temel Özellikleri
- Otomatik Algılama : Kapsamlı manuel test gerektirmeden SQL enjeksiyonu güvenlik açıklarını otomatik olarak belirler.
- Veritabanı Uyumluluğu : MySQL, PostgreSQL, Oracle, Microsoft SQL Server ve daha fazlası dahil olmak üzere çok sayıda veritabanı yönetim sistemini destekler.
- Gelişmiş Seçenekler : Kurcalama teknikleri ve özel yükler de dahil olmak üzere, özel testler için çok sayıda komut satırı seçeneği sunar.
- Oturum Yönetimi : Kullanıcıların oturumları kaydetmesine ve devam ettirmesine olanak tanır, böylece uzun vadeli test projelerini yönetmeyi kolaylaştırır.
- Veri Alma : Veritabanı yapıları ve hassas bilgiler de dahil olmak üzere verileri minimum çabayla çıkarma yeteneği.
- İşletim Sistemi Komut Yürütme : Veritabanı sunucusunda işletim sistemi komutlarını yürütebilir ve güvenlik açıkları varsa daha derin erişim sağlayabilir.
Kurulum
SQLMap'i kullanmaya başlamak için şu adımları izleyin:- Python'u yükleyin : Sisteminizde Python 2.7 veya Python 3.x'in yüklü olduğundan emin olun.
- Depoyu Klonlayın : SQLMap deposunu GitHub'dan klonlamak için Git'i kullanın.
- SQLMap'i Çalıştırın : SQLMap'i Python kullanarak çalıştırabilirsiniz.
Temel Komut Yapısı
SQLMap için temel komut yapısı şöyledir:Yaygın Olarak Kullanılan Seçenekler
En sık kullanılan seçeneklerden bazılarının pratik örneklerle birlikte dökümü şöyledir:1. Hedef URL
- Açıklama : SQL enjeksiyonunun gerçekleşebileceği hedef URL'yi belirtin.
- Örnek :
2. Parametre Belirtimi
- Açıklama : SQL enjeksiyonu için hangi parametrenin test edileceğini belirtmek için bu seçeneği kullanın .
-p
- Örnek :
3. POST İstekleri
- Açıklama : POST isteklerini kullanan web uygulamaları için, seçeneğiyle gönderilen verileri belirtin .
--data
- Örnek :
4. Veritabanı Sayımı
- Veritabanlarını Listele : Tüm veritabanlarının listesini almak için:
- Veritabanındaki Tabloları Listeleme : Belirli bir veritabanındaki tabloları listelemek için:
- Bir Tablodan Verileri Çıkarmak : Belirli bir tablodan tüm verileri çıkarmak için:
5. İşletim Sistemi Komutlarını Çalıştırın
- Açıklama : SQL enjeksiyonu başarılı olursa, veritabanı sunucusunda işletim sistemi komutlarını çalıştırabilirsiniz.
- Örnek :
6. Etkileşimsiz Mod
- Açıklama : Kullanıcı etkileşimi olmadan SQLMap'i çalıştırma seçeneğini kullanın , varsayılan seçenekleri otomatik olarak kabul edin.
--batch
- Örnek :
7. İstek Dosyası Kullanma
- Açıklama : Bir dosyada kaydedilmiş bir HTTP isteğiniz varsa (örneğin, ), bunu doğrudan kullanabilirsiniz.
request.txt
- Örnek :
8. Bir Web Sitesini Tarama
- Açıklama : Bir web sitesini otomatik olarak taramak ve formlarda güvenlik açıklarını test etmek için bu seçeneği kullanın.
--crawl
- Örnek :
Gelişmiş Kullanım
Kurcalama Teknikleri
SQLMap, güvenlik mekanizmalarını atlatmak için çeşitli kurcalama tekniklerini destekler. Seçeneğiyle bir kurcalama betiği belirtebilirsiniz .--tamper
- Örnek :
Özel Kullanıcı Aracısı
Belirli bir tarayıcıyı veya istemciyi simüle etmeniz gerekiyorsa bu seçeneği kullanın.--user-agent
- Örnek :