Alfonso Maruccia

WinRAR, eseguibili a rischio

Identificata una falla di sicurezza nel popolare software di archiviazione, un tool soggetto alla compromissione nell'utilizzo della funzionalità per la creazione degli archivi auto-estraenti

Roma - C'è una falla di sicurezza in WinRAR v5.21, ha rivelato il ricercatore iraniano Mohammad Reza Espargham, e si tratta di un problema che mette potenzialmente a rischio una fetta non specificata dei 500 milioni di utenti che fanno uso del popolare software di archiviazione per computer.


La falla viene descritta come un bug critico che potrebbe portare all'esecuzione di codice malevolo da remoto, ed è in particolare localizzata nelle funzionalità associate alla creazione degli archivi eseguibili auto-estraenti.

WinRAR (v5.21) permette infatti di specificare un testo da visualizzare nella finestra aperta al lancio dell'archivio eseguibile, e questo testo può contenere un codice malevolo che verrà eseguito al momento del doppio clic sul suddetto eseguibile.
La pericolosità del bug consiste nella mancata necessità di interazione da parte dell'utente con il software, al di là dell'apertura dell'eseguibile, mentre l'exploit proof-of-concept realizzato da Reza Espargham dovrebbe funzionare - con qualche piccola modifica - su tutte le versioni di WinRAR.

RARLAB, la software house che commercializza WinRAR, ha risposto ufficialmente al ricercatore iraniano degradando la falla a un modo "hackish" di fare una cosa che è possibile fare già seguendo la documentazione del tool: i file eseguibili sono "potenzialmente pericolosi per loro stessa natura", dice RARLAB, e gli archivi WinRAR auto-estraenti non fanno differenza.

Alfonso Maruccia
20 Commenti alla Notizia WinRAR, eseguibili a rischio
Ordina
  • Se non altro perchè si usa sta ciof*ca di WinRar invece che 7-Zip.
    non+autenticato
  • - Scritto da: Fetente
    > Se non altro perchè si usa sta ciof*ca di WinRar
    > invece che
    > 7-Zip.

    Io ho entrambi.
    Winrar è utile quando devi modificare il contenuto dell'archivio (es. rinominare un file all'interno) senza doverlo ricreare.
    7z non permette di farlo.

    Detto ciò questa falla è una ******: nessuno usa la funzionalità auto-estraente, visto che, avviso di antivirus e OS a parte, è pure monopiattaforma).
    E nel caso si scarichi un archivio in exe, si usa il menù contestuale di 7z, "estrai qui" che non esegue un bel nulla, visto che salta semplicemente al punto in cui iniziano i dati e tratta il file come dato e non come codice.
    non+autenticato
  • - Scritto da: hhhh
    > - Scritto da: Fetente
    > > Se non altro perchè si usa sta ciof*ca di
    > WinRar
    > > invece che
    > > 7-Zip.
    >
    > Io ho entrambi.
    > Winrar è utile quando devi modificare il
    > contenuto dell'archivio (es. rinominare un file
    > all'interno) senza doverlo
    > ricreare.
    > 7z non permette di farlo.

    Come no?
    Selezioni il file nella finestra di 7z, F2 e rinomini.
  • - Scritto da: panda rossa

    > Come no?
    > Selezioni il file nella finestra di 7z, F2 e
    > rinomini.

    lo fa solo con una manciata di tipi di archivi, se hai un archivio RAR questa cosa non è supportata.
    non+autenticato
  • Dipende se hai usato l'opzione "solid" quando hai creato l'archivio rar.
    non+autenticato
  • - Scritto da: Basilisco di Roko
    > Dipende se hai usato l'opzione "solid" quando hai
    > creato l'archivio
    > rar.

    no, sullo stesso file rar, winrar me lo fa fare, mentre 7z no.
    non+autenticato
  • 7z non dovrebbe nemmeno aprire il file rar. Al massimo il gestore di archivi GUI usato da 7z può lavorare con i files .rar, ma per farlo si appoggia ad utility esterne (il programma rar non è open source e non può essere integrato in una utility di altri)
    non+autenticato
  • - Scritto da: Basilisco di Roko
    > 7z non dovrebbe nemmeno aprire il file rar. Al
    > massimo il gestore di archivi GUI usato da 7z

    Non stavo parlando di Linux, sotto Windows ogni programma ha il suo gestore di archivi.
    Peraltro Winrar (chiaramente mi riferisco al setup per Windows non al pacchetto da scaricare con APT) si riesce ad installare su Linux (provato) e funziona con la sua finestra 'emulata' senza usare il gestore di archivi.
    non+autenticato
  • Sotto windows esiste la console esattamente come in linux, e praticamente tutti i programmi di compressione hanno anche la versione da riga di comando (molto utile se si devono fare più operazioni da script). Anche rar ce l'ha.

    E i programmi con interfaccia grafica spesso si appoggiano ad essa per i formati "stranieri": anche WinZip, che forse era il primo del suo genere, apriva automaticamente i files zip, ma si appoggiava alla riga di comando per i files arj (per l'utente era tutto trasparente)
    non+autenticato
  • - Scritto da: Basilisco di Roko
    > Sotto windows esiste la console


    puoi andare nel dettaglio quanto ti pare, il fatto che rimane è che ho un file rar di cui devo rinominare un file interno: Winrar lo fa, 7zip non lo fa.

    Non vuol dire che 7zip è peggiore, semplicemente non ha una feature che mi è talvolta utile (visto che il 99% dei file che si scaricano sono rar e non 7z)
    Se le gente usasse solo il formato 7z il problema non si porrebbe.
    SE, appunto.

    peraltro, se proprio vogliamo, la soluzione di Linux a me non piace perché manca di 'contesto'.

    es: se estraggo 10 rar con password mi chiede la password ogni volta sotto Windows invece ti chiede se vuoi usare la stessa per tutti.

    es: se seleziono 5 file per estrarli ma un archivio è diviso in due parti ( part1 e part2), quando li estrae non avendo contesto (li elabora come dici uno dietro l'altro chiamando il comando) mi estrae due volte quello diviso in due parti (rinominandolo pure per evitare di sovrascriverlo). Sotto Windows non succede così, capisce il contesto ed estrae correttamente una volta per ogni archivio reale e non per ogni file dato in input.
    non+autenticato
  • > puoi andare nel dettaglio quanto ti pare, il
    > fatto che rimane è che ho un file rar di cui
    > devo rinominare un file interno: Winrar lo fa,
    > 7zip non lo
    > fa.

    7zip lo fa per i file 7z, visto che è nato per quello. La versione open ti può estrarre i files rar (visto che il codice per l'estrazione dei rar è open), ma non può crearli/modificarli, a meno di non appoggiarsi ad utility esterne. Ecco il perché dei limiti.


    >
    > Non vuol dire che 7zip è peggiore, semplicemente
    > non ha una feature che mi è talvolta utile (visto
    > che il 99% dei file che si scaricano sono rar e
    > non 7z)

    Se scarichi un file rar, l'unica cosa che ti serve è di poterlo leggere ed estrarre. Se poi desideri comprimere di nuovo i files, puoi usare il formato che ti pare e piace (anche 7z, se vuoi), nessuno ti impone di usare il rar. Se desideri rinominare un file all'interno di un archivio già esistente, di solito è un archivio che hai creato tu, non che hai scaricato; se è in formato rar è perché TU hai deciso di crearlo in formato rar, ed in tal caso è evidente che hai il programma per crearli. Quindi per 7zip è del tutto inutile supportare questa funzione (se ne hai bisogno è perché hai già winrar installato)

    >
    > Se le gente usasse solo il formato 7z il problema
    > non si
    > porrebbe.
    > SE, appunto.

    In realtà i files che si scaricano da internet spesso sono in formato .zip (se destinati a windows) o .tar.gz (se destinati a linux). E se sono indipendenti dalla piattaforma (in genere, files multimediali) in genere sono già compressi da un algoritmo interno.
    >
    > peraltro, se proprio vogliamo, la soluzione di
    > Linux a me non piace perché manca di
    > 'contesto'.
    >
    > es: se estraggo 10 rar con password mi chiede la
    > password ogni volta sotto Windows invece ti
    > chiede se vuoi usare la stessa per
    > tutti.

    10 rar con la stessa password o un solo rar spezzato in 10 volumi? Perché fare 10 archivi diversi e proteggerli con la stessa password non ha molto senso.


    >
    > es: se seleziono 5 file per estrarli ma un
    > archivio è diviso in due parti ( part1 e part2),
    > quando li estrae non avendo contesto (li elabora
    > come dici uno dietro l'altro chiamando il
    > comando) mi estrae due volte quello diviso in due
    > parti (rinominandolo pure per evitare di
    > sovrascriverlo).

    Ma che stai dicendo? Non è assolutamente così (anche perché se il file è diviso in due parti non si può estrarlo completamente se lavori con una parte sola). Su linux semplicemente se ci sono più parti tu devi ordinargli di decomprimere la prima, e il programma ti apre gli altri in automatico (o ti dà errore se li hai lasciati in directory diverse e non riesce a trovarli). Ho l'impressione che tu non abbia mai usato un programma di compressione da riga di comando (né su windows, né su linux, né su dos... tanto il modo di usarli è identico), per scrivere certe cose


    > Sotto Windows non succede così,
    > capisce il contesto ed estrae correttamente una
    > volta per ogni archivio reale e non per ogni
    > file dato in
    > input.

    Anche su linux, basta dare come input * . Puoi anche usare altri caratteri jolly per estrarre, ad esempio, solo i files che hanno una certa estensione. E se usi la GUI del gestore di archivi puoi selezionare i files e le directory esattamente come in winrar.
    non+autenticato
  • In pratica, ha scoperto che se si esegue un file con estensione .exe di dubbia fonte, realizzato da un malintenzionato, questo può installare del malware nel sistema.

    Qualcuno va a dirgli che questo problema non è limitato agli eseguibili creati con rar?
    non+autenticato
  • Mah, la falla sarà pure molto grave, ma trattandosi di un eseguibile, ci sono 1000 modi per alterare il comportamento legittimo ed infettare un sistema.

    secondo me questa tecnica è solo una goccia in un mare di potenziali problemi che l'utente dovrebbe conoscere nel momento in cui fa doppio click su un EXE....
    non+autenticato
  • sia winrar che altri programmi simili danno la possibilità di eseguire al termine dell'estrazione altri programmi magari contenuti nell'estraente stesso

    questa falla aggiunge una possibilità in più

    detto ciò gli exe autoestraenti io li apro sempre col tasto destro col normale programma

    in questo modo eventuali parametri aggiuntivi vengono ignorati
    non+autenticato
  • > detto ciò gli exe autoestraenti io li apro sempre
    > col tasto destro col normale
    > programma

    Infatti gli exe autoestraenti sono normali file compressi, che possono essere aperti come archivi normali; la sola differenza è che è stato aggiunto un pezzo di codice eseguibile che li decomprime, e questo vale per i formati .rar, .zip, .arj (c'è ancora qualcuno che lo usa?), .ace (comprimeva meglio del rar) ed altri.

    >
    > in questo modo eventuali parametri aggiuntivi
    > vengono
    > ignorati

    Al giorno d'oggi non ha proprio più senso usare i formati autoestraenti; a parte il rischio per la sicurezza, ed a parte il fatto che esistono vari sistemi operativi incompatibili (un autoestraente creato con windows non funziona su osx o linux, ad esempio), ormai tutti i sistemi operativi possono estrarre i files da .zip nativamente, o scaricarsi in pochi secondi il software di decompressione appropriato (rar, come anche altri tool di compressione, è a pagamento, ma permette di scaricare gratis un programmino open source che serve solo a decomprimere); negli anni 90 c'erano tanti programmi di compressione e decompressione, e molti utenti avevano preferenze diverse (ad esempio, c'era chi usava solo .arj, o solo .pak, o .ark), quindi aveva senso usare gli autoestraenti (il destinatario poteva avere un software diverso, e incompatibile); ma oggi, praticamente tutti usano .zip, 7zip o rar (a parte i vari .tar.gz, che però in genere sono solo per linux, dove le utility necessarie sono già fornite di serie). Inoltre, negli anni 90 chi non aveva il software adatto non poteva procurarselo facilmente, mentre al giorno d'oggi una ricerca di pochi secondi indica dove andare a scaricarlo... ed a volte ci pensa direttamente il sistema operativo a suggerire il download corretto.

    Per finire, i software di archiviazione come winrar oggi sono molto meno utili, perché i files che occupano tanto spazio o sono files di sistema (che non ha senso comprimere e trasferire da un computer all'altro), oppure sono GIÀ COMPRESSI (immagini, filmati, tracce audio usano tutti algoritmi di compressione ottimizzati per quel tipo di dati, e molto più efficienti degli algoritmi "generici" dei software di archiviazione) e non avrebbero nessun beneficio a comprimerli ancora.
    non+autenticato
  • - Scritto da: Basilisco di Roko
    > non avrebbero nessun beneficio a
    > comprimerli
    > ancora.

    Non è del tutto vero. Quando si fa upload su un cyberlocker di materiale per qualche ragione "blacklistato", infilarlo assieme ad un file di testo a caso in un archivio rar criptato consente di cambiare l' hash e quindi eludere la rimozione automatica (oltre a permettere di spezzarlo in più parti ed eludere anche i limiti di dimensioni).
    non+autenticato
  • In tal caso non lo comprimi, però. Puoi anche impostare il livello di compressione 0 (l'archiviazione sarà più veloce).

    Di fatto, programmi come winrar fanno tre cose diverse, che nei sistemi posix vengono affidati a programmi distinti: la prima è di unire più files in un archivio unico (nei sistemi posix si usa tar), comprimerli (nei sistemi posix si usa gzip o bzip2), e cifrarli (nei sistemi posix si usa openssl).

    Su linux, ad esempio, per creare un archivio compresso in genere prima si crea un archivio con tar, che sarà la somma di tutti i files, poi lo si comprimerà con gzip (ed eventualmente lo si cifrerà con openssl). Se si desidera comprimere un solo file non serve creare l'archivio, si usa gzip direttamente. E se si vuole cifrarlo, si usa openssl direttamente, saltando le altre fasi.

    Su windows queste utility non ci sono (almeno, non di serie), e molti utenti, piuttosto che installarle (e farle installare anche al destinatario del file per permettergli di aprirlo), decidono di usare i programmi che hanno già (come ad esempio WinRar), anche se fanno dei passaggi in più che sono del tutto inutili (su winRar non si può decidere di usare solo la funzione di cifratura senza l'archiviazione)
    non+autenticato
  • - Scritto da: eheh
    > sia winrar che altri programmi simili danno la
    > possibilità di eseguire al termine
    > dell'estrazione altri programmi magari contenuti
    > nell'estraente
    > stesso
    esatto...... la vuln potrebbe sembrare figa, ma e' solo pratica esotica... visto che by-design winrar permette gia' di suo di eseguire cose dopo l'unpacking, e in silent mode.
    Quindi ..si.. il tizio ha toppatoCon la lingua fuori vabbe' ,capita...Con la lingua fuori

    il giochillo col GateKeeper invece e' parecchio peggiore (anche per l'ingenuita' dei macachi.. ) [si e' per OSX, ma e' anch'esso piu' un trick che una vuln ..]
    non+autenticato
  • - Scritto da: bubba
    > esatto...... la vuln potrebbe sembrare figa, ma
    > e' solo pratica esotica... visto che by-design
    > winrar permette gia' di suo di eseguire cose dopo
    > l'unpacking, e in silent
    > mode.
    > Quindi ..si.. il tizio ha toppatoCon la lingua fuori vabbe'
    > ,capita...Con la lingua fuori
    >
    >
    > il giochillo col GateKeeper invece e' parecchio
    > peggiore (anche per l'ingenuita' dei macachi.. )
    > [si e' per OSX, ma e' anch'esso piu' un trick che
    > una vuln
    > ..]

    è sempre più difficile seguire il tuo slangA bocca storta
    non+autenticato