Secure Browser Avira: piani e strategie (parte 1)

Il nodo gordiano

Per avere un secure browser, i problemi di sicurezza devono essere risolti entro un certo lasso di tempo. Sembra logico, no? Per noi questo vuol dire pochi giorni dopo che ne siamo venuti a conoscenza. Google Chrome risolve le vulnerabilità ad ogni rilascio, il che ci obbliga a sincronizzare i nostri rilasci con quelli di Chrome. Ma ogni modifica che effettuiamo nel codice sorgente Chromium causa conflitti di fusione. Quando le modifiche realizzate da noi (che sono specifiche di Avira) e quelle realizzate dagli sviluppatori Chromium si sovrappongono i nostri strumenti non possono fonderle insieme. Dopo circa 150 modifiche abbiamo avuto un conflitto alla settimana. Il che vuol dire passare ore a sbrogliare codice.

La spada che taglia il nodo: non introdurremo differenze nel codice Chromium.

Cerchiamo di vedere il browser più come una distribuzione Linux (Ubuntu, per esempio). Selezioniamo gli strumenti migliori. Li combiniamo. Li manteniamo. Li ottimizziamo.

Estensioni Open Source

Ci sono meravigliose estensioni per la sicurezza dei browser là fuori. Investiamo alcuni anni a copiare le loro caratteristiche. Possiamo ottenere versioni closed source di queste estensioni efficaci quasi quanto le originali, ma NOSTRE!

… scherzavo …

Abbiamo deciso di presentarci alle community e spiegare loro i nostri progetti. Abbiamo iniziato a contribuire e contribuiremo sempre più in futuro (abbiamo speso più tempo del previsto con la fondazione per il browser, quindi siamo leggermente indietro rispetto alla tabella di marcia, ma questo è il tema di un altro post). Le prime estensioni sono state integrate, altre lo saranno presto. Un’ingegneria efficiente. Una situazione di reciproco vantaggio.

Contribuzione a Chromium

Solo le differenze di codice tra il nostro browser e Chromium causano problemi. Se vogliamo una funzione di sicurezza e forniamo codice a Chromium non emergono differenze né conflitti di fusione. Accidentalmente proteggiamo più utenti di quanti dovremmo, ma del resto nessuno è perfetto. 😉

Abbiamo già fornito una serie di modifiche che consentono una più facile personalizzazione (vedi sotto). Ma solo loro  HTTPS-Ovunque hanno una lista dei desideri di 2-3 modifiche di codice Chromium. I prossimi passi saranno l’ampliamento dell’interfaccia di programmazione di estensioni (API) perché vogliamo che nelle estensioni siano disponibili più informazioni. Per esempio ora i dettagli di crittografia (suite crittografate utilizzate, Certificati) non sono visibili da un’estensione. Il che significa che ad esempio Calomel per ora non può essere scritto per Google Chrome.

Contribuzione al codice di terzi

Chromium contiene oltre 100 librerie di terze parti. Che a loro volta possono contenere vulnerabilità, errori e difetti. Quando troviamo un errore lo ripariamo e inviamo le patch a monte (agli autori). Attualmente stiamo sperimentando il modo migliore per risolvere quanti più problemi possibili alla settimana. Appena trovata una soluzione valida, vi informeremo tramite un altro post del blog.

Le nostre estensioni

Naturalmente abbiamo già integrato SBA (Sicurezza browser Avira) e la nostra Safe Search. Fin qui tutto facile. Andiamo avanti.

I nostri strumenti esterni

Adesso pianifichiamo di integrare il nostro scanner AV nel browser. Effettuiamo già le scansioni con Web Protection, ma il futuro di Internet è la crittografia (più HTTPS, \o/). Web Protection è un proxy e scansionare il traffico crittografato con un proxy causa molti critto-grattacapi. Fortunatamente il browser decrittografa i dati (deve farlo) appena li individua: scansionare il contenuto dei pacchetti di dati decrittografati direttamente nel browser risolve tutti i critto-grattacapi.

Per ora Web Protection va bene. Ma stiamo già pensando al futuro. Così quando arriverà il momento saremo già pronti – con capacità di scansione integrate nel browser.

Quello che è scritto in questo articolo rappresenta solo il 50% di ciò che pianifichiamo di fare. Tenetevi pronti per altre due strategie avanzate che intendiamo utilizzare e che saranno descritte nel prossimo post!

TL;DR:
C’è così tanto che possiamo fare per migliorare il browser. Senza modificarne l’essenza.

A metà strada dalla Tana del coniglio. Tempo di una pausa.
Thorsten Sick

Questo articolo è disponibile anche in: IngleseTedescoFrancese

I use science to protect people. My name is Thorsten Sick and I do research projects at Avira. My last project was the ITES project where I experimented with Sandboxes, Sensors and Virtual Machines. Currently I am one of the developers of the new Avira Browser