Pericolo dell'estensione del browser senza autorizzazioni?

5

Supponendo che un'estensione per Firefox o Chrome non richieda alcun Autorizzazione WebExtensions , quale danno potrebbe comportare questa estensione?

O in altre parole: quali azioni (potenzialmente dannose) possono eseguire un'estensione senza autorizzazioni che un sito Web ordinario non potrebbe eseguire?

    
posta tim 20.10.2018 - 09:12
fonte

1 risposta

1

È sorprendentemente difficile trovare informazioni su

Per impostazione predefinita, le estensioni sono soggette a norme sulla sicurezza dei contenuti (CSP) di:

"script-src 'self'; object-src 'self';"

In questo caso, la parola chiave self fa riferimento al pacchetto dell'estensione e quindi possono accedere a qualsiasi file incluso nel pacchetto dell'estensione stesso. Questo suggerisce strongmente che le estensioni non possono accedere a script che sono ospitati altrove, senza che il CSP predefinito venga sovrascritto. Allo stesso modo, non possono eseguire script utilizzando eval senza consentirlo esplicitamente.

Questo in realtà non richiede un permesso, quindi, in teoria, dato un difetto JS che può compromettere il browser, un'estensione senza autorizzazioni potrebbe eseguire codice arbitrario. Questo è di beneficio limitato - un tale difetto probabilmente funzionerebbe anche da una pagina web, quindi non soddisfa i tuoi requisiti.

In base al repository di esempi di estensioni web , le autorizzazioni esplicite sono non è necessario modificare lo stile di un sito specifico (es. l'esempio borderify), il contenuto del testo mostrato all'utente (es. l'esempio di sostituzione Emoji), o copiare i dati dalle pagine negli appunti di sistema (esempio di esempio di elezione) - l'esempio degli appunti richiede la possibilità di "Accedi ai tuoi dati per tutti i siti web", che è implicitamente concesso dal content_scripts valore <all_urls> .

È quindi possibile vedere alcune potenziali azioni dannose, anche se sembra possibile per i siti bloccarle (vedere le note su addons.mozilla.org che non consentono gli script di contenuto):

  • Modifica l'obiettivo per i moduli, in modo che i dati vengano inviati a una terza parte dopo l'invio (invio attivato dall'utente - si tratta in effetti solo di cambiare testo)
  • Modifica i valori mostrati sulle pagine (ad esempio, modifica l'obiettivo per i pagamenti bancari online in cui non viene utilizzato un secondo fattore per confermarlo, aggiungi un messaggio "mi dispiace il tuo pagamento non riuscito, riprova" quando la pagina restituisce un "pagamento" completa "messaggio)
  • Combina con un'altra applicazione in grado di leggere il contenuto degli appunti e utilizza l'estensione per ottenere dati più utili negli appunti (ad esempio copiando i valori dai siti registrati che non sono altrimenti visibili)

Tutti questi fattori dipendono dal fatto che l'attore malintenzionato sia in grado di fare congetture ragionevoli su quali pagine verranno visitate dagli utenti, ma se si assume una base di utenti di grandi dimensioni, questo diventa un gioco di numeri: qualcuno probabilmente visiterà la pagina di destinazione.

    
risposta data 22.10.2018 - 16:56
fonte