Come può un "server" sapere che browser sto utilizzando oltre all'user-agent?

6

Come può un "webserver" sapere (o uno sniffer tra lo srv < - > e il client) che quale browser sto usando oltre l'user-agent?

Ci sono "trucchi magici"? javascript? Giava? Come posso nascondere in modo sicuro ciò che webbrowser sto usando?

    
posta LanceBaynes 02.06.2011 - 22:48
fonte

3 risposte

8

Che cosa intendi esattamente per "quale browser sto usando" - come essere in grado di trovare se stai usando firefox o opera, o intendi qualcos'altro?

In ogni caso, mi vengono in mente tre progetti

  • EFF's Panopticlick (paper qui ): questo metodo non riguarda la ricerca di quale browser stai utilizzando, ma altro ancora sull'identificazione di chi sei tra gli altri, correlando le informazioni relative alla perdita di dati dal tuo browser quando visiti un sito. Le informazioni raccolte da Panopticlick includono:

    • L'intestazione http dell'agente utente
    • l'intestazione http accetta
    • se hai abilitato o meno i cookie
    • la risoluzione dello schermo (determinata utilizzando javascript)
    • il tuo fuso orario (determinato utilizzando javascript)
    • Plugin del browser, versioni di plug-in e tipi MIME (determinati utilizzando javascript)
    • Caratteri di sistema (determinati utilizzando le applet java o flash e javascript)
    • supercookies (javascript - ma ce ne sono altri qui)
  • Progetto Evercookie Esistono molti tipi diversi di cookie, come i cookie flash, i cookie silverlight, i database html5 e DOM globalstorage. Ulteriori informazioni sul link fornito.

  • BrowserRecon progetto: questo è un progetto più vecchio, simile a panopticlick ma più vecchio (e non molto bene conosciuto). Questo è volto a trovare quale browser viene utilizzato un utente, non identificandolo tra gli altri. Utilizza database di grandi dimensioni che contengono valori osservati (impronte digitali) di diversi campi http (come il campo user-agent, il campo order-header, il campo accept, il campo keep-alive e molti altri). Abbinando i valori di tutti questi diversi campi quando una richiesta arriva a un server, il browser specifico e la sua versione possono essere determinati con un alto grado di certezza.

Sulle misure di mitigazione: l'ultima tecnica può essere sconfitta usando un proxy, che può potenzialmente alterare i valori di molti campi http e quindi alterare i risultati delle impronte digitali.

NoScript è di grande aiuto per le altre tecniche e disabilita tutte le funzionalità non necessarie o lo abilita solo sui siti autorizzati.

    
risposta data 03.06.2011 - 01:06
fonte
5

Oltre all'agente utente, ci sono altri modi per identificare il tuo browser (che non ti identifica personalmente, ma semplifica il monitoraggio del tuo browser da una visita alla successiva). Lingue, caratteristiche dello schermo e ancora più plug-in e font disponibili, portano molte informazioni, anche con Javascript disabilitato.

Puoi testare il tuo browser con Panopticlick di EFF . Il sito ha un sacco di informazioni sull'identificazione del browser.

JavaScript è un modo sicuro per identificare la tua versione esatta del browser - nessun due browser ha esattamente le stesse stranezze e bug di implementazione.

Anche se tutte le informazioni delle intestazioni sono state rimosse e JavaScript è stato disattivato, il che avrebbe influito molto sulla funzionalità, ci sarebbero ancora modi (meno affidabili) per identificare i client Web, ad esempio attraverso i tempi tipici e l'invio di pacchetti abitudini (à la nmap ). In questo modo identifica non solo il browser ma anche il sistema operativo e, eventualmente, l'infrastruttura di rete intermedia (in particolare le cache).

    
risposta data 02.06.2011 - 22:56
fonte
1

Nascondere ciò che il browser Web sta usando può essere davvero difficile in quanto vi sono in genere molti modi per scoprire quale browser si utilizza oltre a utilizzare l'user-agent.

Ad esempio, puoi indovinare quale tipo di browser stai utilizzando verificando in quale sequenza i valori delle intestazioni HTTP sono presentati nell'intestazione.

Questa domanda è molto simile ad altre domande qui:

Per provare a rispondere su come nascondere a chiunque il browser in uso, farei quanto segue per eliminarli:

  • Modifica la presentazione delle intestazioni http
  • Non consentire javascript
  • Non consentire alcun plugin activex o altri plugin
  • Non esegui nulla di personalizzabile, come add-on o altro software integrato per browser.
  • Cambia manualmente il tuo agente utente
risposta data 02.06.2011 - 22:57
fonte

Leggi altre domande sui tag