In un post di pochi giorni fa, Chris Sullo, degli HP Security Labs, ha messo in evidenza un fatto piuttosto sconcertante. Mentre con il suo browser Firefox 3 si accingeva a scaricare la nuova versione 2.0 di Google Chrome, si è reso conto che dopo aver cliccato sul bottone di accettazione licenza, il software si è automaticamente scaricato, eseguito ed installato sul suo PC senza nessun prompt o domanda!
Probabilmente molti di voi non ci vedono nulla di male o di strano, potreste addirittura considerarlo “comodo”, ma un comportamento simile nasconde insidie significative per la sicurezza del proprio computer.
I drive-by dowloads, ovvero i downlaod (di solito malevoli) che avvengono senza il consenso dell’utente, sono uno dei metodi preferiti dal malware per diffondersi, come abbiamo visto un paio di settimane fa nel caso della botnet Torpig.
Prima di scrivere questo post ho voluto verificare di persona questo insano comportamento sulla mia macchina virtuale con Vista e mi duole doverlo confermare a mia volta.
D’altro canto, per fortuna, questo non è il comportamento che Firefox è solito avere di fronte al download di un eseguibile, anzi, fa tutto il possibile per avere il comportamento opposto. E allora che cos’è successo questa volta?
Girovagando per il sorgente della pagina web e per il browser in cerca di una spiegazione, Sullo si è resto conto che tra i propri add-on di Firefox compariva un certo “Microsoft .NET Framework Assistant” che abilitava la funzionalità di Microsoft ClickOnce su Firefox.
Dopo un altro po’ di ricerche è risultato come esso sia stato aggiunto in maniera silente durante l’installazione del .NET Framework 3.5 SP1 (uscito verso fine 2008). Si badi bene all’enfasi su in maniera silente.
A peggiorare la situazione sono le impostazioni di default dell’add-on che permettono ai siti web di far partire, appunto, un installer senza mostrare prima un prompt di qualche tipo.
Le applicazioni ClickOnce sono per certi versi simili a quelle Java. Per installarne una non servono i privilegi di amministratore, perciò anche il loro spazio per eventuali azioni malevoli di solito non è amplissimo.
Ciò non toglie che, anche con bassi privilegi, possano essere effettuate diverse azioni contro la sicurezza del proprio sistema (furto di dati riservati e credenziali, tanto per dire) e che, come la VM Java ha delle vulnerabilità, anche il .NET Framework possa averne.
È quindi naturale pretendere da Microsoft un atteggiamento più trasparente.
Un’altra funzione, meno grave ma comunque fastidiosa, è quella di informare ogni sito web che si visita della versione di .NET installata sul proprio sistema grazie al parametro User-Agent degli header HTTP. Per me, vale sempre la regola che meno informazioni si danno sul proprio sistema e meglio è.
È un po’ come quei siti web che mettono in bella vista “This site is powered by Apache 2.2.x”: grazie, così se ti devo attaccare (per lavoro, ovviamente) so già quali exploit usare e quali no.
Beh, direte voi, ora che lo so magari lo tolgo di mezzo questo maledetto add-on, no? Non è così semplice, infatti, come spiega Brad Abrams, sviluppatore Microsoft, sul suo blog: “abbiamo aggiunto questo supporto a livello macchina al fine di abilitare questa funzionalità per tutti gli utenti del sistema. Sembra ragionevole no? Beh, attivarlo a livello macchina invece che a livello utente ha comportato che il bottone “Disinistalla” è disabilitato nel menu degli add-on di Firefox perché gli utenti standard non sono abilitati a disinstallare componenti a livello macchina.”
Nei commenti del post di può leggere il malcontento di molti utenti per questo add-on, e anche altri esperti di sicurezza hanno recentemente espresso la loro disapprovazione.
Come anche Sullo fa notare, infatti, non c’è niente di ragionevole in questa scelta. Microsoft avrebbe dovuto pubblicare l’add-on sull’apposito sito di Mozilla come chiunque altro, e non modificare in maniera silente il principale browser rivale riducendone la sua sicurezza.
Per disinstallare completamente l’estensione bisogna eseguire i passi descritti nel post di Abrams, tra cui l’editing del registro di sistema e delle configurazioni di Firefox.
Questa almeno era la procedura d’obbligo fino ad inizio maggio. Dopo mesi di lamentele, Microsoft ha infatti da poco rilasciato un update per .NET Framework 3.5 SP1 che permette di disinstallare l’add-on molto più semplicemente.
Questa notizia dà anche l’opportunità di ricordare l’importanza di controllare periodicamente e con attenzione le estensioni di Firefox (ma non solo) attive sul proprio sistema in quanto possibili vettori di molteplici problemi.
Le estensioni malevoli sono un problema già ben noto e piuttosto insidioso per gli utenti meno smaliziati, ma non solo per loro, come abbiamo visto.
Senza parole.
Ora aspetto la spiegazione di Microsoft sull’accaduto, sono certo che sara’ ragionevolissima e che sara’ degna di azzeccarbugli: quella mi pare una voragine, piu’ che una vulnerabilita’ … ora che si fa? c’e’ un workaround? si puo’ disabilitare sta cosa prima che una pagina web malevola mi installi quel che gli pare senza che nemmeno io lo sappia?
non c’è da meravigliarsi se si parla di microsoft, di certo non comportamenti nuovi da parte sua..
ed io ovviamente continuo ad usare il mio bel chrome :P
Brava Microsoft, sempre meglio. E dire che c’è ancora chi va in giro a difenderla a spada tratta…
Cmq ho disattivato al volo il componente maledetto.
Ho notato che gli utenti normali possono comunque disattivare il Plugin senza bisogno di diventare Administrator, per cui se proprio non lo vogliono possono disattivarlo senza problemi.
Comunque non ho capito una cosa, visto che non ho mai usato questo ClickOnce: le “applicazioni” che vengono eseguite sono veri e propri eseguibili che girano nativamente sul sistema senza nessun controllo oppure sono solo degli script o degli eseguibili in ByteCode sandboxati al pari di uno script Flash per esempio?
Se da come ho capito è il secondo caso allora i possibili spazi per fare danni sono veramente ridotti.
Infatti clickonce sarebbe meglio non venisse impiegato in siti web…ha troppa libertà all’interno del nostro os secondo me,cmq qui è colpa di ms è di chi ha fatto il sito secondo me..
Meglio usare il buon vecchio flash imho
Per marzolo:
Sì, disabilitarlo è possibile, disinstallarlo è più complesso.
Per ClickOnce dovrebbero essere contemplate entrambe le possibilità.
Nel caso specifico, parlando dell’installazione di Chrome, si tratta di installazioni vere e proprie sull’account running in quel momento.
Su questa pagina c’è scritto:
http://msdn.microsoft.com/it-it/library/cc716877.aspx
Applicazion browser XAML (XBAP) è una tecnica di distribuzione e assemblaggio di applicazioni grazie alla quale un’applicazione WPF può essere distribuita tramite la connessione di un browser a un server per poi essere eseguita all’interno del browser.
Da come è scritto mi sembra di capire che quelle che scarica il “.NET Framework Assistant” sono dei componenti che girano all’interno del browser al pari di applicazioni in Flash o applet Java.
Se fosse cosi mi sembra normale che non venga chiesta l’autorizzazione, sono elementi che girano in una sandbox e quindi non possono fare danni. Ci saranno delle policy piu rigide all’interno del framework .NET quando esegue applicazioni eseguite in questo modo.
Sempre sulla stessa pagina c’è scritto:
Un’estensione dell’helper WPF installata inoltre riduce al minimo l’impatto del prompt “applicazione sconosciuta” che viene visualizzato agli utenti di Firefox in caso di installazione di una XBAP
Si parla del prompt di “applicazione sconosciuta”, non del prompt che chiede se si vuole lanciare un eseguibile.
Per ora non saprei cosa dire, quando torno a casa approfondirò meglio…
bye
bè solito della microsoft, animali selvatici con sembianze umane.
Ma la pena di morte per queste persone no è
@marzolo
Scusami ma hai letto la news ? Si parla di scaricare e installare in modo automatico e silente Chrome, che non è certo un’applicazione .NET che gira in sendbox! Quindi per favore basta arrampicarsi sugli specchi…
Tranuquilli, come ha detto marzolo si tratta di un’applicazione che gira in sandbox e ha i soliti privilegi da “internet zone”.
Un’applicazione del genere non ha accesso al vostro disco, né può fare chiamate ad altri siti web che non siano quello in cui l’applicazione stessa è stata pubblicata. Al massimo vi può scrivere una specie di cookie. In sintesi non è più dannosa di un file flash.
non mi stupisco affatto, quando mi accorsi che praticamente i siti microsoft non funzionano sotto firefox capii che in microsoft nella migliore delle ipotesi sono degli incompetenti. per ciò che riguarda la rete a mio personalissimo parere sono all’età della pietra, non ha aiutato il fatto che inizialmente non ci avessero creduto.
Io ho appena provato con un applicazione Full-Trust e mi esce il prompt di conferma… Per quelle partial trust magari non esce (non so, non ho provato), ma girano in una sandbox con privilegi ristretti, come le applet Java…
che malfidati ^^
Le applicazioni distribuite con ClickOnce possono anche avere privilegi “Full-trust”, purché siano fornite con un certificato valido emesso da una certification authority affidabile. E’ lo stesso meccanismo di sicurezza che su Vista64 impedisce l’installazione di driver non firmati.
http://msdn.microsoft.com/en-us/library/01daf08f.aspx
Ok che M$ è il demonio ma almeno leggete prima le notizie e informatevi bene!
Grazie per la notizia, utile per chi come me sta aggiungendo alla propria dieta una minima porzione di .net.
MA, mi vien da dire….come mai tanti si lamentavano dei troppi avvisi di Vista relativi alle installazioni?
Se non ci sono ci si lamenta, se ci sono ci si lamenta.
Povera M$ ;-))
tutti voi che ce l’avete tanto con microsoft…che sistema operativo state usando? scommetto windows…e magari pure craccato… perchè non passate a linux? ci sono tante belle distribuzioni facili facili… e per giocare potete sempre usare windows su un’altra partizione…ovviamente senza connessione internet e senza applicativi aggiuntivi
ah dimenticavo…avete provato a fare la stessa cosa usando ie invece di firefox ? magari è proprio un enorme baco di ff
@paleo
Ma hai letto la news?!?
x Alberto Trivero
Ma quando il software si è automaticamente scaricato, eseguito ed installato sul suo PC senza nessun prompt o domanda, lo UAC era disabilitato? Perchè se scavalca anche lo UAC allora la cosa è grave. In un OS che vuole essere moderno niente deve scavalcare lo UAC (o i permessi per il mondo *nix).
Un’altra cosa.
In questo link http://en.wikipedia.org/wiki/ClickOnce nel tuo articolo compare in altro a destra l’immagine di una finestra di richiesta conferma installazione.
Come mai? O forse quell’immagine appare solo per il browser IE?
Se qualcuno ha pensato che questa fosse una mossa di Microsoft per danneggiare Firefox è completamente fuori strada, visto che ClickOnce si comporta cosi ANCHE SU INTERNET EXPLORER!!!
Se hanno fatto cosi è perche lo hanno ritenuto un meccanismo sicuro e affidabile, altrimenti non l’avrebbero neanche fatto su Internet Explorer.
L’unica cosa da chiarire è se questo ClickOnce scarica in automatico solo applicazioni managed quindi sicure al pari di una Applet Java mentre per le applicazioni standard richiede conferma. Se è cosi, come hanno già confermato alcuni utenti e come ho sospettato anch’io fin dall’inizio, allora è una bufala bella e buona.
Mamma mia quanto FUD e quanti insulti gratuiti a Microsoft. Ma almeno informarsi prima di sentenziare giudizi su cose di cui non si sa nulla sembra brutto?
Il giochino di sparare a zero su Microsoft per partito preso ha ampiamente stufato.
All’inizio dell’articolo c’è scritto che installava in automatico il browser Chrome che è un’applicazione standard e non managed. O sbaglio?
Non voglio fare fud o flame, voglio solo capire.
Lakar, come ha detto BrightSoul le applicazioni distribuite con ClickOnce possono anche avere privilegi “Full-trust”, purché siano fornite con un certificato valido emesso da una certification authority affidabile.
E probabile che Google abbia ottenuto un certificato valido con cui crittografa le sua applicazioni da eseguire con ClickOnce e quindi si installano subito dopo aver cliccato sul bottone “Accetta e installa”.
Managed, full trust o qualunque altro tipo di applicazione che sia, penso che sia una vera porcata aggirare il sistema di sicurezza del browser per permettere all’utente di installare un applicativo scaricato dalla rete con uno o due click in meno!
Non ti aumenta la produttività del 50%, anzi non te la aumenta affatto vista la quantità di applicazioni che uno installa giornalmente in questo modo (che penso sia praticamente nulla).
E se magari sull’applicativo che ho scaricato c’è un virus infilato loro malgrado dalla casa madre (è capitato, mica è fantascienza…) e io utente vorrei lanciare un antivirus prima di aprire l’applicazione?
Neanche lo UAC diminuisce la produttività eppure guarda quante critiche si è presa Ms per la presunta invasività.
Avrà capito che agli utenti normali troppi click non piacciono, una volta che hanno cliccato sul bottone “Accetta e installa” non vogliono un’altra finestra che chiede la stessa cosa.
Per quanto riguarda il virus, un buon antivirus residente in memoria fa sempre una scansione in modo trasparente di tutti i file che vengono scaricati.
Inoltre dubito che un’azienda metta il proprio certificato su un file che contiene un virus messo di proposito ed è praticamente impossibile che ci finisca per sbaglio, per cui come scelta di default mi pare buona per i Desktop.
Poi se uno ha esigente di sicurezza piu elevate puo sempre disabilitare il plugin.
Io non ho più la VM con Vista per cui per il momento non posso fare altre prove.
Non si dimentichi che, oltre al funzionamento stesso di ClickOnce, uno dei punti critici della questione è l’installazione dell’add-on (che modifica in maniera significativa il comportamento del browser) senza chiedere alcun consenso da parte dell’utente.
Per l’implementazione di ClickOnce si veda:
How-To use ClickOnce to deploy your Applications
http://weblogs.asp.net/shahar/archive/2008/01/29/how-to-use-clickonce-to-deploy-your-applications.aspx
Mah, se l’ha aggirato Microsoft, lo possono fare anche altri plugin… e cmq tanto per la cronaca, anche Java installa in maniera silente il suo plugin in Firefox.
Aggiungiamoci che quelle pubblicate sul sito di Firefox sono estenzioni e non plugins, che Firefox gestisce in maniera diversa, tra l’altro i plugins dovrebbero essere caricati da una cartella apposita, per cui dovrebbe risultare rimovibile.
@Lakar: Google Chrome viene installato nella cartella del profilo utente sotto Application Data, per questo non chiede i permessi (non li avrebbe chiesti neanche sotto Linux in tal caso).
Edit: mi sbagliavo, in particolare quella del .NET Framework è una estenzione e non un plugin.
Cmq è possibile disattivarlo tranquillamente dalla schermata.
Ottimo esempio… io invece stavo pensando ai programmi per riprodurre video che installano senza chiedere niente i codec per Explorer, oppure tanti altri casi, ma il tuo è piu calzante.
Si tratta di una prassi comune.
linux
Quindi alla fine della storia?
[…] articolo originale: Microsoft rende Firefox meno sicuro – Appunti Digitali Articoli correlati: Microsoft rende IE8 rimovibile da Windows 7? – Appunti […]
@26
L’uac è stato criticato perchè chiede molte volte la stessa conferma. Prova banalmente a cancellare una voce dal menù programmi, ti verranno chieste almeno tre conferme. E’ ridicolo, non ti pare?
Per quanto riguarda il virus, quando dico “loro malgrado” voglio appunto intendere senza malafede da parte del produttore. E comunque il discorso del virus è solo un banale esempio senza scopo, ma vedo che si riesce a fraintendere anche questo pur di difendere microsoft per una funzionalità che nessuno ha chiesto e di cui nessuno sentiva la necessità e che ti viene imposta in un software di terze parti tramite l’installazione di un framework che poco ha a che fare con la navigazione internet.
@26
a me lo UAC chiede conferma solo per i collegamenti del menù di start i cui permesssi NTFS dicono che si trattano di collegamenti non appartenenti al mio utente ma che sono collegamenti globali. Quindi non vedo cosa ci sia di sbagliato, di sicuro lo UAC di Windows è molto meglio dell’errore di “denied access” che ti da Linux quando provi a cancellare file che non appartengono al tuo utente.
Non si tratta di difendere Microsoft, perché in effetti la sua può essere una scelta discutibile.
Ma il fatto che:
a) anche altri plugin vengono installati all’insaputa, vedi Java
b) se un plugin scavalca Firefox, il problema non è solo del plugin, ma anche di Firefox che evidentemente non è così “sandboxato” come qualcuno pensa.
c) il titolo ancora una volta rischia di generare confusione, perché di fatto sono sicuro che altri plugin possano scavalcare Firefox in questo modo.
Solita polemica inutile dei soliti noti che aspettano la minima occasione per sparare su Microsoft.
La funzionalità è sicura. Quando ci saranno virus firmati digitalmente con certificati sicuri, potrete rispolverare i fucili a canne mozze. Nel frattempo godetevi questa comoda funzionalità.
effettivamente alcuni mesi fa me ne sono accorto anch’io di questa installazione senza consenso del plugins Net.framework….ma sono riuscito a trovare una soluzione per disinstallarlo….non fa altro che fungere da assistente, il che serve poco nel caso qualc’uno volesse conoscere la procedura per la disinstallazione ho postato un topic che potrà tornarvi utile, al seguente link:
http://www.youandus.it/phpBB3/viewtopic.php?f=10&t=10400
dell’estensione …..scusate….
Che vergognosi i primi commenti a questo articolo, gente che senza informarsi e riflettere non perde occasione per attaccare microsoft anche quando non ha fatto nulla.
Basta un piccolo rumors infondato come questo (ah, complimenti all’autore…) perche si scaglino contro senza prima verificare che fosse vero almeno e come sempre tirando in ballo Linux che non centra nulla.
Purtroppo questi sono gli utenti di Linux oggi… Linux non e’ piu il sistema degli hacker come una volta, oggi e’ il sistema dei fanboy e dei bimbominkia.
E questa cosa non sono solo io a dirla ma sono gli stessi utenti “seri” di Linux:
La vergogna di usare Linux