THT DUYURU

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.

chat
Seçenekler

Post Data SQL Injection

CuLLeN_s - ait Kullanıcı Resmi (Avatar)
Üye
Üyelik tarihi:
02/2014
Nereden:
Malatya
Mesajlar:
887
Konular:
64
Teşekkür (Etti):
275
Teşekkür (Aldı):
479
Ticaret:
(0) %
14-05-2014 20:27
#1
Post Data SQL Injection
Selamun aleykum..

ASP.NET’de textboxlardan diğer html kodlarındada adı geçen <input type="text" kontrolleri üzerinden yapılan SQL Injection’un nasıl link üzerinden yapılabilir bir hale geldiğini dilim döndüğünce anlatmaya çalışacağım.




Öncelikle normal sql injectionda temp.aspx?id=1’a şeklinde uyguladığımız sql injection formlar üzerinden gelen\\\\\\giden Post methoduyla yapılan data işleme esnasında sayfa üzerinde hiçbir değeri göstermez yani 1 numaranı ID yi çagırdığımızda temp.php olarak kalır buda mevcut SQL injectionu biraz zorlaştırabilir.



Form’a girilen karakter sayısının sınırlandırılmasından dolayı, textboxun küçüklüğünden dolayı yazdığımız enfekte sorgunun karışması gibi vs.

İşte burada Post data injectionu linke nasıl dökeceğimizi anlatacağım.



Örnegin burada email istenen kısma yolladığımız ‘a ile sql sorgusuna başka bir sorguyu dahil ediyoruz ve karşımıza SQL İnjection hatası çıkıyor:
[Microsoft][ODBC SQL Server Driver][SQL Server]Line 1: Incorrect syntax near ’a’.


Demek ki buradan gönderdiğimiz valuelar aracılığı ile SQL injection yapabiliriz demektir peki mevcut thirt part toolar ile bu Post datayı nasıl yakalayacağız ?
Piyasada bulunan mevcut injection toollar genellikle Post form’u desteklemediğinden manuel olarak veri çekmek bir hayli zor olacaktır.
Bunu sayfamızın kaynak kodundaki
<form name="form1" method="Post" action="cwtemp.aspx">
Şu koddanda anlayabiliriz.Peki burada önemli olan nedir?
Gönderilen verilerin methodunun Post olmasıdır tabikide.
Post methodu;
Güvenlidir.
Get methoduna göre yavaştır.
Gönderilen veriler sadece formlar aracılığı ile gönderilir yani gönderilen veriler link üzerinde görünmez.
Get methodu;
Güvenli değildir.
Post methoduna göre hızlıdır.
Gönderilen veriler formdan gönderildiğinde link üzerinde görülebilir.
cw.aspx?who=Vagrants gibi.



O halde yapmamız gereken saldıracağımız bu sayfayı Post methodundan get methoduna çevirmek.
<form name="form1" method="get" action="cwtemp.aspx">
Şu şekilde ayarladığımız html koduyla verilerimizi sitemizin actionunu vermeden yolladığımızda
cwtemp.aspx?email=’a&sifre=&Submit=G%F6nder
şeklinde bir link oluştuğunu görüyoruz o halde SQL injection
cwtemp.aspx?email=-1’ having 1=1;-- bir sorgu yaptığımızda bize bir sonuç döndürüyor olacaktır.
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 şekilde toollar aracılığı ile sömürülebilir bir hale getirmiş olduk.
Artık programımıza


http://127.0.0.1/sql/cwtemp.aspx?email=1
şeklinde linkimizi ekleyebiliriz.

Diğer bir yol iste bütün kaynak koddaki textboxların yani inputların namelerini alarak linke elle yazmaktı ancak zaman değerlidir.


alıntıdır.
Konu CuLLeN_s tarafından (14-05-2014 20:30 Saat 20:30 ) değiştirilmiştir.
ExpertProf - ait Kullanıcı Resmi (Avatar)
Forumdan Uzaklaştırıldı
Üyelik tarihi:
04/2014
Nereden:
about:blank
Mesajlar:
1.534
Konular:
670
Teşekkür (Etti):
376
Teşekkür (Aldı):
267
Ticaret:
(0) %
15-05-2014 19:01
#2
Yararlı..
Teşekkürler..

Bookmarks


« Önceki Konu | Sonraki Konu »
Seçenekler