Protezione dei siti Web da browser e plug-in obsoleti tramite una combinazione di lista bianca / lista nera?

2

Oltre a utilizzare le intestazioni del browser, desidero inserire nella blacklist / lista bianca il browser e i plug-in dal mio sito in modo da impedire a questi vecchi sistemi privi di patch di (1) di essere un utente generico del mio sito (2) rimuovere questi "target" da i potenziali aggressori raggiungono.

My goal is to define some kind of endpoint security standard for users who access my site, but without directly managing the environment, as they are customers.

Esiste un modo standard per utilizzare la white list o la lista nera per controllare l'accesso del browser al mio sito?

Ad esempio, voglio impedire qualsiasi browser che abbia superato Flash, ma voglio consentirglielo se non hanno affatto Flash.

    
posta random65537 06.02.2011 - 16:59
fonte

2 risposte

6

First off : questo è assolutamente il modo sbagliato per risolvere i problemi CSRF. Le vulnerabilità di CSRF sono un problema nel tuo sito, non nel browser. La blacklist di determinati browser non risolverà le tue vulnerabilità CSRF. CSRF non è specifico per il browser e non può essere prevenuto tramite la blacklist del browser.

Rilevamento delle versioni del browser : esistono vari modi per rilevare la versione del browser e le versioni dei plug-in utilizzate dall'utente. Per la versione del browser, è possibile utilizzare l'agente utente. Per Flash, puoi utilizzare il kit di rilevamento Flash Player . Per Java, consulta il controllo dell'aggiornamento java di Sun . Dovrai anche controllare Quicktime, ma non sono sicuro di come farlo. Si noti, tuttavia, che il rilevamento della versione del browser e delle versioni dei plug-in è difficile in Internet Explorer.

Conoscere quali versioni non sono sicure : il mantenimento dell'elenco di versioni di browser e plug-in vulnerabili conosciute è più difficile. Penso che probabilmente è troppo lavoro per ragionevolmente aspettarsi un sito ordinario da mantenere. Per i browser, un punto di partenza parziale è elenco di Yahoo di browser di classe A , ma non mantengono quale la versione è l'ultima versione conosciuta e le versioni con vulnerabilità.

Suggerimenti : se devi verificare versioni di browser e plug-in obsolete / vulnerabili, ti suggerisco di guardare da vicino Mozilla plugin controlla il sito web , che controlla se hai installato una versione di plugin obsoleta o vulnerabile. Supporta Firefox, Safari, Chrome e Opera e supporta parzialmente IE. Potresti voler copiare o usare i loro metodi. Vedi anche l'interfaccia JSON di Mozilla nel loro database di versioni plugin.

Suggerimento di fondo : penso che tu stia facendo la domanda sbagliata. Penso che la tua domanda abbia alcune supposizioni nascoste e premesse errate. La blacklist del browser non è un modo efficace per correggere o mitigare le vulnerabilità di CSRF. E penso che la domanda non sia chiara sul modello di minaccia. Ti suggerisco di ripetere nuovamente la domanda, questa volta partendo dal problema reale che stai cercando di risolvere e dai vincoli che stai affrontando, piuttosto che fare ipotesi su quale sia la soluzione migliore (ad esempio, supponendo che la blacklist del browser sia la soluzione migliore).

    
risposta data 06.02.2011 - 20:59
fonte
0

Non penso che ci sia un modo particolare per farlo. È necessario creare un elenco di browser e plug-in che siano buoni / cattivi e individuare un modo per estrarre le informazioni necessarie dal programma utente. Il problema con questo è che alcuni plugin non si aggiungono allo user agent. SilverLight non ha (non?) A causa di problemi di compatibilità.

In seguito, non penso che le richieste di blocco di questi tipi di browser risolveranno qualsiasi attacco CSRF perché questi possono verificarsi su nuovi browser completamente corretti, senza plug-in e se un utente malintenzionato stava davvero provando a fare qualcosa di imprevedibile , potrebbero semplicemente falsificare un agente utente che funziona.

    
risposta data 06.02.2011 - 18:04
fonte

Leggi altre domande sui tag