Konuyu Oyla:
  • Toplam: 0 Oy - Ortalama: 0
  • 1
  • 2
  • 3
  • 4
  • 5
Sql İnjection Zafiyeti
#1
Information 
"Merhaba abilerim kardeşlerim forumunuza fb sayfanız üzerinden denk geldim burada bulunan adminlere teşekkür ederim böyle güzel bir forum için ben web tasarım öğrencisiyim pentest konusunda da kendime ait başarılarım var neyse konumuza geçelim. Hacking bölümünde pek fazla konu olmadığı için şöyle bir sql inj . adı altında konu açmak istedim ki bana göre bu işin temeli sql injection dur. İnternet üzerinde baya konu olmasına rağmen bende alıntılar ve kendi kattıklarım ile belki bir kişiye bile yardım edebilirsem ne mutlu "


SQL Injection Güvenliği Ve Kullanımı


TANIMI:

SQL Injection Saldırısı veya Veritabanı açığı saldırısı olarak ta bilinen ve halen birçok site için geçerli olan yöntemin güvenlik amaçlı kendi siteniz üzerinde nasıl deneyeceğinizi anlatacağım.



Genelde Windows sunucularında daha çok görülen ve Microsoft web uygulamalarının (ASPASP.NET) veritabanlarında karşılaşılan bir saldırı çeşididir. Microsoft Access ve MsSQL veritabanı kullanan sistemlerde bu güvenlik açığına çokça rastlanmaktadır.


PHP tabanlı MySQL, MariaDB ve benzeri veritabanı kullanan siteler içinde geçerlidir bu saldırı. Tabi PHP yapısı son zamanlarda özellikle CMS üzerinde yapılan yoğun çalışmalar ile SQL Injection saldırıları minimuma indirilmiştir.

SQL Injection Nedir?

Web uygulamalarında bir çok işlem için kullanıcıdan alınan veri ile dinamik SQL cümlecikleri oluşturulur. Mesela "SELECT * FROM Urunler" örnek SQL cümleciği basit şekilde veri tabanından web uygulamasına tüm ürün bilgilerini getirecektir. Bu SQL cümlecikleri oluşturulurken araya sıkıştırılan herhangi bir meta-karakter SQL Injection'a sebep olabilir. SQL için kritik meta karakter (') tek tırnaktır. Çünkü iki tek tırnağın arası string olarak algılanır. Diğer bir önemli meta-karakter ise (Çaktın Köfteyi noktalı virgüldür, satırın bittiğini ve yeni satır başladığını bildirir.



Manüel olarak ise tek tırnak meta karakterini tarayıcı (Browser) üzerinde şu şekilde deneyebiliriz;
domain.com/urunler.php?id=20 bu isteğin sonuna (') tek tırnak konur. urunler.php?id=20' daha sonra site tarafından bir SQL hatası alınırsa SQL Injection yapılabileceğini göstermektedir.

Örnek Olarak :
Kod:
http://www.bpc.gov.bd/contactus.php?id=13  //Sonuna ' işareti getirilerek sql hatası verdililebilir.//
http://www.bpc.gov.bd/contactus.php?id=13' //You have an error in your SQL syntax; //

Sql zafiyetinin bulunduğu sitelere dorklar yardımı ile daha rahat ulaşabiliriz. Onuda başka bir konumuzda anlatırım inşh.
Peki diyelim ki bu sql hatası ile karşılaştık veritabanına nasıl ulaşım sağlayacağız ?
Gerekli programlar veya manuel olarak db ye ulaşılabilir.

Bilgi Güvenliği için Test Araçları

Bilgi güvenliğiniz için SQL Injection açıklarını kendi sitenizde aşağıdaki araçları kullanarak arayabilir ve test edebilirsiniz. Bu sayede hangi sayfada yazılımsal açık var onu bularak müdahale edebilirsiniz. Aynı zamanda aşağıdaki araçlar ile sadece SQL değil Web siteniz üzerindeki diğer zafiyetleri taramak içinde kullanabilirsiniz.



1) Acunetix Web Vulnerability Scanner


14 günlük deneme versiyonu ile sitenizdeki hem SQL açıklarını hemde diğer zafiyetleri tarayarak görebilirsiniz.

www.acunetix.com/vulnerability-scanner

www.acunetix.com/vulnerability-scanner/download

en.wikipedia.org/wiki/Web_application_security




2) Havij


SQL açığı bulduğunuz veya şüphelendiğiniz sayfayı detaylı olarak incelemek için kullanabileceğiniz bir yazılımdır. Bulduğunuz zafiyet üzerinden sitenin Tablo ve Sütunlarını öğrenmenizi sağlar.


pt.wikipedia.org/wiki/Havij_-_Advanced_SQL_Injection




3) jSQL Injection


Java ile yazılmış Havij benzeri SQL Injection test yazılımıdır. Uygulamayı çalıştırmak için bilgisayarda JAVA ve Java Geliştirme Paketi (JDK) kurulu olması gerekir.

github.com/ron190/jsql-injection

github.com/ron190/jsql-injection/releases (jSQL Injection versiyon 0.73)

code.google.com/p/jsql-injection

code.google.com/p/jsql-injection/downloads/list (jSQL Injection versiyon 0.5)

http://tools.kali.org/vulnerability-analysis/jsql (Kali Linux jSQL Injection)



4) SQLMap: 

Python dilinde yazılmış SQL hatalarını bulmaya yarayan bir güvenlik yazılımıdır. Yazılımı bir Linux dağıtımı üzerinde kullanmanızı öneririm çünkü işlemleri Terminal üzerinde yapıyorsunuz. Tabi isteyenler Windows'a Python yükleterek de çalışabilir. Manüel olarak çalışacağınız için Basic SQL kod bilgisine ihtiyacınız vardır. Havij gibi kullanımı basit değildir.

www.sqlmap.org

github.com/sqlmapproject/sqlmap

sourceforge.net/projects/sqlmap
tools.kali.org/vulnerability-analysis/sqlmap

Konu hakkında bulduğum güzel bir video:




Evet arkadaşlar benden şimdilik bu kadar inşallah bu konular bir eğitim seti gibi paylaşmaya devam edecem herhangi bir konuda soru sormak isterseniz pm atabilirsiniz. Okuduğunuz İçin teşekkürler.

Saygılar 'Retinoid


  


Konu ile Alakalı Benzer Konular
Konular Yazar Yorumlar Okunma Son Yorum
  SQL Injection Sherlock 1 134 09-10-2018, Saat: 17:18
Son Yorum: insantayfun

Hızlı Menü:


Konuyu Okuyanlar:
1 Ziyaretçi

Sql İnjection Zafiyeti00