SlideShare a Scribd company logo
1 of 8
Content Security Policy (CSP)
İçerik Güvenliği Politikaları
Çağlar ORHAN – 2017 LYK –AİB Ünv. /BOLU
Content Security Policy / İçerik Güvenliği Politikaları
Çağlar ORHAN – 2017 Linux Yaz Kampı –Abant İzzet Baysal Üniversitesi / BOLU S: 2
Tanım: CSP, içerisinde XSS ve veri enjeksiyonu tipi ataklarında bulunduğu, belirli tip atakların tespiti ve bir ölçüde
hafifletilmesi için eklenmiş bir güvenlik katmanıdır.
CSP tamamen geriye dönük uyumlu planlanmakla birlikte CSP2 de belirtilmiş bazı konularda geriye dönük destek yoktur.
Örneğin desteklemeyen browserlar, CSP uygulamamış sunucularla iletişen browserlar, sadece standart SOP çalıştıran
browserlar sunucudan gelen CSP header’ı basitçe reddeder.
CSP’yi aktif hale getirebilmek için sunucunuzun Content-Security-Policy HTTP Header’ını döndürecek şekilde yeniden
konfigüre edilmesi gerekmektedir.
Bazı yerlerde X-Content-Security-Policy denildiğini görseniz de aldırmayın bu eski bir sürümü ifade etmektedir.
HTTP Header’ı döndürmeye alternatif olarak <meta> etiketi de ekleyebilirsiniz.
Örneğin:
<meta http-equiv="Content-Security-Policy" content="default-src 'self'; img-src https://*; child-src 'none';">
Content Security Policy / İçerik Güvenliği Politikaları
Çağlar ORHAN – 2017 Linux Yaz Kampı –Abant İzzet Baysal Üniversitesi / BOLU S: 3
AMAÇLAR
CSS Tehtitini Azaltmak
CSP’nin ana amacı XSS’i azaltmak ve XSS ataklarını raporlamaktır. XSS atağı browserın sunucudan gelen içeriğe güvenini
sömürerek yapılmaktadır. Kurbanın browserı sunucudan gelen zararlı kodu çalıştırmaktadır, çünkü, bazen içerik geldiğini
söylediği yerden gelmese de browsera göre bu içerik güvendiği sunucudan gelmektedir.
CSP, sunucu adminlerine hedefteki kurban browserın sadece güvenilir domainlerden çalıştırılabilir script indirmesini göz
önüne almasını sağlayarak XSS açığının gerçekleştiği vektörlerin (harici domainlerden gelecek scriptler) miktarını azaltma
veya yok etme şansı verir.
CSP uyumlu bir browser, sadece whitelist domainlerin listesindeki kaynaklardan gelen scriptleri yükler ve çalıştırır. Diğer
tüm kaynaklardan gelen scriptleri, inline script kodlarını ve html attribute’leri içine yazılan event-handler’ları gözardı
eder.
Bu konuda son nokta ise hiçbir scriptin çalışmasını istemeyen sayfaların (web uygulamalarının) bir seçenek olarak global
anlamda scriptlere izin verilmemesini sağlamasıdır.
Paket Koklama Ataklarının (Packet Sniffing Attack) Azaltılması
İçeriğin yükleneceği domainlerin belirtilmesine ek olarak sunucu hangi protokolleri kullanacağını bildirebilir. Örneğin (ve
ideal olarak güvenli bir bakış açısından) bir sunucu tüm içeriğin HTTPS ile yüklenmesi gerektiğini bildirebilir. Bütün bir
data iletişim güvenlik stratejisi, data transferi için sadece HTTPS zorlamasını içermez. Aynı zamanda tüm cookie’leri
secure flag ile işaretleyebilir, tüm http sayfaları otomatik olarak https’ye yönlendirebilir. Siteler aynı zamanda Strict-
Transfer-Security HTTP header’ını kullanarak browserın sadece encrypted kanaldan bağlanmasını sağlayabilir.
CSP’nin Kullanımı
1) Policy’ı belirtin
2) Policy içeriğini detaylı bir şekilde yazın
Content-Security-Policy: Policy
Örnekler:
1. Diğer tüm kaynakları devre dışı bırakarak sadece CSP belirleyen kaynağa izin verin
Content-Security-Policy: default-src 'self‘
2. Bir kaynak belirtin, bu CSP’nin set edildiği kaynakdan başka bir domain de olabilir
Content-Security-Policy: default-src 'self' *.trusted.com
3. Web sitesi yetkilisi kullanıcıya tüm imajları herhangi bir yerden ancak ses ve video içeriklerini güvenilir kaynaktan,
ancak scriptlerin sadece belirli sunuculardaki güvenilir kaynaklardan indirmesini söylüyor.
Content-Security-Policy: default-src 'self'; img-src *; media-src media1.com media2.com; script-src
userscripts.example.com
Content Security Policy / İçerik Güvenliği Politikaları
Çağlar ORHAN – 2017 Linux Yaz Kampı –Abant İzzet Baysal Üniversitesi / BOLU S: 4
Content Security Policy / İçerik Güvenliği Politikaları
Çağlar ORHAN – 2017 Linux Yaz Kampı –Abant İzzet Baysal Üniversitesi / BOLU S: 5
CSP’nin Test Edilmesi
Rahatça geliştirme yapabilmek için CSP sadece raporlama modu ile yapılandırılabilir. Bu yöntemle CSP kullanıcıya
zorlanmaz ama tüm CSP ihlalleri belirtilen URI’ye raporlanır. (iki mod birlikte de kullanılabilir. Böylece hem raporlama yapılır
hem de CSP zorlanır)
Content-Security-Policy-Report-Only: policy
Örnek:
Content-Security-Policy: default-src 'self'; report-uri http://reportcollector.example.com/collector.cgi
Dönen Rapor bir JSON stringidir.
Örnek:
{
"csp-report": {
"document-uri": "http://example.com/signup.html", /* CSP uyguladığımız sitenin urisi*/
"referrer": "", /* ihlalin olduğu –gerçekleştiği- documentin referreri */
"blocked-uri": "http://example.com/css/style.css", /* ihlal içeriğinin geldiği uri */
"violated-directive": "style-src cdn.example.com", /* ihlal edilen policy bölümü */
"original-policy": "default-src 'none'; style-src cdn.example.comreport-uri /_/csp-reports" /* Orijinal CSP HTTP Header*/
}
}
Content Security Policy / İçerik Güvenliği Politikaları
Çağlar ORHAN – 2017 Linux Yaz Kampı –Abant İzzet Baysal Üniversitesi / BOLU S: 6
BrowserDesteği
CSP 2 ve nonce, CSP 3 ve strict-dynamic
Bu iki özellik CSP 1 uyumlu değildir. Bu nedenle eski browserlar ve bazı desteklemeyen browserlarda (IE, EDGE) çalışmaz.
Örnek:
Content-Security-Policy: script-src 'nonce-random-123' 'strict-dynamic';
<script src="http://exampe.com/map.js" nonce=random-123></script>
Content Security Policy / İçerik Güvenliği Politikaları
Çağlar ORHAN – 2017 Linux Yaz Kampı –Abant İzzet Baysal Üniversitesi / BOLU S: 8
Kaynaklar:
1. https://www.w3.org/TR/CSP2/
2. https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP
3. https://ozgurwebgunleri.org.tr/2016/wp-content/upload/sunum/ziyahan-albeniz.pdf
4. https://www.netsparker.com.tr/blog/web-guvenligi/CSP-Content-Security-Policy/
5. https://research.google.com/pubs/pub45542.html
6. https://www.trkodlama.com/makaleler/guvenlik/content-security-policy-hakkinda-detayli-bilgi-6522.html
7. https://content-security-policy.com/

More Related Content

What's hot

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
 
Apache Htaccess Güvenlik Testleri
Apache Htaccess Güvenlik TestleriApache Htaccess Güvenlik Testleri
Apache Htaccess Güvenlik TestleriBGA Cyber Security
 
Netscaler WAF XSS
Netscaler WAF XSSNetscaler WAF XSS
Netscaler WAF XSSVeli Anlama
 
Netscaler Rate limit
Netscaler Rate limitNetscaler Rate limit
Netscaler Rate limitVeli Anlama
 
Windows 7 Ortamında Zararlı Yazılım Analizi
Windows 7 Ortamında Zararlı Yazılım AnaliziWindows 7 Ortamında Zararlı Yazılım Analizi
Windows 7 Ortamında Zararlı Yazılım AnaliziBGA Cyber Security
 
Citrix Netscaler HTTP Dos Koruması
Citrix Netscaler HTTP Dos KorumasıCitrix Netscaler HTTP Dos Koruması
Citrix Netscaler HTTP Dos KorumasıVeli Anlama
 

What's hot (9)

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ı
 
Metasploit El Kitabı
Metasploit El KitabıMetasploit El Kitabı
Metasploit El Kitabı
 
Apache Htaccess Güvenlik Testleri
Apache Htaccess Güvenlik TestleriApache Htaccess Güvenlik Testleri
Apache Htaccess Güvenlik Testleri
 
Netscaler WAF XSS
Netscaler WAF XSSNetscaler WAF XSS
Netscaler WAF XSS
 
Netscaler WAF XSS
Netscaler WAF XSSNetscaler WAF XSS
Netscaler WAF XSS
 
Netscaler Rate limit
Netscaler Rate limitNetscaler Rate limit
Netscaler Rate limit
 
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
 
Citrix Netscaler HTTP Dos Koruması
Citrix Netscaler HTTP Dos KorumasıCitrix Netscaler HTTP Dos Koruması
Citrix Netscaler HTTP Dos Koruması
 
EXPLOIT POST EXPLOITATION
EXPLOIT POST EXPLOITATIONEXPLOIT POST EXPLOITATION
EXPLOIT POST EXPLOITATION
 

Similar to Content security policy (csp)

[OWASP-TR Uygulama Güvenliği Günü 2016] Emre Kısa - HTTP Güvenlik Başlıkları ...
[OWASP-TR Uygulama Güvenliği Günü 2016] Emre Kısa - HTTP Güvenlik Başlıkları ...[OWASP-TR Uygulama Güvenliği Günü 2016] Emre Kısa - HTTP Güvenlik Başlıkları ...
[OWASP-TR Uygulama Güvenliği Günü 2016] Emre Kısa - HTTP Güvenlik Başlıkları ...OWASP Turkiye
 
Web Performans Optimizasyon Prensipleri
Web  Performans Optimizasyon PrensipleriWeb  Performans Optimizasyon Prensipleri
Web Performans Optimizasyon PrensipleriMehmet Aykut Bulgu
 
Web Application Firewall Tercih Rehberi
Web Application Firewall Tercih RehberiWeb Application Firewall Tercih Rehberi
Web Application Firewall Tercih RehberiBGA Cyber Security
 
Internet programcılığı-i
Internet programcılığı-iInternet programcılığı-i
Internet programcılığı-iemre61
 
ASP.NET MVC'den ASP.NET Core'a Geçiş
ASP.NET MVC'den ASP.NET Core'a GeçişASP.NET MVC'den ASP.NET Core'a Geçiş
ASP.NET MVC'den ASP.NET Core'a GeçişSinan Bozkuş
 
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
 
Performanslı site tasarımı ve Site performans ölçüm araçları
Performanslı site tasarımı ve Site performans ölçüm araçlarıPerformanslı site tasarımı ve Site performans ölçüm araçları
Performanslı site tasarımı ve Site performans ölçüm araçlarıbarisaydiner
 
Trabzon Hackerspace Group Training
Trabzon Hackerspace Group TrainingTrabzon Hackerspace Group Training
Trabzon Hackerspace Group Traininganiliyidogan
 
ASP.NET MVC'den ASP.NET Core MVC'ye Geçiş Süreci
ASP.NET MVC'den ASP.NET Core MVC'ye Geçiş SüreciASP.NET MVC'den ASP.NET Core MVC'ye Geçiş Süreci
ASP.NET MVC'den ASP.NET Core MVC'ye Geçiş SüreciSinan Bozkuş
 
Microservices Architecture
Microservices ArchitectureMicroservices Architecture
Microservices ArchitectureDilaver Demirel
 
DDoS - Bitirme Projesi Ön Sunumu
DDoS - Bitirme Projesi Ön SunumuDDoS - Bitirme Projesi Ön Sunumu
DDoS - Bitirme Projesi Ön SunumuOğuzcan Pamuk
 
45965 php-source-code-analysis
45965 php-source-code-analysis45965 php-source-code-analysis
45965 php-source-code-analysisAttaporn Ninsuwan
 
Bulutbilisim sunum
Bulutbilisim sunumBulutbilisim sunum
Bulutbilisim sunumugurbudak
 
Bulutistan 2017 - Türkiyenin Bulut Entegratörü
Bulutistan 2017 - Türkiyenin Bulut EntegratörüBulutistan 2017 - Türkiyenin Bulut Entegratörü
Bulutistan 2017 - Türkiyenin Bulut EntegratörüBulutistan
 
PKCS 7 ve CMS (Kriptografik İleti Sözdizimi)
PKCS 7 ve CMS (Kriptografik İleti Sözdizimi)PKCS 7 ve CMS (Kriptografik İleti Sözdizimi)
PKCS 7 ve CMS (Kriptografik İleti Sözdizimi)www.alikoker.com.tr
 
Spring Web Service
Spring Web ServiceSpring Web Service
Spring Web Servicedasgin
 
OPENSHIFT KONTEYNER PLATFORM İLE GELİŞTİRMEYE HIZLI BAŞLANGIÇ - Webinar-Aug2017
OPENSHIFT KONTEYNER PLATFORM İLE GELİŞTİRMEYE HIZLI BAŞLANGIÇ - Webinar-Aug2017OPENSHIFT KONTEYNER PLATFORM İLE GELİŞTİRMEYE HIZLI BAŞLANGIÇ - Webinar-Aug2017
OPENSHIFT KONTEYNER PLATFORM İLE GELİŞTİRMEYE HIZLI BAŞLANGIÇ - Webinar-Aug2017Serhat Dirik
 
Php egitim-cd-si
Php egitim-cd-siPhp egitim-cd-si
Php egitim-cd-sisersld89
 

Similar to Content security policy (csp) (20)

[OWASP-TR Uygulama Güvenliği Günü 2016] Emre Kısa - HTTP Güvenlik Başlıkları ...
[OWASP-TR Uygulama Güvenliği Günü 2016] Emre Kısa - HTTP Güvenlik Başlıkları ...[OWASP-TR Uygulama Güvenliği Günü 2016] Emre Kısa - HTTP Güvenlik Başlıkları ...
[OWASP-TR Uygulama Güvenliği Günü 2016] Emre Kısa - HTTP Güvenlik Başlıkları ...
 
Web Performans Optimizasyon Prensipleri
Web  Performans Optimizasyon PrensipleriWeb  Performans Optimizasyon Prensipleri
Web Performans Optimizasyon Prensipleri
 
Web Application Firewall Tercih Rehberi
Web Application Firewall Tercih RehberiWeb Application Firewall Tercih Rehberi
Web Application Firewall Tercih Rehberi
 
Internet programcılığı-i
Internet programcılığı-iInternet programcılığı-i
Internet programcılığı-i
 
ASP.NET MVC'den ASP.NET Core'a Geçiş
ASP.NET MVC'den ASP.NET Core'a GeçişASP.NET MVC'den ASP.NET Core'a Geçiş
ASP.NET MVC'den ASP.NET Core'a Geçiş
 
12factor apps
12factor apps12factor apps
12factor apps
 
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
 
Performanslı site tasarımı ve Site performans ölçüm araçları
Performanslı site tasarımı ve Site performans ölçüm araçlarıPerformanslı site tasarımı ve Site performans ölçüm araçları
Performanslı site tasarımı ve Site performans ölçüm araçları
 
Trabzon Hackerspace Group Training
Trabzon Hackerspace Group TrainingTrabzon Hackerspace Group Training
Trabzon Hackerspace Group Training
 
ASP.NET MVC'den ASP.NET Core MVC'ye Geçiş Süreci
ASP.NET MVC'den ASP.NET Core MVC'ye Geçiş SüreciASP.NET MVC'den ASP.NET Core MVC'ye Geçiş Süreci
ASP.NET MVC'den ASP.NET Core MVC'ye Geçiş Süreci
 
Microservices Architecture
Microservices ArchitectureMicroservices Architecture
Microservices Architecture
 
DDoS - Bitirme Projesi Ön Sunumu
DDoS - Bitirme Projesi Ön SunumuDDoS - Bitirme Projesi Ön Sunumu
DDoS - Bitirme Projesi Ön Sunumu
 
45965 php-source-code-analysis
45965 php-source-code-analysis45965 php-source-code-analysis
45965 php-source-code-analysis
 
Bulutbilisim sunum
Bulutbilisim sunumBulutbilisim sunum
Bulutbilisim sunum
 
Bulutistan 2017 - Türkiyenin Bulut Entegratörü
Bulutistan 2017 - Türkiyenin Bulut EntegratörüBulutistan 2017 - Türkiyenin Bulut Entegratörü
Bulutistan 2017 - Türkiyenin Bulut Entegratörü
 
PKCS 7 ve CMS (Kriptografik İleti Sözdizimi)
PKCS 7 ve CMS (Kriptografik İleti Sözdizimi)PKCS 7 ve CMS (Kriptografik İleti Sözdizimi)
PKCS 7 ve CMS (Kriptografik İleti Sözdizimi)
 
Spring Web Service
Spring Web ServiceSpring Web Service
Spring Web Service
 
Cloud_Computer
Cloud_ComputerCloud_Computer
Cloud_Computer
 
OPENSHIFT KONTEYNER PLATFORM İLE GELİŞTİRMEYE HIZLI BAŞLANGIÇ - Webinar-Aug2017
OPENSHIFT KONTEYNER PLATFORM İLE GELİŞTİRMEYE HIZLI BAŞLANGIÇ - Webinar-Aug2017OPENSHIFT KONTEYNER PLATFORM İLE GELİŞTİRMEYE HIZLI BAŞLANGIÇ - Webinar-Aug2017
OPENSHIFT KONTEYNER PLATFORM İLE GELİŞTİRMEYE HIZLI BAŞLANGIÇ - Webinar-Aug2017
 
Php egitim-cd-si
Php egitim-cd-siPhp egitim-cd-si
Php egitim-cd-si
 

Content security policy (csp)

  • 1. Content Security Policy (CSP) İçerik Güvenliği Politikaları Çağlar ORHAN – 2017 LYK –AİB Ünv. /BOLU
  • 2. Content Security Policy / İçerik Güvenliği Politikaları Çağlar ORHAN – 2017 Linux Yaz Kampı –Abant İzzet Baysal Üniversitesi / BOLU S: 2 Tanım: CSP, içerisinde XSS ve veri enjeksiyonu tipi ataklarında bulunduğu, belirli tip atakların tespiti ve bir ölçüde hafifletilmesi için eklenmiş bir güvenlik katmanıdır. CSP tamamen geriye dönük uyumlu planlanmakla birlikte CSP2 de belirtilmiş bazı konularda geriye dönük destek yoktur. Örneğin desteklemeyen browserlar, CSP uygulamamış sunucularla iletişen browserlar, sadece standart SOP çalıştıran browserlar sunucudan gelen CSP header’ı basitçe reddeder. CSP’yi aktif hale getirebilmek için sunucunuzun Content-Security-Policy HTTP Header’ını döndürecek şekilde yeniden konfigüre edilmesi gerekmektedir. Bazı yerlerde X-Content-Security-Policy denildiğini görseniz de aldırmayın bu eski bir sürümü ifade etmektedir. HTTP Header’ı döndürmeye alternatif olarak <meta> etiketi de ekleyebilirsiniz. Örneğin: <meta http-equiv="Content-Security-Policy" content="default-src 'self'; img-src https://*; child-src 'none';">
  • 3. Content Security Policy / İçerik Güvenliği Politikaları Çağlar ORHAN – 2017 Linux Yaz Kampı –Abant İzzet Baysal Üniversitesi / BOLU S: 3 AMAÇLAR CSS Tehtitini Azaltmak CSP’nin ana amacı XSS’i azaltmak ve XSS ataklarını raporlamaktır. XSS atağı browserın sunucudan gelen içeriğe güvenini sömürerek yapılmaktadır. Kurbanın browserı sunucudan gelen zararlı kodu çalıştırmaktadır, çünkü, bazen içerik geldiğini söylediği yerden gelmese de browsera göre bu içerik güvendiği sunucudan gelmektedir. CSP, sunucu adminlerine hedefteki kurban browserın sadece güvenilir domainlerden çalıştırılabilir script indirmesini göz önüne almasını sağlayarak XSS açığının gerçekleştiği vektörlerin (harici domainlerden gelecek scriptler) miktarını azaltma veya yok etme şansı verir. CSP uyumlu bir browser, sadece whitelist domainlerin listesindeki kaynaklardan gelen scriptleri yükler ve çalıştırır. Diğer tüm kaynaklardan gelen scriptleri, inline script kodlarını ve html attribute’leri içine yazılan event-handler’ları gözardı eder. Bu konuda son nokta ise hiçbir scriptin çalışmasını istemeyen sayfaların (web uygulamalarının) bir seçenek olarak global anlamda scriptlere izin verilmemesini sağlamasıdır. Paket Koklama Ataklarının (Packet Sniffing Attack) Azaltılması İçeriğin yükleneceği domainlerin belirtilmesine ek olarak sunucu hangi protokolleri kullanacağını bildirebilir. Örneğin (ve ideal olarak güvenli bir bakış açısından) bir sunucu tüm içeriğin HTTPS ile yüklenmesi gerektiğini bildirebilir. Bütün bir data iletişim güvenlik stratejisi, data transferi için sadece HTTPS zorlamasını içermez. Aynı zamanda tüm cookie’leri secure flag ile işaretleyebilir, tüm http sayfaları otomatik olarak https’ye yönlendirebilir. Siteler aynı zamanda Strict- Transfer-Security HTTP header’ını kullanarak browserın sadece encrypted kanaldan bağlanmasını sağlayabilir.
  • 4. CSP’nin Kullanımı 1) Policy’ı belirtin 2) Policy içeriğini detaylı bir şekilde yazın Content-Security-Policy: Policy Örnekler: 1. Diğer tüm kaynakları devre dışı bırakarak sadece CSP belirleyen kaynağa izin verin Content-Security-Policy: default-src 'self‘ 2. Bir kaynak belirtin, bu CSP’nin set edildiği kaynakdan başka bir domain de olabilir Content-Security-Policy: default-src 'self' *.trusted.com 3. Web sitesi yetkilisi kullanıcıya tüm imajları herhangi bir yerden ancak ses ve video içeriklerini güvenilir kaynaktan, ancak scriptlerin sadece belirli sunuculardaki güvenilir kaynaklardan indirmesini söylüyor. Content-Security-Policy: default-src 'self'; img-src *; media-src media1.com media2.com; script-src userscripts.example.com Content Security Policy / İçerik Güvenliği Politikaları Çağlar ORHAN – 2017 Linux Yaz Kampı –Abant İzzet Baysal Üniversitesi / BOLU S: 4
  • 5. Content Security Policy / İçerik Güvenliği Politikaları Çağlar ORHAN – 2017 Linux Yaz Kampı –Abant İzzet Baysal Üniversitesi / BOLU S: 5 CSP’nin Test Edilmesi Rahatça geliştirme yapabilmek için CSP sadece raporlama modu ile yapılandırılabilir. Bu yöntemle CSP kullanıcıya zorlanmaz ama tüm CSP ihlalleri belirtilen URI’ye raporlanır. (iki mod birlikte de kullanılabilir. Böylece hem raporlama yapılır hem de CSP zorlanır) Content-Security-Policy-Report-Only: policy Örnek: Content-Security-Policy: default-src 'self'; report-uri http://reportcollector.example.com/collector.cgi Dönen Rapor bir JSON stringidir. Örnek: { "csp-report": { "document-uri": "http://example.com/signup.html", /* CSP uyguladığımız sitenin urisi*/ "referrer": "", /* ihlalin olduğu –gerçekleştiği- documentin referreri */ "blocked-uri": "http://example.com/css/style.css", /* ihlal içeriğinin geldiği uri */ "violated-directive": "style-src cdn.example.com", /* ihlal edilen policy bölümü */ "original-policy": "default-src 'none'; style-src cdn.example.comreport-uri /_/csp-reports" /* Orijinal CSP HTTP Header*/ } }
  • 6. Content Security Policy / İçerik Güvenliği Politikaları Çağlar ORHAN – 2017 Linux Yaz Kampı –Abant İzzet Baysal Üniversitesi / BOLU S: 6 BrowserDesteği
  • 7. CSP 2 ve nonce, CSP 3 ve strict-dynamic Bu iki özellik CSP 1 uyumlu değildir. Bu nedenle eski browserlar ve bazı desteklemeyen browserlarda (IE, EDGE) çalışmaz. Örnek: Content-Security-Policy: script-src 'nonce-random-123' 'strict-dynamic'; <script src="http://exampe.com/map.js" nonce=random-123></script>
  • 8. Content Security Policy / İçerik Güvenliği Politikaları Çağlar ORHAN – 2017 Linux Yaz Kampı –Abant İzzet Baysal Üniversitesi / BOLU S: 8 Kaynaklar: 1. https://www.w3.org/TR/CSP2/ 2. https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP 3. https://ozgurwebgunleri.org.tr/2016/wp-content/upload/sunum/ziyahan-albeniz.pdf 4. https://www.netsparker.com.tr/blog/web-guvenligi/CSP-Content-Security-Policy/ 5. https://research.google.com/pubs/pub45542.html 6. https://www.trkodlama.com/makaleler/guvenlik/content-security-policy-hakkinda-detayli-bilgi-6522.html 7. https://content-security-policy.com/