PrivSec Lab · 36 termini
Glossario su privacy e sicurezza del browser
Definizioni tecniche precise per la terminologia usata in tutta la nostra ricerca. Ogni voce è autonoma e ancorata a un URL stabile per la citazione. I termini spaziano dai vettori di fingerprinting del browser alla sicurezza dei trasporti, all'autenticazione e ai framework di sicurezza.
- Fingerprinting del browser#browser-fingerprinting
- La raccolta di attributi del browser e del dispositivo – rendering canvas, font installati, modello GPU, fuso orario, risoluzione dello schermo e decine di altri – per generare un identificatore statisticamente unico senza cookie. A differenza dei cookie, le impronte sopravvivono alla cancellazione della cronologia, alla modalità privata e all'uso di una VPN.
- Impronta canvas#canvas-fingerprint
- Un'impronta ricavata disegnando testo e forme su un elemento HTML canvas nascosto e leggendo i pixel tramite toDataURL() o getImageData(). Rendering subpixel, hinting dei font, compositing accelerato dalla GPU e antialiasing del sistema operativo producono firme uniche per ogni combinazione GPU/driver/OS.
- Leak WebRTC#webrtc-leak
- Una vulnerabilità di privacy in cui lo stack WebRTC del browser espone l'IP reale dell'utente – comprese le IP della rete locale – tramite i candidati ICE, anche con una VPN attiva. Può essere mitigata disabilitando i permessi multimediali WebRTC o usando un browser che blocca i candidati ICE non proxati.
- DNS-over-HTTPS (DoH)#doh
- Un protocollo che cifra le query DNS inviandole via HTTPS a un resolver, impedendo l'intercettazione del provider e la sorveglianza in transito. Nasconde le ricerche di dominio agli osservatori di rete ma centralizza le query presso il resolver scelto; supportato nativamente in Firefox, Chrome e nella maggior parte dei browser principali.
- DNS-over-TLS (DoT)#dot
- Un protocollo che cifra le query DNS usando TLS sulla porta 853. A differenza di DoH, usa una porta dedicata che i firewall possono rilevare e bloccare. Preferito nelle configurazioni aziendali o a livello di sistema operativo; funzionalmente equivalente a DoH nella protezione della privacy per gli utenti finali.
- HTTP Strict Transport Security (HSTS)#hsts
- Un'intestazione di risposta HTTP che istruisce i browser ad accedere a un sito solo via HTTPS per una durata specificata (max-age). Previene gli attacchi di SSL stripping. I siti possono richiedere l'inserimento nella lista di precaricamento HSTS per essere integrati nei browser prima della prima visita.
- Content Security Policy (CSP)#csp
- Un'intestazione di risposta HTTP che dichiara da quali fonti una pagina può caricare script, stili, immagini e altre risorse. Una CSP rigorosa – in particolare con nonce o hash – elimina la maggior parte dei vettori XSS bloccando gli script inline e gli host esterni non autorizzati.
- Referrer Policy#referrer-policy
- Un'intestazione HTTP o un meta tag che controlla quanta parte dell'URL corrente viene inviata nell'intestazione Referer durante la navigazione verso un'altra pagina. Il valore più rigoroso, no-referrer, omette del tutto l'intestazione; strict-origin-when-cross-origin è il valore predefinito dei browser dal 2021 ed è consigliato per la maggior parte dei siti.
- Enhanced Tracking Protection (ETP)#etp
- Il sistema anti-tracciamento integrato di Firefox che blocca tracker di terze parti, cryptominer e fingerprinter in base alla lista di blocco di Disconnect.me. Disponibile nelle modalità Standard, Rigorosa e Personalizzata; la modalità Rigorosa blocca inoltre i cookie cross-site di tutte le terze parti.
- Intelligent Tracking Prevention (ITP)#itp
- Il sistema anti-tracciamento di Safari basato sull'apprendimento automatico che identifica i domini capaci di tracciamento tra siti e ne limita i cookie. ITP limita a 7 giorni i cookie impostati via JavaScript e a 24 ore i cookie di prima parte attribuiti al tracciamento, interrompendo gli identificatori di tracciamento di lunga durata.
- Stringa User-Agent#user-agent
- Un'intestazione di richiesta HTTP inviata dal browser che identifica nome, versione, sistema operativo e motore di rendering. Storicamente un vettore di fingerprinting ad alta entropia; l'iniziativa User-Agent Reduction di Google ha progressivamente congelato la maggior parte dei dettagli su OS e versione in Chrome per ridurne la capacità identificativa.
- Entropia (fingerprinting)#entropy
- Entropia di Shannon misurata in bit: H = −Σ p(x) log₂ p(x) sulla distribuzione osservata di un segnale. N bit significa che il segnale può distinguere al massimo 2^N individui. Per esempio, un'entropia canvas di circa 16 bit significa che solo circa 1 utente su 65.000 condivide un dato valore per quel solo segnale.
- TOTP (password monouso basata sul tempo)#totp
- Un metodo di autenticazione a due fattori standardizzato in RFC 6238 che genera un codice di 6 cifre valido per 30 secondi, derivato da un segreto condiviso e dal timestamp Unix corrente. Usato dalle app di autenticazione (Google Authenticator, Aegis). Resistente agli attacchi replay ma vulnerabile al phishing in tempo reale.
- Passkey / FIDO2#passkey
- Una credenziale di autenticazione resistente al phishing basata sulla crittografia a chiave pubblica (WebAuthn / FIDO2). La chiave privata non lascia mai il dispositivo; il server memorizza solo una chiave pubblica. Le passkey sono legate all'origine, rendendole immuni al phishing delle credenziali e agli attacchi di spoofing del dominio.
- Modello di minaccia#threat-model
- Un'analisi strutturata di chi potrebbe attaccare un sistema, quali risorse prenderebbe di mira e quali mitigazioni sono proporzionate al rischio. Un modello di minaccia pratico identifica le risorse, enumera gli avversari e le loro capacità, mappa i percorsi di attacco e dà priorità ai controlli per probabilità e impatto.
- STRIDE#stride
- Un framework di classificazione delle minacce sviluppato in Microsoft: Spoofing, Tampering (manomissione), Repudiation (ripudio), Information Disclosure (divulgazione di informazioni), Denial of Service (negazione del servizio), Elevation of Privilege (elevazione dei privilegi). Usato nelle revisioni di progettazione per identificare sistematicamente quali categorie di minaccia si applicano a ciascun componente o flusso di dati.
- Attacco alla supply chain#supply-chain-attack
- Un attacco che prende di mira una dipendenza upstream affidabile – un pacchetto npm, uno strumento CI/CD, un server di build o un'autorità di certificazione – invece dell'obiettivo finale direttamente. Compromettere una libreria o una pipeline ampiamente usata può propagare codice malevolo a migliaia di progetti downstream simultaneamente.
- Zero-day#zero-day
- Una vulnerabilità sconosciuta al fornitore del software e priva di patch disponibile. Un exploit zero-day sfrutta questa finestra prima che lo sviluppatore possa rilasciare una correzione. Gli zero-day dei browser nei motori JavaScript (compilatori JIT) sono particolarmente critici perché possono essere attivati da remoto tramite una pagina web.
- Sandboxing#sandboxing
- Un confine di sicurezza che isola un processo e ne limita l'accesso alle risorse di sistema, agli altri processi e alla rete. I processi di rendering del browser girano in sandbox a livello di sistema operativo per contenere i danni di una pagina compromessa; una vulnerabilità di sandbox escape consente a un aggressore di violare questo confine.
- Site Isolation#site-isolation
- Un'architettura del browser in cui ogni origine (schema + hostname + porta) viene renderizzata in un processo separato del sistema operativo. Impedisce a una pagina malevola di leggere la memoria di un'altra origine tramite attacchi side-channel di tipo Spectre. Attivata per impostazione predefinita in Chrome dal 2018 e in Firefox come Project Fission.
- Impronta WebGL#webgl-fingerprint
- Un'impronta ricavata dalla stringa del renderer GPU (RENDERER, VENDOR) e dall'output shader unico prodotto dall'API WebGL. Fornitore, modello e versione del driver GPU producono artefatti di rendering distinti tra macchine, rendendo WebGL il secondo vettore di fingerprinting a più alta entropia dopo il canvas.
- Impronta audio (AudioContext)#audio-fingerprint
- Un'impronta calcolata facendo passare un'onda sinusoidale attraverso l'API OfflineAudioContext e misurando il segnale risultante. Le differenze nell'elaborazione audio in virgola mobile tra combinazioni OS/hardware producono valori stabili e unici. Resistente al ripristino perché riflette il comportamento di hardware e driver.
- Encrypted Client Hello (ECH)#ech
- Un'estensione TLS che cifra il campo Server Name Indication (SNI) nell'handshake TLS, nascondendo l'hostname di destinazione agli osservatori in transito. Senza ECH, anche il traffico HTTPS rivela a quale dominio l'utente si connette; ECH colma questa lacuna quando è supportato sia dal client sia dal server.
- Server Name Indication (SNI)#sni
- Un'estensione TLS che indica al server a quale hostname il client vuole connettersi durante l'handshake, abilitando l'hosting virtuale di più siti HTTPS su un'unica IP. Per impostazione predefinita l'SNI viene trasmesso in chiaro, rivelando il dominio di destinazione agli osservatori di rete fino all'adozione di ECH.
- CNAME cloaking#cname-cloaking
- Una tecnica di tracciamento in cui un sottodominio di prima parte (es. metrics.example.com) viene reindirizzato tramite CNAME a un host tracker di terze parti. Poiché il cookie viene impostato sotto il dominio di prima parte, le regole ITP e di blocco dei cookie rivolte ai domini di terze parti vengono aggirate.
- Permissions Policy (Feature Policy)#permission-policy
- Un'intestazione HTTP che consente a un sito di disabilitare o limitare funzionalità del browser – fotocamera, microfono, geolocalizzazione, pagamento, USB – per il proprio frame e per gli iframe di terze parti incorporati. Riduce la superficie di attacco impedendo che API potenti inutilizzate siano accessibili in un contesto compromesso o malevolo.
- Cross-Site Scripting (XSS)#xss
- Una classe di vulnerabilità da iniezione in cui un aggressore inietta JavaScript malevolo in una pagina che viene poi eseguito nei browser di altri utenti. L'XSS riflesso prende di mira i parametri dell'URL; l'XSS memorizzato persiste in un database; l'XSS DOM manipola il codice lato client. La CSP è il principale strato di mitigazione.
- Clickjacking#clickjacking
- Un attacco che sovrappone un iframe trasparente su un elemento di interfaccia visibile, inducendo l'utente a cliccare su qualcosa che non può vedere. Mitigato da X-Frame-Options o dalla direttiva CSP frame-ancestors, che impediscono a una pagina di essere incorporata in un iframe su un'altra origine.
- Cross-Origin Resource Sharing (CORS)#cors
- Un meccanismo del browser che impedisce al JavaScript di un'origine di leggere le risposte di un'altra origine, a meno che il server di destinazione lo consenta esplicitamente tramite le intestazioni Access-Control-Allow-Origin. Applica la politica same-origin a livello di risposta HTTP per le richieste fetch e XHR cross-origin.
- Navigazione privata / Modalità in incognito#private-browsing
- Una modalità del browser che scarta cronologia, cookie e dati memorizzati nella cache al termine di una sessione. Non previene il tracciamento in tempo reale: indirizzo IP, leak WebRTC, impronta TLS e impronta canvas restano pienamente attivi. Un equivoco comune è che la modalità privata garantisca l'anonimato.
- Difesa per uniformità#uniformity-defense
- Una strategia anti-fingerprinting che fa produrre a tutti gli utenti la stessa impronta del browser – output canvas identico, font, dimensione dello schermo – in modo che nessun individuo possa essere isolato. Tor Browser e Mullvad Browser adottano questo approccio. In contrasto con la randomizzazione, che cambia l'impronta a ogni sessione.
- Difesa per randomizzazione#randomization-defense
- Una strategia anti-fingerprinting che inietta rumore per sessione e per origine nelle uscite canvas, audio e WebGL. Brave Shields usa questo approccio. Previene il tracciamento stabile a lungo termine ma non raggiunge l'uniformità a livello di folla, perciò la non collegabilità tra sessioni varia in base al segnale.
- Spectre / attacco side-channel#spectre
- Una classe di attacchi microarchitetturali che trafugano dati da altri processi sfruttando l'esecuzione speculativa nelle CPU moderne. Nei browser, gli attacchi Spectre basati su JavaScript hanno portato a disabilitare SharedArrayBuffer e a ridurre la precisione dei timer; la Site Isolation e le intestazioni di cross-origin isolation sono le principali mitigazioni.