ݺߣ

ݺߣShare a Scribd company logo
OWASP Türkiye
Güvenlik Buluşmaları
2016
HTTP Güvenlik Başlıkları
ve
Türkiye’deki Sitelerin
Analizi
||
İçerik
 01 Hakkımda
 02 Web Uygulamaları
HTTP nedir
Nasıl çalışır
Same-origin politikası
 03 Kısaca OWASP Top 10
 04 HTTP Security Headers
CSP 1.0 – 2.0 & Demo X-XSS Protection
X-Frame-Options & Demo Strict-Transport-Security
Set-Cookie X-Content-Type-Options
X-Download-Options X-Permitted-Cross-Domain-Policies
Public-Key-Pins
 05 Türkiye’de Durum – Alexa TR Top 500 İncelemesi
 06 Daha Fazlası İçin
 07 Sorular HTTP Security Headers I 3
||
Özgeçmiş
K. Emre KISA
01
Http Security Headers I 4
Kıdemli Uygulama Güvenliği Mimarı
Türk Telekom
2012 - ODTÜ
2008 – Çankaya Üniversitesi
||
Web Uygulamaları
02
HTTP Nedir?
Http Security Headers I 5
|
HTTP bir kaynaktan dağıtılan ve ortak kullanıma açık olan hiperortam
(hypermedia) bilgi sistemleri için uygulama seviyesinde bir iletişim
protokolüdür.
(H)yper (T)ext (T)ransfer (P)rotocol
Http Security Headers I 6
|
HTTP (Cont.)
Http Security Headers I 7
HTTP
Request
HTTP
Processing
HTTP
Response
|
• Farklı kaynaklar birbirinden izole şekilde çalıştırılmalıdır
• Same origin : Aynı protokol + aynı host + aynı port
Same-Origin Politikası
• Same-Origin
||
OWASP TOP 10
03
Http Security Headers I 9
|
OWASP Top 10
Http Security Headers I 10
|| Http Security Headers I 11
HTTP Security Headers
04
|
• Browser tarafından hangi adresten, hangi tipte kaynağın yüklenip,
çalıştırılabileceğini belirlememizi sağlayan bir W3C standardıdır.
Content-Security-Policy 1.0
Http Security Headers I 12
Content-Security-Policy : W3C standartı olarak belirlenen başlıktır,
• Chrome versiyon 25+,
• Firefox versiyon 23+,
• Opera versiyon 19+
• Safari 7+
• Microsoft Edge 12 build 10240+ tarafından desteklenmektedir.
X-Content-Security-Policy :
• Internet Explorer 10+,
• Firefox 4+ sonrası tarafından desteklenmektedir.
X-WebKit-CSP :
• Chrome versiyon 14-25,
• Safari 6+ tarafından desteklenmektedir.
|
• Desteklenen direktifler;
– default-src : Kaynağın tipi belirtilmedikçe, varsayılan olarak kullanılacak direktiftir. (fallback),
– script-src : Hangi script’in çalıştırılabileceğini belirtir,
– object-src : Pluginlerin nereden yüklenebileceğini belirtir, (<object>, <embed> ya da <applet>)
– style-src : CSS dosyalarının nereden yüklenebileceğini belirtir,
– img-src : İmaj dosyalarının nereden yüklenebileceğini belirtir,
– media-src : Video ve ses dosyalarının nereden yüklenebileceğini belirtir, (<audio>, <video>)
– font-src : Font dosyalarının nereden yüklenebileceğini belirtir,
– connect-src : Scriptler aracılığıyla hangi URI’lerin yüklenebileceğini belirtir,
– form-action : Hangi URI’lerin form elementlerinde action olarak tanımlanabileceğini belirtir,
– sandbox : Kaynağa web tarayıcı tarafından uygulanması istenen HTML sandbox politikası belirtir, (same-origin politikası
uygulanması, pop-up, plugin, script engellenmesi)
– plugin-types : çalışıtırılabilir plug-in tiplerini belirler,
– reflected-xss : Kullanıcının web tarayıcısındaki kendi XSS korumasını aktive etmesini isteyebilir, daha sonra göreceğimiz
standard’ın parçası olmayan X-XSS-Protection headerının eşdeğeridir.
– report-uri : Politika uyumsuzluklarının bildirileceği URI belirlenir.
Content-Security-Policy 1.0 (cont.)
Http Security Headers I 13
|
CSPHeader Örnek;
Content-Security-Policy:
// Varsayılan kaynak değerini «none» yaparak, olası hatalı configürasyonların önüne geçiyoruz
default-src none;
// «self» ile Scriptlerin kendi domaininden geldiği sürece çalıştırılabileceğini belirtiyoruz
(Inline javascript çalıştırılmasına, Eval() fonksiyonuna ve Google analytics’e izin vermektedir)
script-src self unsafe-inline unsafe-eval https://ssl.google-analytics.com;
// Pluginlerin yüklenebileceği adresleri belirliyoruz
object-src self;
// CSS’lerin çalışma politikasını belirliyoruz
style-src self;
// İmajların çalışma politikasını belirliyoruz
img-src self;
// Form action’larının çalışma politikasını belirliyoruz
form-action self;
// Ses ve video dosyalarının çalışma politikasını belirliyoruz
media-src self;
// Font’ların çalışma politikasını belirliyoruz
font-src self;
// Scriptlerin bağlanabileceği adres politikasını belirliyoruz
connect-src self;
// Çalıştırılabilir plugin tiplerini belirliyoruz
plugin-types application/pdf application/x-shockwave-flash;
// Web tarayıcını kendi XSS korumasını aktive etmesini sağlıyoruz
reflected-xss block;
Content-Security-Policy 1.0 (cont.)
Http Security Headers I 14
|
Content-Security-Policy 1.0 (cont.)
Http Security Headers I 15
Referans: http://caniuse.com
|
CSP 1.0’da tek tek hangi scriptlerin çalıştırılabileceği seçilememekteydi. Bu durum çoğu zaman yol açtığı problemler
nedeniyle inline scriptlere genel olarak izin verilmesine ve istenilen güvenlik seviyesinin sağlanamamasına neden olmaktaydı.
Content-Security-Policy 2.0
Http Security Headers I 16
CSP 2.0 Nonce kullanımı;
Content-Security-Policy: default-src 'self';
script-src 'self' https://example.com 'nonce-$RANDOM'
Web Tarayıcıya gelen header değeri;
Content-Security-Policy: default-src 'self';
script-src 'self' https://example.com 'nonce-Nc3n83cnSAd3wc3Sasdfn939hc3'
<script>
alert("Blocked because the policy doesn’t have 'unsafe-inline'.")
</script>
<script nonce="EDNnf03nceIOfn39fn3e9h3sdfa">
alert("Still blocked because nonce is wrong.")
</script>
<script nonce="Nc3n83cnSAd3wc3Sasdfn939hc3">
alert("Allowed because nonce is valid.")
</script>
<script src=/slideshow/owasptr-uygulama-gvenlii-gn-2016-emre-ksa-http-gvenlik-balklar-ve-trkiyedeki-sitelerin-analizi/60217566/"https:/example.com/allowed-because-of-src.js"></script>
<script nonce="EDNnf03nceIOfn39fn3e9h3sdfa"
src="https://elsewhere.com/blocked-because-nonce-is-wrong.js"></script>
<script nonce="Nc3n83cnSAd3wc3Sasdfn939hc3"
src="https://elsewhere.com/allowed-because-nonce-is-valid.js"></script>
Script örnekleri;
|
Content-Security-Policy 2.0
Http Security Headers I 17
|
Content-Security-Policy 2.0
Http Security Headers I 18
Referans: http://caniuse.com
|
• Web tarayıcının kendi XSS (Cross-site-scripting) atak korumasını devreye sokar
• Reflected XSS saldırılarına karşın, browser tarafından pattern matching yapılarak, XSS saldırıları
tespit edilmeye çalışılmaktadır.
• x-xss-protection 1 mode=block
Normalde XSS payloadı tespit ettiğinde, yalnızca ilgili payloadı etkisiz hale getirir ancak block
modda çalıştırıldığında tüm sayfadaki scriptlerin çalıştırılmasını durdurur.
• CSP reflected-xss direktifi ile aynı işleve sahip
• Tarayıcı desteği;
– Internet Explorer 8+ (Internet, Trusted, Restricted güvenlik alanlarında varsayılan değer
olarak aktif, Local Intranet güvenlik alanındaki siteler manuel olarak aktive etmelidir.
–Chrome 4+ varsayılan olarak aktiftir.
X-XSS-Protection
Http Security Headers I 19
|
• Clickjacking / UI Redress saldırılarına karşı koruma sağlar.
• Click + Hijacking = Clickjacking
X-Frame-Options
Http Security Headers I 20
• Same origin : Hem iFrame hem de web sayfası aynı domaindeyse izin verir.
• Deny : Web sayfasının hiçbir şekilde bir iFrame içersinde gösterimine izin vermez.
• Allow from : Yalnızca izin verilen domainlerde iFrame içerisinde gösterime izin verir.
|
X-Frame-Options : DENY
Http Security Headers I 21
|
X-Frame-Options : Web Tarayıcı Desteği
Http Security Headers I 22
|
• Web tarayıcının HTTP ile iletişim kurmasını engeller, yalnızca HTTPS protokolü ile iletişime izin verir.
• Web Tarayıcı HTTP’ye gelen istekleri otomatik olarak HTTPS’ye çevirir. Böylece sitede unutulan HTTP
bağlantıları olsa bile kullanımını engeller.
• Man-In-The-Middle saldırganı kendi ürettiği sertifikayı kurbana kabul ettirse dahi, HSTS başlığı gören
web tarayıcısı kullanıcının siteye bağlanması engelleyecektir.
• Örnek kullanım;
–Strict-Transport-Security: max-age=3153600
En basit kullanım şeklidir
–Strict-Transport-Security: max-age=3153600; includeSubDomains
Alt domainlere de etki eder
–Strict-Transport-Security: max-age=3153600; includeSubDomains; preload
«Preload» listesindedir.
HTTP Strict-Transport-Security
Http Security Headers I 23
|
• «Preload» listesi ile web uygulamanız Web Tarayıcılara HTTPS Only olarak hard-coded
şekilde girer. Liste Chrome tarafından yönetilmektedir. (https://hstspreload.appspot.com)
HTTP Strict-Transport-Security (cont.)
FootNote Http Security Headers I 24
Gereksinimler;
1.Geçerli bir sertifikaya sahip olun
2.Tüm HTTP Trafiğini HTTPS’ye redirect edin
3.Tüm alt domainleri HTTPS’ye çevirin, (DNS kaydında varsa www altdomaini dahil)
4.Ana domainde HSTS başlığını bulundurun:
•Geçerlilik tarihi en az 18 hafta olmalı (10886400 saniye).
• «includeSubdomains» belirteci bulunmalıdır
• «preload» belirteci bulunmalıdır.
• Sayfanızdan dışarıya redirect yönlendirmeleri varsa, ilgili redirect sayfaları için de
(yönlendirme yaptığınız sayfalar değil) HSTS başlığı bulunmalıdır.
|
• Set-cookie $RANDOM;
–Temel olarak Kullanıcının sunucu tarafından tanınması amacıyla kullanılmaktadır.
• Set-cookie $RANDOM; HttpOnly;
– Cookie (çerez) değerinin yalnızca HTTP ile iletilmesine izin verir, Javascript, Flash vb. ile cookie
değerine erişim sağlanamaz.
–Cookie deperinin XSS vb. saldırılarla çalınmasını güçleştirir.
• Set-cookie $RANDOM; HttpOnly; Secure;
–Cookie değerinin yalnızca HTTPS üzerinden, güvenli kanallar ile iletilmesini sağlamaktadır.
Set-Cookie
Http Security Headers I 25
|
• MIME content-sniffing ataklarına karşı koruma sağlar. Internet Explorer 7 ve öncesinde zafiyet
bulunmaktadır.
• Bu ataklar kullanıcının web uygulamasına imaj, doküman vb. dosya yükleyebildiği, diğer
kullanıcıların da bu dosyalara erişebildiği durumlarda kullanılabilmektedir.
• Content Sniffing : Web tarayıcı byte kod analizi ile yüklenen dosyanın tipini bulur. Uygun bir dosyayı
bulduğunda da sunucunun ilettiğinden bağımsız olarak, kendi anladığı formatta göstermeye çalışır
• Saldırı adımları;
–Kötü niyetli birisi GIF dosyasının içerisine HTML kodu koyarak, bunu web uygulamasına yükler
–GIF dosyasını görüntüleyen diğer kullanıcılar, web tarayıcının GIF dosyasına «content sniffing»
yaparak, içerisinde HTML olduğunu anlaması nedeniyle, kötü niyetli HTML’i istemeden çalıştırır.
• Örnek Kullanım : X-Content-Type-Options: nosniff
X-Content-Type-Options
Http Security Headers I 26
|
• Web sunucusundan indirilen bir dosyaya web tarayacı tarafından nasıl davranılacağı belirlenir.
• X-Download-Options: noopen olarak kullanılması durumunda tarayıcı dosyayı download etmekten
başka alternatif sunmaz.
• HTML olarak yüklenen dosyalar Internet Explorer ile «save» yerine «open» edildiğinde, o sitenin
cookie değerlerine erişebilmektedir.
X-Download-Options
FootNote Presentaion Title I 7
X-Download-Options X-Download-Options: noopen
|
• Adobe Flash ve Acrobat Reader programlarının web sitesi üzerinde hangi kaynaklara erişebileceğini
kısıtlamak için kullanılır.
• Örnek kullanım;
–X-Permitted-Cross-Domain-Policies : none
Cross-domain erişime izin verilmez.
–X-Permitted-Cross-Domain-Policies : master-only
Yalnızca ilgili domaine ait cross-domain.xml’in okunmasına izin verecektir.
X-Permitted-Cross-Domain-Policies
Http Security Headers I 28
<?xml version="1.0" encoding="UTF-8"?>
<cross-domain-policy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.adobe.com/xml/schemas/PolicyFile.xsd">
<allow-access-from domain="twitter.com" />
<allow-access-from domain="api.twitter.com" />
<allow-access-from domain="search.twitter.com" />
<allow-access-from domain="static.twitter.com" />
<site-control permitted-cross-domain-policies="master-only"/>
<allow-http-request-headers-from domain="*.twitter.com" headers="*" secure="true"/>
</cross-domain-policy>
• Twitter cross-domain.xml
|
• Certificate Pinning : Sertifikanın istemci tarafından doğrulanması işlemidir.
• Man-In-The-Middle saldırılarına karşı, saldırgan sahte bir sertifika ile HTTPS trafiğini izlemek üzere
araya girmeyi başarsa dahi, istemci tarafında sertifika hash doğrulamasından geçirilmektedir.
• = Base64 (sha256(sertifika))
• Public-Key-Pins: max-age=3000;
pin-sha256="d6qzRu9zOECb90Uez27xWltNsj0e1Md7GkYYkVoZWmM=";
• Tarayıcı desteği;
Public-Key-Pins
FootNote Presentaion Title I 7
||
Türkiye’de Durum
05
Http Security Headers I 30
| Http Security Headers I 31
Alexa Türkiye Top 500’den, Türkiye odaklı(*) Top 348 site
(*) Türkiye odaklı sitelerin hesaplanmasında, ilgili siteye gelen trafiğe göre, ilk 5’de Türkiye olanlar hesaplamaya dahil edilmiştir.
| Http Security Headers I 32
Alexa Türkiye Top 500’den, Türkiye odaklı(*) Top 348 site
Sektörel Dağılım
(*) Türkiye odaklı sitelerin hesaplanmasında, ilgili siteye gelen trafiğe göre, ilk 5’de Türkiye olanlar hesaplamaya dahil edilmiştir.
|| Http Security Headers I 33
Daha Fazlası İçin
06
https://securityheaders.io/
||
Teşekkürler
Http Security Headers I 34
07
Sorular?

More Related Content

What's hot (20)

Beyaz Şapkalı Hacker CEH Eğitimi - Post Exploit Aşaması
Beyaz Şapkalı Hacker CEH Eğitimi - Post Exploit AşamasıBeyaz Şapkalı Hacker CEH Eğitimi - Post Exploit Aşaması
Beyaz Şapkalı Hacker CEH Eğitimi - Post Exploit Aşaması
PRISMA CSI
WAF atlatma yontemleri, Hacktrick14, Suleyman Ozarslan
WAF atlatma yontemleri, Hacktrick14,  Suleyman OzarslanWAF atlatma yontemleri, Hacktrick14,  Suleyman Ozarslan
WAF atlatma yontemleri, Hacktrick14, Suleyman Ozarslan
Süleyman Özarslan
ISTSEC 2013 - Fuzzy Tabanlı Zaafiyet Araştırması
ISTSEC 2013 - Fuzzy Tabanlı Zaafiyet AraştırmasıISTSEC 2013 - Fuzzy Tabanlı Zaafiyet Araştırması
ISTSEC 2013 - Fuzzy Tabanlı Zaafiyet Araştırması
BGA Cyber Security
Windows 7 Ortamında Zararlı Yazılım Analizi
Windows 7 Ortamında Zararlı Yazılım AnaliziWindows 7 Ortamında Zararlı Yazılım Analizi
Windows 7 Ortamında Zararlı Yazılım Analizi
BGA Cyber Security
Content security policy (csp)
Content security policy (csp)Content security policy (csp)
Content security policy (csp)
Çağlar ORHAN
Beyaz Şapkalı Hacker CEH Eğitimi - Parola Kırma Saldırıları
Beyaz Şapkalı Hacker CEH Eğitimi - Parola Kırma SaldırılarıBeyaz Şapkalı Hacker CEH Eğitimi - Parola Kırma Saldırıları
Beyaz Şapkalı Hacker CEH Eğitimi - Parola Kırma Saldırıları
PRISMA CSI
W3af ile Web Uygulama Güvenlik Testleri – II
W3af ile Web Uygulama Güvenlik Testleri – IIW3af ile Web Uygulama Güvenlik Testleri – II
W3af ile Web Uygulama Güvenlik Testleri – II
BGA Cyber Security
Beyaz Şapkalı Hacker CEH Eğitimi - Exploit Aşaması
Beyaz Şapkalı Hacker CEH Eğitimi - Exploit AşamasıBeyaz Şapkalı Hacker CEH Eğitimi - Exploit Aşaması
Beyaz Şapkalı Hacker CEH Eğitimi - Exploit Aşaması
PRISMA CSI
Beyaz Şapkalı Hacker CEH Eğitimi - Zafiyet Keşfi
Beyaz Şapkalı Hacker CEH Eğitimi - Zafiyet KeşfiBeyaz Şapkalı Hacker CEH Eğitimi - Zafiyet Keşfi
Beyaz Şapkalı Hacker CEH Eğitimi - Zafiyet Keşfi
PRISMA CSI
Web Sunucularına Yönelik DDoS Saldırıları
Web Sunucularına Yönelik DDoS SaldırılarıWeb Sunucularına Yönelik DDoS Saldırıları
Web Sunucularına Yönelik DDoS Saldırıları
BGA Cyber Security
Puppet ile Linux Sistem Yönetimi Otomasyonu
Puppet ile Linux Sistem Yönetimi OtomasyonuPuppet ile Linux Sistem Yönetimi Otomasyonu
Puppet ile Linux Sistem Yönetimi Otomasyonu
BilgiO A.S / Linux Akademi
Her yönüyle linux sistem ve network güvenliği
Her yönüyle linux sistem ve network güvenliğiHer yönüyle linux sistem ve network güvenliği
Her yönüyle linux sistem ve network güvenliği
Ahmet Han
Nginx sunu 2014
Nginx sunu 2014Nginx sunu 2014
Nginx sunu 2014
Mert Akkaya
Kali linux
Kali linuxKali linux
Kali linux
BGA Cyber Security
LINUX, WINDOWS VE AĞ SİSTEMLERİ SIZMA TESTLERİ
LINUX, WINDOWS VE AĞ SİSTEMLERİ SIZMA TESTLERİ LINUX, WINDOWS VE AĞ SİSTEMLERİ SIZMA TESTLERİ
LINUX, WINDOWS VE AĞ SİSTEMLERİ SIZMA TESTLERİ
BGA Cyber Security
Beyaz Şapkalı Hacker CEH Eğitimi - Post Exploit Aşaması
Beyaz Şapkalı Hacker CEH Eğitimi - Post Exploit AşamasıBeyaz Şapkalı Hacker CEH Eğitimi - Post Exploit Aşaması
Beyaz Şapkalı Hacker CEH Eğitimi - Post Exploit Aşaması
PRISMA CSI
WAF atlatma yontemleri, Hacktrick14, Suleyman Ozarslan
WAF atlatma yontemleri, Hacktrick14,  Suleyman OzarslanWAF atlatma yontemleri, Hacktrick14,  Suleyman Ozarslan
WAF atlatma yontemleri, Hacktrick14, Suleyman Ozarslan
Süleyman Özarslan
ISTSEC 2013 - Fuzzy Tabanlı Zaafiyet Araştırması
ISTSEC 2013 - Fuzzy Tabanlı Zaafiyet AraştırmasıISTSEC 2013 - Fuzzy Tabanlı Zaafiyet Araştırması
ISTSEC 2013 - Fuzzy Tabanlı Zaafiyet Araştırması
BGA Cyber Security
Windows 7 Ortamında Zararlı Yazılım Analizi
Windows 7 Ortamında Zararlı Yazılım AnaliziWindows 7 Ortamında Zararlı Yazılım Analizi
Windows 7 Ortamında Zararlı Yazılım Analizi
BGA Cyber Security
Content security policy (csp)
Content security policy (csp)Content security policy (csp)
Content security policy (csp)
Çağlar ORHAN
Beyaz Şapkalı Hacker CEH Eğitimi - Parola Kırma Saldırıları
Beyaz Şapkalı Hacker CEH Eğitimi - Parola Kırma SaldırılarıBeyaz Şapkalı Hacker CEH Eğitimi - Parola Kırma Saldırıları
Beyaz Şapkalı Hacker CEH Eğitimi - Parola Kırma Saldırıları
PRISMA CSI
W3af ile Web Uygulama Güvenlik Testleri – II
W3af ile Web Uygulama Güvenlik Testleri – IIW3af ile Web Uygulama Güvenlik Testleri – II
W3af ile Web Uygulama Güvenlik Testleri – II
BGA Cyber Security
Beyaz Şapkalı Hacker CEH Eğitimi - Exploit Aşaması
Beyaz Şapkalı Hacker CEH Eğitimi - Exploit AşamasıBeyaz Şapkalı Hacker CEH Eğitimi - Exploit Aşaması
Beyaz Şapkalı Hacker CEH Eğitimi - Exploit Aşaması
PRISMA CSI
Beyaz Şapkalı Hacker CEH Eğitimi - Zafiyet Keşfi
Beyaz Şapkalı Hacker CEH Eğitimi - Zafiyet KeşfiBeyaz Şapkalı Hacker CEH Eğitimi - Zafiyet Keşfi
Beyaz Şapkalı Hacker CEH Eğitimi - Zafiyet Keşfi
PRISMA CSI
Web Sunucularına Yönelik DDoS Saldırıları
Web Sunucularına Yönelik DDoS SaldırılarıWeb Sunucularına Yönelik DDoS Saldırıları
Web Sunucularına Yönelik DDoS Saldırıları
BGA Cyber Security
Her yönüyle linux sistem ve network güvenliği
Her yönüyle linux sistem ve network güvenliğiHer yönüyle linux sistem ve network güvenliği
Her yönüyle linux sistem ve network güvenliği
Ahmet Han
LINUX, WINDOWS VE AĞ SİSTEMLERİ SIZMA TESTLERİ
LINUX, WINDOWS VE AĞ SİSTEMLERİ SIZMA TESTLERİ LINUX, WINDOWS VE AĞ SİSTEMLERİ SIZMA TESTLERİ
LINUX, WINDOWS VE AĞ SİSTEMLERİ SIZMA TESTLERİ
BGA Cyber Security

Viewers also liked (8)

[OWASP-TR Uygulama Güvenliği Günü 2016] Özgür Alp - HTTP/2 ve Güvenlik
[OWASP-TR Uygulama Güvenliği Günü 2016] Özgür Alp - HTTP/2 ve Güvenlik[OWASP-TR Uygulama Güvenliği Günü 2016] Özgür Alp - HTTP/2 ve Güvenlik
[OWASP-TR Uygulama Güvenliği Günü 2016] Özgür Alp - HTTP/2 ve Güvenlik
OWASP Turkiye
[OWASP-TR Uygulama Güvenliği Günü 2016] Gökmen Güreşçi - Web Uygulamalarında ...
[OWASP-TR Uygulama Güvenliği Günü 2016] Gökmen Güreşçi - Web Uygulamalarında ...[OWASP-TR Uygulama Güvenliği Günü 2016] Gökmen Güreşçi - Web Uygulamalarında ...
[OWASP-TR Uygulama Güvenliği Günü 2016] Gökmen Güreşçi - Web Uygulamalarında ...
OWASP Turkiye
Web Uygulamalarının Hacklenmesi
Web Uygulamalarının HacklenmesiWeb Uygulamalarının Hacklenmesi
Web Uygulamalarının Hacklenmesi
Ömer Çıtak
Web for Pentester 2 ile Web Uygulama Güvenligine Giris
Web for Pentester 2 ile Web Uygulama Güvenligine GirisWeb for Pentester 2 ile Web Uygulama Güvenligine Giris
Web for Pentester 2 ile Web Uygulama Güvenligine Giris
Umut Ergin
Memcache Injection (Hacktrick'15)
Memcache Injection (Hacktrick'15)Memcache Injection (Hacktrick'15)
Memcache Injection (Hacktrick'15)
Ömer Çıtak
Bir Şeyi Hacklemek (DEU ACM Bilişim Günleri 2016)
Bir Şeyi Hacklemek (DEU ACM Bilişim Günleri 2016)Bir Şeyi Hacklemek (DEU ACM Bilişim Günleri 2016)
Bir Şeyi Hacklemek (DEU ACM Bilişim Günleri 2016)
Ömer Çıtak
Web Uygulama Güvenliği (Akademik Bilişim 2016)
Web Uygulama Güvenliği (Akademik Bilişim 2016)Web Uygulama Güvenliği (Akademik Bilişim 2016)
Web Uygulama Güvenliği (Akademik Bilişim 2016)
Ömer Çıtak
[OWASP-TR Uygulama Güvenliği Günü 2016] Özgür Alp - HTTP/2 ve Güvenlik
[OWASP-TR Uygulama Güvenliği Günü 2016] Özgür Alp - HTTP/2 ve Güvenlik[OWASP-TR Uygulama Güvenliği Günü 2016] Özgür Alp - HTTP/2 ve Güvenlik
[OWASP-TR Uygulama Güvenliği Günü 2016] Özgür Alp - HTTP/2 ve Güvenlik
OWASP Turkiye
[OWASP-TR Uygulama Güvenliği Günü 2016] Gökmen Güreşçi - Web Uygulamalarında ...
[OWASP-TR Uygulama Güvenliği Günü 2016] Gökmen Güreşçi - Web Uygulamalarında ...[OWASP-TR Uygulama Güvenliği Günü 2016] Gökmen Güreşçi - Web Uygulamalarında ...
[OWASP-TR Uygulama Güvenliği Günü 2016] Gökmen Güreşçi - Web Uygulamalarında ...
OWASP Turkiye
Web Uygulamalarının Hacklenmesi
Web Uygulamalarının HacklenmesiWeb Uygulamalarının Hacklenmesi
Web Uygulamalarının Hacklenmesi
Ömer Çıtak
Web for Pentester 2 ile Web Uygulama Güvenligine Giris
Web for Pentester 2 ile Web Uygulama Güvenligine GirisWeb for Pentester 2 ile Web Uygulama Güvenligine Giris
Web for Pentester 2 ile Web Uygulama Güvenligine Giris
Umut Ergin
Memcache Injection (Hacktrick'15)
Memcache Injection (Hacktrick'15)Memcache Injection (Hacktrick'15)
Memcache Injection (Hacktrick'15)
Ömer Çıtak
Bir Şeyi Hacklemek (DEU ACM Bilişim Günleri 2016)
Bir Şeyi Hacklemek (DEU ACM Bilişim Günleri 2016)Bir Şeyi Hacklemek (DEU ACM Bilişim Günleri 2016)
Bir Şeyi Hacklemek (DEU ACM Bilişim Günleri 2016)
Ömer Çıtak
Web Uygulama Güvenliği (Akademik Bilişim 2016)
Web Uygulama Güvenliği (Akademik Bilişim 2016)Web Uygulama Güvenliği (Akademik Bilişim 2016)
Web Uygulama Güvenliği (Akademik Bilişim 2016)
Ömer Çıtak

Similar to [OWASP-TR Uygulama Güvenliği Günü 2016] Emre Kısa - HTTP Güvenlik Başlıkları ve Türkiyedeki Sitelerin Analizi (20)

Mobil Uygulama Güvenlik Testlerinde Sertifika Sabitleme Özelliğinin Atlatılması
Mobil Uygulama Güvenlik Testlerinde Sertifika Sabitleme Özelliğinin AtlatılmasıMobil Uygulama Güvenlik Testlerinde Sertifika Sabitleme Özelliğinin Atlatılması
Mobil Uygulama Güvenlik Testlerinde Sertifika Sabitleme Özelliğinin Atlatılması
BGA Cyber Security
SINIFLANDIRMA TEMELLİ KORELASYON YAKLAŞIMI
SINIFLANDIRMA TEMELLİ KORELASYON YAKLAŞIMISINIFLANDIRMA TEMELLİ KORELASYON YAKLAŞIMI
SINIFLANDIRMA TEMELLİ KORELASYON YAKLAŞIMI
Ertugrul Akbas
45965 php-source-code-analysis
45965 php-source-code-analysis45965 php-source-code-analysis
45965 php-source-code-analysis
Attaporn Ninsuwan
Guvenli Flash Uygulamalari
Guvenli Flash UygulamalariGuvenli Flash Uygulamalari
Guvenli Flash Uygulamalari
Ferruh Mavituna
Web Application Firewall Tercih Rehberi
Web Application Firewall Tercih RehberiWeb Application Firewall Tercih Rehberi
Web Application Firewall Tercih Rehberi
BGA Cyber Security
Dogus University-Web Application Security
Dogus University-Web Application SecurityDogus University-Web Application Security
Dogus University-Web Application Security
mtimur
HTTPKullaniciAsillamaveYetkilendirme.ppt
HTTPKullaniciAsillamaveYetkilendirme.pptHTTPKullaniciAsillamaveYetkilendirme.ppt
HTTPKullaniciAsillamaveYetkilendirme.ppt
CenkKAYA9
Oracle Cloud Servisleri Uygulaması- Oracle Cloud Day 2015 Istanbul
Oracle Cloud Servisleri Uygulaması- Oracle Cloud Day 2015 IstanbulOracle Cloud Servisleri Uygulaması- Oracle Cloud Day 2015 Istanbul
Oracle Cloud Servisleri Uygulaması- Oracle Cloud Day 2015 Istanbul
Garanti Teknoloji
Siber Güvenlikte Ofansif Yaklaşımlar
Siber Güvenlikte Ofansif YaklaşımlarSiber Güvenlikte Ofansif Yaklaşımlar
Siber Güvenlikte Ofansif Yaklaşımlar
Siber Güvenlik Derneği
ZERO BANK WEB APP SECURITY BULGULARI
ZERO BANK WEB APP SECURITY BULGULARIZERO BANK WEB APP SECURITY BULGULARI
ZERO BANK WEB APP SECURITY BULGULARI
Onur GÜRBÜZ
Spring Web Service
Spring Web ServiceSpring Web Service
Spring Web Service
dasgin
Güvenlik Sistemlerini Atlatma ve Alınacak Dersler
Güvenlik Sistemlerini Atlatma  ve Alınacak DerslerGüvenlik Sistemlerini Atlatma  ve Alınacak Dersler
Güvenlik Sistemlerini Atlatma ve Alınacak Dersler
BGA Cyber Security
Packet-O-Matic:Network Forensic Aracı
Packet-O-Matic:Network Forensic AracıPacket-O-Matic:Network Forensic Aracı
Packet-O-Matic:Network Forensic Aracı
BGA Cyber Security
Security Misconfiguration (Güvenlik Yalnış Yapılandırma)
Security Misconfiguration (Güvenlik Yalnış Yapılandırma)Security Misconfiguration (Güvenlik Yalnış Yapılandırma)
Security Misconfiguration (Güvenlik Yalnış Yapılandırma)
Abdullah Celik
WEB ve MOBİL SIZMA TESTLERİ
WEB ve MOBİL SIZMA TESTLERİ WEB ve MOBİL SIZMA TESTLERİ
WEB ve MOBİL SIZMA TESTLERİ
BGA Cyber Security
Mobil Uygulama Güvenlik Testlerinde Sertifika Sabitleme Özelliğinin Atlatılması
Mobil Uygulama Güvenlik Testlerinde Sertifika Sabitleme Özelliğinin AtlatılmasıMobil Uygulama Güvenlik Testlerinde Sertifika Sabitleme Özelliğinin Atlatılması
Mobil Uygulama Güvenlik Testlerinde Sertifika Sabitleme Özelliğinin Atlatılması
BGA Cyber Security
SINIFLANDIRMA TEMELLİ KORELASYON YAKLAŞIMI
SINIFLANDIRMA TEMELLİ KORELASYON YAKLAŞIMISINIFLANDIRMA TEMELLİ KORELASYON YAKLAŞIMI
SINIFLANDIRMA TEMELLİ KORELASYON YAKLAŞIMI
Ertugrul Akbas
Web Application Firewall Tercih Rehberi
Web Application Firewall Tercih RehberiWeb Application Firewall Tercih Rehberi
Web Application Firewall Tercih Rehberi
BGA Cyber Security
Dogus University-Web Application Security
Dogus University-Web Application SecurityDogus University-Web Application Security
Dogus University-Web Application Security
mtimur
HTTPKullaniciAsillamaveYetkilendirme.ppt
HTTPKullaniciAsillamaveYetkilendirme.pptHTTPKullaniciAsillamaveYetkilendirme.ppt
HTTPKullaniciAsillamaveYetkilendirme.ppt
CenkKAYA9
Oracle Cloud Servisleri Uygulaması- Oracle Cloud Day 2015 Istanbul
Oracle Cloud Servisleri Uygulaması- Oracle Cloud Day 2015 IstanbulOracle Cloud Servisleri Uygulaması- Oracle Cloud Day 2015 Istanbul
Oracle Cloud Servisleri Uygulaması- Oracle Cloud Day 2015 Istanbul
Garanti Teknoloji
ZERO BANK WEB APP SECURITY BULGULARI
ZERO BANK WEB APP SECURITY BULGULARIZERO BANK WEB APP SECURITY BULGULARI
ZERO BANK WEB APP SECURITY BULGULARI
Onur GÜRBÜZ
Spring Web Service
Spring Web ServiceSpring Web Service
Spring Web Service
dasgin
Güvenlik Sistemlerini Atlatma ve Alınacak Dersler
Güvenlik Sistemlerini Atlatma  ve Alınacak DerslerGüvenlik Sistemlerini Atlatma  ve Alınacak Dersler
Güvenlik Sistemlerini Atlatma ve Alınacak Dersler
BGA Cyber Security
Packet-O-Matic:Network Forensic Aracı
Packet-O-Matic:Network Forensic AracıPacket-O-Matic:Network Forensic Aracı
Packet-O-Matic:Network Forensic Aracı
BGA Cyber Security
Security Misconfiguration (Güvenlik Yalnış Yapılandırma)
Security Misconfiguration (Güvenlik Yalnış Yapılandırma)Security Misconfiguration (Güvenlik Yalnış Yapılandırma)
Security Misconfiguration (Güvenlik Yalnış Yapılandırma)
Abdullah Celik

More from OWASP Turkiye (9)

[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Yalçın Çakmak - Social Media Apps Fo...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Yalçın Çakmak - Social Media Apps Fo...[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Yalçın Çakmak - Social Media Apps Fo...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Yalçın Çakmak - Social Media Apps Fo...
OWASP Turkiye
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Ömer Faruk Acar - Mobil Uygulamalar ...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Ömer Faruk Acar - Mobil Uygulamalar ...[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Ömer Faruk Acar - Mobil Uygulamalar ...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Ömer Faruk Acar - Mobil Uygulamalar ...
OWASP Turkiye
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Bahtiyar Bircan - PwnPhone: Cepteki ...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Bahtiyar Bircan - PwnPhone: Cepteki ...[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Bahtiyar Bircan - PwnPhone: Cepteki ...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Bahtiyar Bircan - PwnPhone: Cepteki ...
OWASP Turkiye
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Oğuzhan Topgül - iOS'da Zararlı Yazı...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Oğuzhan Topgül - iOS'da Zararlı Yazı...[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Oğuzhan Topgül - iOS'da Zararlı Yazı...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Oğuzhan Topgül - iOS'da Zararlı Yazı...
OWASP Turkiye
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Mehmet Sabır Kiraz & Osmanbey Uzunko...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Mehmet Sabır Kiraz & Osmanbey Uzunko...[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Mehmet Sabır Kiraz & Osmanbey Uzunko...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Mehmet Sabır Kiraz & Osmanbey Uzunko...
OWASP Turkiye
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Sertel Şıracı - Mobil Uygulama Güven...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Sertel Şıracı - Mobil Uygulama Güven...[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Sertel Şıracı - Mobil Uygulama Güven...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Sertel Şıracı - Mobil Uygulama Güven...
OWASP Turkiye
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Ahmet Can Kan - Attacking Mobile App...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Ahmet Can Kan - Attacking Mobile App...[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Ahmet Can Kan - Attacking Mobile App...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Ahmet Can Kan - Attacking Mobile App...
OWASP Turkiye
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Bakır Emre - Cebinizdeki Hırsız
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Bakır Emre - Cebinizdeki Hırsız[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Bakır Emre - Cebinizdeki Hırsız
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Bakır Emre - Cebinizdeki Hırsız
OWASP Turkiye
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Fatih Emiral - Android Uygulamalara ...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Fatih Emiral - Android Uygulamalara ...[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Fatih Emiral - Android Uygulamalara ...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Fatih Emiral - Android Uygulamalara ...
OWASP Turkiye
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Yalçın Çakmak - Social Media Apps Fo...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Yalçın Çakmak - Social Media Apps Fo...[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Yalçın Çakmak - Social Media Apps Fo...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Yalçın Çakmak - Social Media Apps Fo...
OWASP Turkiye
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Ömer Faruk Acar - Mobil Uygulamalar ...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Ömer Faruk Acar - Mobil Uygulamalar ...[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Ömer Faruk Acar - Mobil Uygulamalar ...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Ömer Faruk Acar - Mobil Uygulamalar ...
OWASP Turkiye
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Bahtiyar Bircan - PwnPhone: Cepteki ...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Bahtiyar Bircan - PwnPhone: Cepteki ...[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Bahtiyar Bircan - PwnPhone: Cepteki ...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Bahtiyar Bircan - PwnPhone: Cepteki ...
OWASP Turkiye
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Oğuzhan Topgül - iOS'da Zararlı Yazı...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Oğuzhan Topgül - iOS'da Zararlı Yazı...[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Oğuzhan Topgül - iOS'da Zararlı Yazı...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Oğuzhan Topgül - iOS'da Zararlı Yazı...
OWASP Turkiye
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Mehmet Sabır Kiraz & Osmanbey Uzunko...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Mehmet Sabır Kiraz & Osmanbey Uzunko...[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Mehmet Sabır Kiraz & Osmanbey Uzunko...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Mehmet Sabır Kiraz & Osmanbey Uzunko...
OWASP Turkiye
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Sertel Şıracı - Mobil Uygulama Güven...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Sertel Şıracı - Mobil Uygulama Güven...[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Sertel Şıracı - Mobil Uygulama Güven...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Sertel Şıracı - Mobil Uygulama Güven...
OWASP Turkiye
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Ahmet Can Kan - Attacking Mobile App...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Ahmet Can Kan - Attacking Mobile App...[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Ahmet Can Kan - Attacking Mobile App...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Ahmet Can Kan - Attacking Mobile App...
OWASP Turkiye
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Bakır Emre - Cebinizdeki Hırsız
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Bakır Emre - Cebinizdeki Hırsız[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Bakır Emre - Cebinizdeki Hırsız
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Bakır Emre - Cebinizdeki Hırsız
OWASP Turkiye
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Fatih Emiral - Android Uygulamalara ...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Fatih Emiral - Android Uygulamalara ...[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Fatih Emiral - Android Uygulamalara ...
[OWASP-TR Mobil Güvenlik Çalıştayı 2015] Fatih Emiral - Android Uygulamalara ...
OWASP Turkiye

[OWASP-TR Uygulama Güvenliği Günü 2016] Emre Kısa - HTTP Güvenlik Başlıkları ve Türkiyedeki Sitelerin Analizi

  • 3. || İçerik  01 Hakkımda  02 Web Uygulamaları HTTP nedir Nasıl çalışır Same-origin politikası  03 Kısaca OWASP Top 10  04 HTTP Security Headers CSP 1.0 – 2.0 & Demo X-XSS Protection X-Frame-Options & Demo Strict-Transport-Security Set-Cookie X-Content-Type-Options X-Download-Options X-Permitted-Cross-Domain-Policies Public-Key-Pins  05 Türkiye’de Durum – Alexa TR Top 500 İncelemesi  06 Daha Fazlası İçin  07 Sorular HTTP Security Headers I 3
  • 4. || Özgeçmiş K. Emre KISA 01 Http Security Headers I 4 Kıdemli Uygulama Güvenliği Mimarı Türk Telekom 2012 - ODTÜ 2008 – Çankaya Üniversitesi
  • 6. | HTTP bir kaynaktan dağıtılan ve ortak kullanıma açık olan hiperortam (hypermedia) bilgi sistemleri için uygulama seviyesinde bir iletişim protokolüdür. (H)yper (T)ext (T)ransfer (P)rotocol Http Security Headers I 6
  • 7. | HTTP (Cont.) Http Security Headers I 7 HTTP Request HTTP Processing HTTP Response
  • 8. | • Farklı kaynaklar birbirinden izole şekilde çalıştırılmalıdır • Same origin : Aynı protokol + aynı host + aynı port Same-Origin Politikası • Same-Origin
  • 9. || OWASP TOP 10 03 Http Security Headers I 9
  • 10. | OWASP Top 10 Http Security Headers I 10
  • 11. || Http Security Headers I 11 HTTP Security Headers 04
  • 12. | • Browser tarafından hangi adresten, hangi tipte kaynağın yüklenip, çalıştırılabileceğini belirlememizi sağlayan bir W3C standardıdır. Content-Security-Policy 1.0 Http Security Headers I 12 Content-Security-Policy : W3C standartı olarak belirlenen başlıktır, • Chrome versiyon 25+, • Firefox versiyon 23+, • Opera versiyon 19+ • Safari 7+ • Microsoft Edge 12 build 10240+ tarafından desteklenmektedir. X-Content-Security-Policy : • Internet Explorer 10+, • Firefox 4+ sonrası tarafından desteklenmektedir. X-WebKit-CSP : • Chrome versiyon 14-25, • Safari 6+ tarafından desteklenmektedir.
  • 13. | • Desteklenen direktifler; – default-src : Kaynağın tipi belirtilmedikçe, varsayılan olarak kullanılacak direktiftir. (fallback), – script-src : Hangi script’in çalıştırılabileceğini belirtir, – object-src : Pluginlerin nereden yüklenebileceğini belirtir, (<object>, <embed> ya da <applet>) – style-src : CSS dosyalarının nereden yüklenebileceğini belirtir, – img-src : İmaj dosyalarının nereden yüklenebileceğini belirtir, – media-src : Video ve ses dosyalarının nereden yüklenebileceğini belirtir, (<audio>, <video>) – font-src : Font dosyalarının nereden yüklenebileceğini belirtir, – connect-src : Scriptler aracılığıyla hangi URI’lerin yüklenebileceğini belirtir, – form-action : Hangi URI’lerin form elementlerinde action olarak tanımlanabileceğini belirtir, – sandbox : Kaynağa web tarayıcı tarafından uygulanması istenen HTML sandbox politikası belirtir, (same-origin politikası uygulanması, pop-up, plugin, script engellenmesi) – plugin-types : çalışıtırılabilir plug-in tiplerini belirler, – reflected-xss : Kullanıcının web tarayıcısındaki kendi XSS korumasını aktive etmesini isteyebilir, daha sonra göreceğimiz standard’ın parçası olmayan X-XSS-Protection headerının eşdeğeridir. – report-uri : Politika uyumsuzluklarının bildirileceği URI belirlenir. Content-Security-Policy 1.0 (cont.) Http Security Headers I 13
  • 14. | CSPHeader Örnek; Content-Security-Policy: // Varsayılan kaynak değerini «none» yaparak, olası hatalı configürasyonların önüne geçiyoruz default-src none; // «self» ile Scriptlerin kendi domaininden geldiği sürece çalıştırılabileceğini belirtiyoruz (Inline javascript çalıştırılmasına, Eval() fonksiyonuna ve Google analytics’e izin vermektedir) script-src self unsafe-inline unsafe-eval https://ssl.google-analytics.com; // Pluginlerin yüklenebileceği adresleri belirliyoruz object-src self; // CSS’lerin çalışma politikasını belirliyoruz style-src self; // İmajların çalışma politikasını belirliyoruz img-src self; // Form action’larının çalışma politikasını belirliyoruz form-action self; // Ses ve video dosyalarının çalışma politikasını belirliyoruz media-src self; // Font’ların çalışma politikasını belirliyoruz font-src self; // Scriptlerin bağlanabileceği adres politikasını belirliyoruz connect-src self; // Çalıştırılabilir plugin tiplerini belirliyoruz plugin-types application/pdf application/x-shockwave-flash; // Web tarayıcını kendi XSS korumasını aktive etmesini sağlıyoruz reflected-xss block; Content-Security-Policy 1.0 (cont.) Http Security Headers I 14
  • 15. | Content-Security-Policy 1.0 (cont.) Http Security Headers I 15 Referans: http://caniuse.com
  • 16. | CSP 1.0’da tek tek hangi scriptlerin çalıştırılabileceği seçilememekteydi. Bu durum çoğu zaman yol açtığı problemler nedeniyle inline scriptlere genel olarak izin verilmesine ve istenilen güvenlik seviyesinin sağlanamamasına neden olmaktaydı. Content-Security-Policy 2.0 Http Security Headers I 16 CSP 2.0 Nonce kullanımı; Content-Security-Policy: default-src 'self'; script-src 'self' https://example.com 'nonce-$RANDOM' Web Tarayıcıya gelen header değeri; Content-Security-Policy: default-src 'self'; script-src 'self' https://example.com 'nonce-Nc3n83cnSAd3wc3Sasdfn939hc3' <script> alert("Blocked because the policy doesn’t have 'unsafe-inline'.") </script> <script nonce="EDNnf03nceIOfn39fn3e9h3sdfa"> alert("Still blocked because nonce is wrong.") </script> <script nonce="Nc3n83cnSAd3wc3Sasdfn939hc3"> alert("Allowed because nonce is valid.") </script> <script src=/slideshow/owasptr-uygulama-gvenlii-gn-2016-emre-ksa-http-gvenlik-balklar-ve-trkiyedeki-sitelerin-analizi/60217566/"https:/example.com/allowed-because-of-src.js"></script> <script nonce="EDNnf03nceIOfn39fn3e9h3sdfa" src="https://elsewhere.com/blocked-because-nonce-is-wrong.js"></script> <script nonce="Nc3n83cnSAd3wc3Sasdfn939hc3" src="https://elsewhere.com/allowed-because-nonce-is-valid.js"></script> Script örnekleri;
  • 18. | Content-Security-Policy 2.0 Http Security Headers I 18 Referans: http://caniuse.com
  • 19. | • Web tarayıcının kendi XSS (Cross-site-scripting) atak korumasını devreye sokar • Reflected XSS saldırılarına karşın, browser tarafından pattern matching yapılarak, XSS saldırıları tespit edilmeye çalışılmaktadır. • x-xss-protection 1 mode=block Normalde XSS payloadı tespit ettiğinde, yalnızca ilgili payloadı etkisiz hale getirir ancak block modda çalıştırıldığında tüm sayfadaki scriptlerin çalıştırılmasını durdurur. • CSP reflected-xss direktifi ile aynı işleve sahip • Tarayıcı desteği; – Internet Explorer 8+ (Internet, Trusted, Restricted güvenlik alanlarında varsayılan değer olarak aktif, Local Intranet güvenlik alanındaki siteler manuel olarak aktive etmelidir. –Chrome 4+ varsayılan olarak aktiftir. X-XSS-Protection Http Security Headers I 19
  • 20. | • Clickjacking / UI Redress saldırılarına karşı koruma sağlar. • Click + Hijacking = Clickjacking X-Frame-Options Http Security Headers I 20 • Same origin : Hem iFrame hem de web sayfası aynı domaindeyse izin verir. • Deny : Web sayfasının hiçbir şekilde bir iFrame içersinde gösterimine izin vermez. • Allow from : Yalnızca izin verilen domainlerde iFrame içerisinde gösterime izin verir.
  • 21. | X-Frame-Options : DENY Http Security Headers I 21
  • 22. | X-Frame-Options : Web Tarayıcı Desteği Http Security Headers I 22
  • 23. | • Web tarayıcının HTTP ile iletişim kurmasını engeller, yalnızca HTTPS protokolü ile iletişime izin verir. • Web Tarayıcı HTTP’ye gelen istekleri otomatik olarak HTTPS’ye çevirir. Böylece sitede unutulan HTTP bağlantıları olsa bile kullanımını engeller. • Man-In-The-Middle saldırganı kendi ürettiği sertifikayı kurbana kabul ettirse dahi, HSTS başlığı gören web tarayıcısı kullanıcının siteye bağlanması engelleyecektir. • Örnek kullanım; –Strict-Transport-Security: max-age=3153600 En basit kullanım şeklidir –Strict-Transport-Security: max-age=3153600; includeSubDomains Alt domainlere de etki eder –Strict-Transport-Security: max-age=3153600; includeSubDomains; preload «Preload» listesindedir. HTTP Strict-Transport-Security Http Security Headers I 23
  • 24. | • «Preload» listesi ile web uygulamanız Web Tarayıcılara HTTPS Only olarak hard-coded şekilde girer. Liste Chrome tarafından yönetilmektedir. (https://hstspreload.appspot.com) HTTP Strict-Transport-Security (cont.) FootNote Http Security Headers I 24 Gereksinimler; 1.Geçerli bir sertifikaya sahip olun 2.Tüm HTTP Trafiğini HTTPS’ye redirect edin 3.Tüm alt domainleri HTTPS’ye çevirin, (DNS kaydında varsa www altdomaini dahil) 4.Ana domainde HSTS başlığını bulundurun: •Geçerlilik tarihi en az 18 hafta olmalı (10886400 saniye). • «includeSubdomains» belirteci bulunmalıdır • «preload» belirteci bulunmalıdır. • Sayfanızdan dışarıya redirect yönlendirmeleri varsa, ilgili redirect sayfaları için de (yönlendirme yaptığınız sayfalar değil) HSTS başlığı bulunmalıdır.
  • 25. | • Set-cookie $RANDOM; –Temel olarak Kullanıcının sunucu tarafından tanınması amacıyla kullanılmaktadır. • Set-cookie $RANDOM; HttpOnly; – Cookie (çerez) değerinin yalnızca HTTP ile iletilmesine izin verir, Javascript, Flash vb. ile cookie değerine erişim sağlanamaz. –Cookie deperinin XSS vb. saldırılarla çalınmasını güçleştirir. • Set-cookie $RANDOM; HttpOnly; Secure; –Cookie değerinin yalnızca HTTPS üzerinden, güvenli kanallar ile iletilmesini sağlamaktadır. Set-Cookie Http Security Headers I 25
  • 26. | • MIME content-sniffing ataklarına karşı koruma sağlar. Internet Explorer 7 ve öncesinde zafiyet bulunmaktadır. • Bu ataklar kullanıcının web uygulamasına imaj, doküman vb. dosya yükleyebildiği, diğer kullanıcıların da bu dosyalara erişebildiği durumlarda kullanılabilmektedir. • Content Sniffing : Web tarayıcı byte kod analizi ile yüklenen dosyanın tipini bulur. Uygun bir dosyayı bulduğunda da sunucunun ilettiğinden bağımsız olarak, kendi anladığı formatta göstermeye çalışır • Saldırı adımları; –Kötü niyetli birisi GIF dosyasının içerisine HTML kodu koyarak, bunu web uygulamasına yükler –GIF dosyasını görüntüleyen diğer kullanıcılar, web tarayıcının GIF dosyasına «content sniffing» yaparak, içerisinde HTML olduğunu anlaması nedeniyle, kötü niyetli HTML’i istemeden çalıştırır. • Örnek Kullanım : X-Content-Type-Options: nosniff X-Content-Type-Options Http Security Headers I 26
  • 27. | • Web sunucusundan indirilen bir dosyaya web tarayacı tarafından nasıl davranılacağı belirlenir. • X-Download-Options: noopen olarak kullanılması durumunda tarayıcı dosyayı download etmekten başka alternatif sunmaz. • HTML olarak yüklenen dosyalar Internet Explorer ile «save» yerine «open» edildiğinde, o sitenin cookie değerlerine erişebilmektedir. X-Download-Options FootNote Presentaion Title I 7 X-Download-Options X-Download-Options: noopen
  • 28. | • Adobe Flash ve Acrobat Reader programlarının web sitesi üzerinde hangi kaynaklara erişebileceğini kısıtlamak için kullanılır. • Örnek kullanım; –X-Permitted-Cross-Domain-Policies : none Cross-domain erişime izin verilmez. –X-Permitted-Cross-Domain-Policies : master-only Yalnızca ilgili domaine ait cross-domain.xml’in okunmasına izin verecektir. X-Permitted-Cross-Domain-Policies Http Security Headers I 28 <?xml version="1.0" encoding="UTF-8"?> <cross-domain-policy xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="http://www.adobe.com/xml/schemas/PolicyFile.xsd"> <allow-access-from domain="twitter.com" /> <allow-access-from domain="api.twitter.com" /> <allow-access-from domain="search.twitter.com" /> <allow-access-from domain="static.twitter.com" /> <site-control permitted-cross-domain-policies="master-only"/> <allow-http-request-headers-from domain="*.twitter.com" headers="*" secure="true"/> </cross-domain-policy> • Twitter cross-domain.xml
  • 29. | • Certificate Pinning : Sertifikanın istemci tarafından doğrulanması işlemidir. • Man-In-The-Middle saldırılarına karşı, saldırgan sahte bir sertifika ile HTTPS trafiğini izlemek üzere araya girmeyi başarsa dahi, istemci tarafında sertifika hash doğrulamasından geçirilmektedir. • = Base64 (sha256(sertifika)) • Public-Key-Pins: max-age=3000; pin-sha256="d6qzRu9zOECb90Uez27xWltNsj0e1Md7GkYYkVoZWmM="; • Tarayıcı desteği; Public-Key-Pins FootNote Presentaion Title I 7
  • 31. | Http Security Headers I 31 Alexa Türkiye Top 500’den, Türkiye odaklı(*) Top 348 site (*) Türkiye odaklı sitelerin hesaplanmasında, ilgili siteye gelen trafiğe göre, ilk 5’de Türkiye olanlar hesaplamaya dahil edilmiştir.
  • 32. | Http Security Headers I 32 Alexa Türkiye Top 500’den, Türkiye odaklı(*) Top 348 site Sektörel Dağılım (*) Türkiye odaklı sitelerin hesaplanmasında, ilgili siteye gelen trafiğe göre, ilk 5’de Türkiye olanlar hesaplamaya dahil edilmiştir.
  • 33. || Http Security Headers I 33 Daha Fazlası İçin 06 https://securityheaders.io/