Root > Documents > Exploits / Vulnerabilities > Post Data SQL Injection
Cyber-Warrior.Org \ Doküman \ Exploits / Vulnerabilities > Post Data SQL Injection
Madde
  Yazar : TEMP!
  Date : 31.10.2009 21:58:03
 
# Post Data SQL Injection
 

Selamun aleykum..

ASP.NET’de textboxlardan diger html kodlarindada adi geçen <input type="text" kontrolleri üzerinden yapilan SQL Injection’un nasil link üzerinden yapilabilir bir hale geldigini dilim döndügünce anlatmaya çalisacagim.

Öncelikle normal sql injectionda temp.aspx?id=1’a seklinde uyguladigimiz sql injection formlar üzerinden gelen\\\\\\giden Post methoduyla yapilan data isleme esnasinda sayfa üzerinde hiçbir degeri göstermez yani 1 numarani ID yi çagirdigimizda temp.php olarak kalir buda mevcut SQL injectionu biraz zorlastirabilir.

Form’a girilen karakter sayisinin sinirlandirilmasindan dolayi, textboxun küçüklügünden dolayi yazdigimiz enfekte sorgunun karismasi gibi vs.

Iste burada Post data injectionu linke nasil dökecegimizi anlatacagim.

Örnegin burada email istenen kisma yolladigimiz ‘a ile sql sorgusuna baska bir sorguyu dahil ediyoruz ve karsimiza SQL Injection hatasi çikiyor:
[Microsoft][ODBC SQL Server Driver][SQL Server]Line 1: Incorrect syntax near ’a’.

Demek ki buradan gönderdigimiz valuelar araciligi ile SQL injection yapabiliriz demektir peki mevcut thirt part toolar ile bu Post datayi nasil yakalayacagiz ?
Piyasada bulunan mevcut injection toollar genellikle Post form’u desteklemediginden manuel olarak veri çekmek bir hayli zor olacaktir.
Bunu sayfamizin kaynak kodundaki
<form name="form1" method="Post" action="cwtemp.aspx">
Su koddanda anlayabiliriz.Peki burada önemli olan nedir?
Gönderilen verilerin methodunun Post olmasidir tabikide.
Post methodu;
Güvenlidir.
Get methoduna göre yavastir.
Gönderilen veriler sadece formlar araciligi ile gönderilir yani gönderilen veriler link üzerinde görünmez.
Get methodu;
Güvenli degildir.
Post methoduna göre hizlidir.
Gönderilen veriler formdan gönderildiginde link üzerinde görülebilir.
cw.aspx?who=Vagrants gibi.

O halde yapmamiz gereken saldiracagimiz bu sayfayi Post methodundan get methoduna çevirmek.
<form name="form1" method="get" action="cwtemp.aspx">
Su sekilde ayarladigimiz html koduyla verilerimizi sitemizin actionunu vermeden yolladigimizda
cwtemp.aspx?email=’a&sifre=&Submit=G%F6nder
seklinde bir link olustugunu görüyoruz o halde SQL injection
cwtemp.aspx?email=-1’ having 1=1;-- bir sorgu yaptigimizda bize bir sonuç döndürüyor olacaktir.
Microsoft OLE DB Provider for ODBC Drivers error ’80040e14’

[Microsoft][ODBC SQL Server Driver][SQL Server]Column ’uyeler.uyeID’ is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause.
Linkimizi bu sekilde toollar araciligi ile sömürülebilir bir hale getirmis olduk.
Artik programimiza

color=#0000cc http://127.0.0.1/sql/cwtemp.aspx?email=1
seklinde linkimizi ekleyebiliriz.

Diger bir yol iste bütün kaynak koddaki textboxlarin yani inputlarin namelerini alarak linke elle yazmakti ancak zaman degerlidir.

   
   
Cyber-Warrior TIM All Legal and illegal Rights Reserved.\CWDoktoray 2001©