Content Security Policy: Restricționarea surselor de la care acceptăm resurse

Headerul de răspuns Content Security Policy (CSP) ajută la prevenirea diferitelor tipuri de atacuri, cum ar fi atacurile de tip cross-site scripting (XSS) și atacurile de injectare de date, permitând dezvoltatorilor de site-uri să definească sursele din care browser-ul poate executa script-uri, încărca resurse și interacționa cu pagina web.

Prin specificarea unui header CSP, dezvoltatorii de site-uri pot defini care domenii sunt permise să execute cod JavaScript, CSS și alte resurse pe o pagină, precum și controla modul în care sunt gestionate script-urile și stilurile inline. Acest lucru poate preveni atacatorii să injecteze script-uri sau resurse malitioase într-o pagină web și să protejeze pagina de alte forme de atacuri de injectare de date.

În plus, în afară de prevenirea atacurilor de injectare de date, un header CSP poate reduce impactul atacurilor de tip cross-site scripting prin împiedicarea script-urilor malitioase să fie executate în contextul unei pagini web. Prin restricționarea surselor din care pot fi executate script-urile, un header CSP poate limita pagubele pe care un atacator le poate cauza, chiar dacă reușește să injecteze un script malitios într-o pagină web.

În general, headerul CSP este o caracteristică importantă de securitate care poate ajuta dezvoltatorii să își protejeze site-urile și utilizatorii de o gamă largă de atacuri. Prin implementarea unui header CSP și revizuirea și actualizarea regulată a politicii, dezvoltatorii pot reduce semnificativ riscul unui atac reușit asupra site-ului lor.

Remediere:

Apache2
  1. Adăugați în fișierul de configurare al Apache2 următoarea linie (se menționează doar host-urile de la care sunt permise script-uri, fișiere de stil și imagini):
    Header set Content-Security-Policy "default-src 'self';"
  2. Restartați serverul web

Nginx
  1. Adăugați în fișierul de configurare al Nginx următoarea linie:
    add_header Content-Security-Policy "default-src 'self';";
  2. Restartați serverul web

IIS
  1. Adăugați în fișierul de configurare al IIS următoarea linie:
    <system.webServer>
    <httpProtocol>
    <customHeaders>
    <add name="Content-Security-Policy" value="default-src 'self';" />
    </customHeaders>
    </httpProtocol>
    </system.webServer>
  2. Restartați serverul web

Cel de mai sus este un simplu exemplu, configurația trebuie făcută conform nevoilor, un alt exemplu de configurare fiind următorul:
object-src 'self'
default-src 'self'
script-src 'self' 'unsafe-eval' 'unsafe-inline'
frame-src 'self'
frame-ancestors 'self'
style-src 'self' 'unsafe-inline' blob:
form-action 'self'
img-src 'self' data:
report-uri https://your_report_uri.org/DS_CSP_Violation


Referințe:

  • https://content-security-policy.com/


response headerssecurity headerscontent securitycontent security policycspcybersecurity

Newsletter

Abonează-te la newsletter-ul nostru pentru a te informa despre noutățile din CyberSecurity. Te poți dezabona oricând.

Mai mult decât CyberSecurity

Oferim o varietate de servicii pentru a ajuta companiile să fie pregătite de confruntări cu atacuri cibernetice reale.

Contactează-ne