Încerc să creez o politică de securitate a conținutului puternică și sigură în nginx, rulând un server LEMP bazat pe wordpress. Cred că folosesc modulul ngx_pagespeed.so și am implementat FastCGI pe serverul meu.Cred că una dintre aceste caracteristici redă imaginile mele jpeg în imagini webP din mers.
În directiva mea privind politica de securitate a conținutului pe Nginx, încerc să elimin atacurile XSS, în timp ce îmbrățișez utilizarea imaginilor webP create fie de modulul pagespeed, fie de FastCGI.
Cu toate acestea, pentru ca CSP să permită imagini webP, trebuie să pun img-src date „self”:;
în directiva mea privind antetul politicii de securitate a conținutului, astfel:
add_header Content-Security-Policy "default-src 'self'; script-src 'self'; img-src 'self' data:;";
Problema cu aceasta este că permiterea date:
block face site-ul meu vulnerabil la atacurile XSS, făcând efectiv inutilă politica de securitate a conținutului. Așadar, se pare că pot avea fie un site web super sigur, dar lent, folosind jpeg-uri obișnuite, fie pot avea un site web super nesigur, dar rapid, folosind imagini webP redate pe server.
Întrebarea mea este, există o modalitate de a specifica doar imaginile webP care să fie permise în directiva CSP img-src 'self' data;";
? În mod ideal, vreau să-i spun lui nginx că imaginile webP ar trebui aprobate în CSP, dar orice alte imagini din afara site-ului meu sau formatului webP ar trebui blocate.
Este posibil? Dacă nu, se pare că un CSP este destul de inutil pentru cel puțin 50% dintre serverele de acolo. Dacă da, atunci ați putea să mă ajutați să înțeleg acest lucru și să-mi spuneți cum pot implementa o directivă care definește webP ca un format permis în CSP-ul meu?
Multumesc pentru orice ajutor!