ACCESS SQL İNJECTİON

Access SQL Injection



Access SQL Injection, yani asp sistemlerdeki sql injection zaafiyeti.


Öncelikle şunu bilmeniz gerekir , Access SQL tamamen tahmin işidir. Mysql'den daha basittir. Fakat birikiminiz olmalı biraz. Örneğin bir siteyi ele alalım ve burada Access SQL olduğunu düşünelim. 

Site örneğimiz de şu şekilde olsun ; http://sitemizbu.com/grafikler.asp?id=2


HATA ALMA İŞLEMİ

Hatamızı alıyoruz , tırnak işareti veya kesme işaretiyle hata almayı bilmeyeniniz yoktur sanırım.
Örnek ; Http://sitemizbu/grafikler.asp?id=2"
hatamızı almış olduk , hatamız bu şekilde olacaktır. 

Microsoft JET Database Engine error ’80040e14’ Syntax error in string in query expression ’id = 93";’. /grafikler.asp, line 7 

Çoğu zaman buna benzer hatalar alırsınız Access'te.


KOLON SAYISINI BULMA İŞLEMİ

Http://sitemizbu.Com/grafikler.asp?id=2+order+by+1

Tabi ki tek deneme de hata vereceğini sanmayın. Ama devam ediyoruz , 1 / 2 / 3 / 5 diye.. Hata verene kadar.

Örneğin ; Ben 8'i yazdığım da hata veriyorsa benim kolon sayım 7'dir.

Http://sitemizbu.Com/grafikler.asp?id=2+order+by+8

Hata çeşidi herhangi bir sayfa açılması veya bir hata metni şekilde olabilir. 


İŞE YARAYAN KOLONLARI BULMA İŞLEMİ

İşimize yarayacak, yani bizim sonrasında kullanacağımız kolon sayılarını bulmak için "Union Select" Komutunu Kullanacağız. Fakat Bir de Tablo Her Hangi Bir Tablo Adı Kullanmalıyız, Kullanmalıyız ki, Kolon Sayılarımız Yansısın.

Kolon Sayımız 7’ydi, Unutmayalım ~


Http://sitemizbu.Com/grafikler.asp?i...+From+Tabloadi


Bu şekilde uyguladığımız da karşımıza hata değil , aynı sayfa da değil. Sayılar çıkmalı 1 ile 7 arasında.

Tabii tablo adı yazdığım yere işe yarar bir tablo adı gerekiyor.

Örneğin; Tablo Adının "News" Olduğunu Farz Edersek ;


Şeklinde Uygulanır.

Genelde En Az İki Sayı Çıkar. Fakat, Eğer ki Tablo Adı Yanlışsa Hata Metni Alırız Direk. Ben 1 ve 3’ün Yansıdığını Farz Ediyorum.


TABLO ADI BULMA İŞLEMİ

Kolonumuzu da Bulduk, Sırada İşimize Yarayacak Tablo Adını Bulma İşlemi Var, Öncelikle Tablo Adlarının Ne Olabileceği Konusunda Bir Birikiminiz Olmalı.

Genellikle Tablo Adları

Admin, Admins, Users, User, Member, Members, Yonetici, Yonetim, Login etc  Şeklinde Olur.
 .

Google’da Araştırırsanız Daha Fazla Örnek Bulabilirsiniz.

Access Tahmin İşidir Demiştik, Deneme / Yanılma Yoluyla Bulunur Tablo Adları, Kolon Adları Vesaire...


Yani, Denemeliyiz, Başka Şansımız Yok.

Ben Tablo Adının Users Olduğunu Farz Ediyorum.

Şu Şekilde Uygulayacağız;


ve Yine Önümüzde Kolon Yansımaları Olacak. Hata Verdiği Takdirde Tablo Adınız Yoktur DB’de.


KOLON ADI BULMA ve VERİ ÇEKME İŞLEMİ

Tablo Adımızıda Bulduğumuza Göre, Artık Kolon Adlarımızıda Tahmin Edip, Verimizi Çekebiliriz.

Dikkat Ederseniz, TAHMiN EDiP, yani Bu Kolon Adlarında da Tahmin ve Birikim Önemli.


Kolon Adları Neler Olabilir?

Username, User, Login, Password, Pass, Usr, Pwd, Passwd etc.

İşe Yarayacak Kolon İsimlerinin User - Password Olduğunu Varsayıyorum. Sırada Veri Çekme Kaldı, Yansıyan Sayılarımız Kaçtı ?

Bir ve Üç. Onların Yerine, Gerekli Yerlere Kolon Adlarımızı Yazıyoruz.

Şu Şekilde;


Bunu Uyguladığımızda, Veriler Çekilmiş ve Admin Bilgilerini Ele Geçirmiş Olacağız.
Bizlere destek olmak için lütfen sosyal medya hesaplarınızda paylaşmayı unutmayın. Ayrıca konu altında yorumlarınızı belirtebilir , ziyaretçi defterimize not bırakabilirsiniz. 


Yorum Gönder

Yorum Gönder