Sicurezza web: Oltre l'HTTPS.
HTTPS è il minimo indispensabile: cifra il traffico e garantisce l'integrità dei dati in transito. Ma la sicurezza di un'applicazione web non si ferma lì. Header di sicurezza, Content Security Policy, autenticazione robusta e protezione dei dati sensibili sono i passi successivi che ogni sviluppatore dovrebbe considerare.
Header e CSP
Header come X-Content-Type-Options: nosniff, X-Frame-Options: DENY (o SAMEORIGIN), Strict-Transport-Security (HSTS) e Referrer-Policy riducono il rischio di clickjacking, MIME sniffing e downgrade attack. La Content Security Policy (CSP) limita le origini da cui possono essere caricati script, stili e risorse: anche se un attaccante inietta HTML, lo script malevolo non viene eseguito se la CSP è restrittiva.
- Configura gli header a livello di server (Nginx, Apache) o middleware applicativo.
- CSP: inizia in report-only per non bloccare il sito, poi passa a enforce quando la whitelist è stabile.
- Cookie:
Secure,HttpOnly,SameSiteper sessioni e token.
Autenticazione e dati
Password: hash con algoritmi adatti (bcrypt, Argon2), mai in chiaro. Per le API usa token (JWT o opaque) con scadenza e refresh. Validazione input lato server sempre: non fidarti del client. Per dati sensibili (GDPR) minimizza ciò che raccogli, cifra a riposo dove necessario e definisci retention e diritto alla cancellazione.
# Esempio header sicurezza (Nginx)
add_header X-Content-Type-Options "nosniff";
add_header X-Frame-Options "SAMEORIGIN";
add_header Referrer-Policy "strict-origin-when-cross-origin";
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains";
In sintesi: oltre l'HTTPS servono header di sicurezza, CSP, gestione corretta di cookie e sessioni, autenticazione robusta e protezione dei dati. È un lavoro continuo: aggiorna dipendenze, monitora log e adatta le policy quando il sito evolve.
Condividi