İPUCU

Web & Server Güvenliği Doğru web ve veritabanı sunucusu güvenliği sağlanmadan, bilgisayar korsanları hassas verilerinize erişebilir. Web, Sunucu ve veritabanı güvenliğini nasıl sağlayacağınızı buradan öğrenebilirsiniz.

Seçenekler

MySQL İnjection

15-06-2012 20:26
#1
Ymz Krtprk - ait Kullanıcı Resmi (Avatar)
Forumdan Uzaklaştırıldı
Üyelik tarihi:
05/2012
Nereden:
Bruksel
Mesajlar:
134
Teşekkür (Etti):
11
Teşekkür (Aldı):
7
Konular:
65
Ticaret:
(0) %
SQL Injection Nedir?

SQL Injection Saldırganların Veri Çalmada Veri Değiştirmekte Kullandıkları En Çok Kullanılan Saldırılardan Biridiri. SQL Injection Günümüzde En Çok Kullanılan Saldırı Türlerinden biridir. Bu Saldırı türünde Saldırganlar Web Sitelerindeki Güvensiz Kodlamalardan Yararlanarak Sitenin Login Formu Gibi Kullanıcı Girişlerinin SQL Sorgusunda Kullanıldığı Yerlerde SQL Komutları Eklenmesi İle Veri Tabanına Yetkisiz Erişimi Sağlar.

Web Uygulamaları Web Sitesini Ziyaret Eden Kullanıcıları Veri Tabanını kullanarak Veri Görüntüleyebilmelerini Sağlar. Veri Tabanları Genellikle Çoğu Veb Sitelerinden Kullanılır ve Ziyaretçilere O Siteye Ait Bilgilerin Verilmesi için Veri depolama Amaçlı Kullanılır.

Web Sitelerinin Veri Tabanlarında Kullanıcı Bilgileri, Ödeme Bilgileri , Bir şirkete Ait İstatistikler Bulunabilir Ve Hazır veya özel Yazılmış Uygulamalarla ulaşılabilir.

SQL Injection Bir Web Sitesi üzerindeki Arkada Çalışan Veri Tabanının Çalıştırılması İçin Gönderilen SQL Komutlarıdır. Eğer Tasarımcı Web Site Üzerinde ki Komutları Düzenli Bir Şekilde Filtrelememişse Saldırganlar Tüm Veri Tabanının İçini Görebilir Değişiklik Yapabilir Veya Silebilir.

MySQL Injection Nedir?

MySQL Access Gibi Başka Bir Veritabanı sistemidir. Çoğunlukla PHP ile yazılmış sistemlerde kullanılır. PHP sitelerde Update Olmaz PHP ile yazılmış sitelerde Update denemek zaman kaybından başka bişey değildir. MySQL Injectionda veri tabanı kullanıcısı yetkili değilse Access’te yaptıklarımızdan fazla ileri düzeyde bisey yapmayız. Access’te olduğu gibi MySQL’de de Union Select kullanabiliriz. Access’tekinden farkı MySQL’de Kelimelerin arasına /**/ koyarız.

Örneğin : http://www.biblioteca-ua.com/select_...ELECT/**/0,1,2 ,3/*

Bu Şekilde Kolon Sayısını Bulmaya Çalışıyoruz. Dikkat Edeceğimiz Nokta Kolon sayısını bulmaya çalışırken tablo adı yazmamıza gerek yoktur.

Eger yetkiimiz var ise mySQL yada information_schema veri tabanlarindan veri çekebiliriz

MySQL User Tablosunda Kullanıcı adları Ve Şifreleri Bulunmaktadır Tabi Şifreler Hashlanmış bi şekilde bulunmaktadır. Bu Hashlanmış olan şifreler ancak brute force ile çözülebilir. information_schema.tables tablosundan kolon adlarını Öğrenebiliriz.
Sitenin bütün tablolarını öğrenebilmek için order by ile kolon sayısını deneyerek öğrenmeye çalışıyoruz.

Örneğin : http://www.biblioteca-ua.com/select_...712+order+by+6

Hata Alıyoruz Demek ki Kolon sayımız 6 değil tekrar deniyoruz kolon sayımızı buluncaya kadar 6’dan aşağı doğru sayıları yazıyoruz.

Kolon Sayımızı bulduk Kolon Sayımız “5”

http://www.biblioteca-ua.com/select_...712+order+by+5

http://www.biblioteca-ua.com/select_...lect+1,2,3,4,5

ekranda 2 çıktı bunun yerine vurduracağımız tablo Adını ben login olarak Seçiyorum.

http://www.biblioteca-ua.com/select_...,4,5+from+user
2’nin yazdığı yerde sitenin login hashlarını çıkardık.

19-07-2012 17:58
#2
ExsoTixxe - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
07/2012
Mesajlar:
59
Teşekkür (Etti):
1
Teşekkür (Aldı):
0
Konular:
8
Ticaret:
(0) %
Of kactır deniom olamdı :d video felan yokmu
Kullanıcı İmzası
BEŞİKTAŞ

ExsoTixxe

Bookmarks


« Önceki Konu | Sonraki Konu »
Seçenekler

Yetkileriniz
Sizin Yeni Konu Acma Yetkiniz var yok
You may not post replies
Sizin eklenti yükleme yetkiniz yok
You may not edit your posts

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodları Kapalı
Trackbacks are Kapalı
Pingbacks are Kapalı
Refbacks are Kapalı