SQL İNJECTİON #TAMAMIYLA#

Katılım
19 Şubat 2025
Mesajlar
25
Tepkime puanı
6
Konum
UK
Herkese Merhaba Değerli NMTD Üyeleri Bu Konumda Sizlere SQL İnjection İle İlgili Herşeyi Anlatacağım.
sqlinjection2.png

1-) SQL İNJECTİON NEDİR? VE NEDEN OLUŞUR ?
SQL injection istismarından önce nasıl oluştuğu ve çalışma mantığının anlaşılmasına inanıyorum. O yüzden öncelikle neden oluştuğunu anlatacağım. SQL injection zaafiyeti genellikle PHP VE ASPX dillerinde yazılan sitelerde bulunur ve zaafiyetin çıkma nedeni bu dillerde yapılan filtreleme hataları ve hiç filtrelenmemesinden kaynaklanıyor.
2-) DORK NEDİR ?

recherches-Google-Dorks.webp


Dork yani google ile siteleri özel terimler ile hızlıca taramak için kullanılar arama operatörleridir.

inurl => belirtilen terimi url de arar. Örneğin : inurl="nmtd.org/login.php"

allintitle => başlıktaki tüm terimleri arar. Örneğin : allintile="merhaba nmtd ailesi!"

intitle => belirtilen terimi sayfaların başlığında arar. Örneğin : intitle="hello world!"

filetype => sitelerde arattığınız formattaki dosyaları bulur. Örneğin : filetype="dekont.pdf"

ext => belirttiğiniz uzantıda olan tüm dosyaları bulur. Örneğin : ext="pdf"

intext => sayfa içeriğini aramaya benzer. Örneğin : intext="Ne Mutlu Türküm Diyene."

allintext => inext'e benzer fakat tüm terimlerin sayfada arar. Örneğin : allintext="merhaba"

site => araamayı sadece belirtili site ve ülke ile sınırlandırır. Örneğin : site="nmtd.org" veya site="tr"

3-) SQL İNJECTİON TÜRLERİ NELERDİR ?

1*HyoCXVZrA6crdURqoRrGhQ.png


bant içi (In-band) SQL enjeksiyonları aynı iletişim kanalını kullanır ve iki şekilde gerçekleşir:
-Hata tabanlı (Error-based): Hata tabanlı SQL tekniğidir, uygulama veritabanı sunucuları tarafından atılan hata mesajlarına dayanır. Saldırganlar, hangi sorguların hata mesajları aldığını test ederek, veritabanı yapısına dayalı olarak hedeflenen SQL enjeksiyonları oluşturabilir.

-union based: Bir uygulama SQL injectionun karşı savunmasız olduğunda ve uygulamanın yanıtları bir sorgulama için sonuçları döndürdüğünde, saldırganlar uygulama veritabanının tablolarından veri almak için UNION anahtar sözcüğünü kullanır.


Inferential SQL İNJECTİONU, Blind SQL enjeksiyon saldırısı olarak da bilinir. Bu saldırıda, bir veri yükü gönderdikten sonra, saldırgan veritabanının veri yapısını belirlemek için davranışı ve yanıtları gözlemler. İki türde görülür:

-Boole tabanlı: uygulamayı DOĞRU veya YANLIŞ’ın farklı sonuçlarını döndürmeye zorlayan SQL sorguları göndererek, belirli yüklerin meşru sonuçlar döndürüp döndürmediğini anlayabilir.

-Time-based: Zamana dayalı olarak adlandırabileceğimiz bu yöntem, veritabanından yanıt vermeden önce belirli süre beklemesini isteyen SQL sorguları gönderir. Zamana dayalı SQL injection saldırısı, genellikle bir uygulama genel hata mesajları verdiğinde kullanılır. Bu teknik, veritabanını belirli bir süre beklemeye zorlar. Yanıt süresi, saldırganın sorguyu DOĞRU veya YANLIŞ olarak belirlemesine yardımcı olur.


Out-of-band SQL enjeksiyon saldırıları en az kullanılan SQL injection tekniğidir. Bant dışı SQL enjeksiyon saldırısı, uygulamanın verileri herhangi bir protokol (HTTP, DNS veya SMB) aracılığıyla iletmesini ister.

4-) SQL İNJECTİON NASIL YAPILIR ?


Sqlmap_logo.png


SQL İNJECTİON yapmak için google arama motoruna sql dorkları yazıp çıkan dorkları ctrl+c ve arama motoruna ctrl+v yaparak kopyala yapıştır eyleminde bulunalım şimdi karşımıza çıkan sitelerde sql açığı olup olmadığını anlayalım sonu rakam ile biten url lerin sonuna ' (tek tırnak) işareti koyalım eğer hata veriyorsa bu sitede sql açığı vardır şimdi terminalimizi açıp sqlmap'i çalıştıralım çalıştırmak için SQLMAP yazmanız yeterlidir şimdi ise sitenin bilgilerini çekelim.
Kod:
sqlmap -u "nmtd.org" --dbs
kodumuzda sitenin database'ni çekeriz ve ayrıca sitenin url'sini " (çift tırnak) işaretine almanız gerekir ve her işlemden sonra yaptığımız iştemin 1 çubuğunu silip baş harfini büyük yazıcağiz örnek: sqlmap -u "sitenin url'si.com" -D şimdi karşımıza databaseler çıktı örneğin nmtd.
Kod:
sqlmap -u "nmtd.org" -D nmtd --tables

bu işlem ile tablo bilgilerini çekeriz karşımıza users vb. bilgiler çıkması lazım çıkmadıysa farklı bir site bulmanız gerekir.
Kod:
sqlmap -u "nmtd.org" -D nmtd -T üyeler --columns

bu kodu yazdıktan sonra ise karşımıza birçoğun bilgi çıkabilir ama biz siteye sızacağımız için bu bilgiler arasından users ve password bilgilerini çekmemiz lazım.
Kod:
sqlmap -u "nmtd.org" -D nmtd -T üyeler -C üyeler,şifreler --dump

bu işlem siteyi dump eder yani site bilgilerini sızdırır ve bize sitenin şifresini ve kullanıcı adını verir biz ise bu bilgileri admin paneline girince siteye sızarız ve shell atıp index basar isek siteyi tam manada hacklemiş oluruz.


BENİ DİNLEDİĞİNİZ İÇİN TEŞEKKÜR EDERİM. İYİ FORUMLAR.
 
Geri
Üst