Home > Debian, Gnome, Internet, KDE, Links, Linux, Ubuntu, Varie > Un simpatico virus per Linux

Un simpatico virus per Linux

09 dicembre 2009

Riportano la notizia già un paio di siti, è stato avvistato un simpatico virus per ambienti Linux, studiato e impacchettato per distribuzioni basate su Debian come Ubuntu, vediamo quindi criticamente di cosa si tratta e di cosa bisogna aver paura.

Il primo avviso viene dato da una delle vittime nel forum internazionale di Ubuntu la quale chiede innocentemente se quanto indicato sia normale o meno:

I have installed a deb from a site claiming to be an Screensaver however it looked dodgy however I proceeded.
after I looked into the source I found MYSTERIOS ACTIVITY FOR WHAT SHOULD BE A SCREENSAVER… IS THIS REQUIRED? (below)
(also no screensaver was ever shown in gnome-screensaver)

Che recita testualmente:

Ho installato un deb da un sito che sosteneva essere uno screensaver, sebbene sembrasse ingannevole tuttavia ho proceduto (a installare).
Quindi ho guardato nel sorgente e ho trovato MISTERIOSE ATTIVITA’ PER QUELLO CHE DOVREBBE ESSERE UNO SCREENSAVER… QUESTO E’ RICHIESTO? (vedi sotto)
(inoltre nessuno screensaver veniva mostrato su gnome-screensaver)

Segue al testo il codice del malware che non viene qui riportato per vari motivi. Chi volesse informazioni più dettagliate sono riportate al link sopra citato.

L’origine del malware era un file deb di un presunto screensaver per Linux all’interno del sito gnome-look, uno dei più importanti siti di temi ed estetica per Gnome che ospita le creazioni degli utenti.

Fondamentalmente si tratta di uno script che ogni 4 secondi si aggiorna attraverso un sito (la cui pagina è ormai irraggiungibile) ed avvia uno dei due files scaricati il quale esegue dei ping infiniti verso un determinato sito (www.mmowned.com) usando pacchetti da 64 KB circa, ovvero un modesto DDos (Distributed denial of service), dei poveri aggiungo io.

Fatto bene o fatto male non importa, ciò si definisce malware, un po’ artigianale, realizzato da un principiante ma efficace e impacchettato in modo da ingannare utenti imprudenti.

Freniamo i cavalli prima che scappino: la sicurezza di Linux quindi è a rischio? Quella di Linux no, è a rischio quella degli utenti sciocchi che scaricano pacchetti a caso da internet e li eseguono senza sapere cosa stiano realmente facendo.

Non è stata violata la sicurezza del sistema operativo, non è stato trovato un difetto nel sistema né è stato un bug a causare questi accessi non autorizzati. Si tratta di un semplice inganno (social engineering), più o meno l’equivalente dei truffatori che bussano alle case delle vecchiette spacciandosi per operatori dell’Enel.

Tuttavia, che nessuno si inganni: la sicurezza implicita non esiste, a priori, in nessun sistema.
Linux offre di suo una buona sicurezza di base ma non esiste ad oggi nessuna protezione realmente efficace contro le azioni dell’utente se questo ha poteri amministrativi.

Nel momento in cui un utente scarica un deb (o un rpm o un qualsiasi altro archivio che contenga programmi) e avvia l’installazione, quella operazione viene eseguita con l’utente root, il massimo privilegio che esista sui sistemi *nix.

Il pacchetto una volta installato potrà fare praticamente qualsiasi cosa, dal non fare nulla all’eliminare qualsiasi dato sulla macchina comprese le unità esterne o le macchine in rete o persino nascondersi per tutta la vita e svolgere le attività per le quali è stato studiato. Quanto sia capace a celarsi dipende dalla bravura dello sviluppatore del malware.

Disinstallare il pacchetto non è mai una soluzione sufficiente,  come non lo è su Windows non lo è neanche su Linux. Lo script una volta installato può eseguire ciò che preferisce inclusa la creazione di files aggiuntivi, di modifiche al file system, di sostituzione di files di sistema, ovvero il sistema è ormai compromesso e senza sapere per filo e per segno cosa un malware faccia, è impossibile aver la certezza che il virus sia stato rimosso.

Il gestore di pacchetti farà il suo ruolo, ovvero di togliere ciò che ha installato ma non si occupa di togliere ciò che non ha installato direttamente ma è frutto dell’esecuzione di un altro programma, né tantomeno si occupa di rimettere a posto i files che sono stati alterati da altri programmi.

Il consiglio non sarà di certo quello della prudenza, dopotutto chi non ha avuto prudenza in passato non l’avrà in seguito.

Chiunque scarichi software dai repository non ufficiali (di Ubuntu, di Debian, Fedora o qualsiasi altra distribuzione) è soggetto ai rischi che esistono nel mondo, gli stessi rischi che puniscono pesantemente gli utenti Windows. Basta installare un pacchetto contraffatto per distruggere totalmente e irreparabilmente la sicurezza di qualsiasi sistema operativo.

Quindi pensaci due volte prima di installare/eseguire un programma da un sito che non sia un repository ufficiale. La colpa non è di Linux che è insicuro, la colpa è soltanto tua che sei stato sciocco e il sistema operativo non può impedirti di comportarti in maniera stupida.

Fonti:

YOU THERE!! Malicios script installed as a DEB, please read!
Malware Hidden found inside screensaver on gnome-look
And so it begins…

  1. 13 dicembre 2009 alle 9:04

    oggi invece sappiamo che la password serve per mille motivi, anche su LQH diamo sempre comandi che iniziano con sudo.

    Guarda io il tuo discorso lo comprendo in astratto, ma nella pratica insisto: non cambia. Se hai la password di root sei un pericolo. Puoi mettere anche 10 livelli ma la password di root ti servirà abbastanza spesso (pensa a quante volte su Windows installi un driver, fai un aggiornamento, installi la nuova versione di .net per far girare un programma, ecc.)

    Su GNOME e KDE già è leggermente differente. Ormai molte operazioni prima di esclusiva competenza di root adesso vengono eseguite tramite policykit. Ecco questa è una cosa che va incontro al tuo discorso. Policykit non ti fa diventare root ma dà all’utente normale un permesso temporaneo strettamente legato all’operazione da compiere.
    Tieni conto che prossimamente gksudo verrà implementato così (già esiste ma non funziona ancora bene).

    • 13 dicembre 2009 alle 9:37

      io pure comprendo te ma tu sai che il rifacimento di policykit e` uno dei motivi per cui non uso karmic.

      il problema e` molto ampio e inizia dalle installazioni.
      nessuno dice che risolvera` il 100% delle potenziali infezioni ma non e` giusto stare a porte aperte.

      non voglio accanirmi, sono certo che comprendi di cosa mi lamento, non di certo dei virus per linux ma della facilita` con cui si potrebbero far disastri terrificanti se solo si volesse.

      • 13 dicembre 2009 alle 9:47

        vabe’ rifacimento mi pare eccessivo: hanno solo tolto la gui.

        sono certo che comprendi di cosa mi lamento, non di certo dei virus per linux ma della facilita` con cui si potrebbero far disastri terrificanti se solo si volesse.

        Sì l’ho capito ma quello su cui non sono d’accordo è che limitare questa facilità prevenga l’infezione da trojan. E’ sicuramente efficace contro altri tipi di malware, ma non contro quelli che si basano sull’inesperienza dell’utente.
        Quindi d’accordissimo con tutto quello che hai scritto, ma questo non frenerebbe il tipo di malware da cui nasce questa discussione. Altri sì, non questo.

  2. 13 dicembre 2009 alle 9:26

    la uac poveraccia e` fatta male perche` chiede i privilegi per diecimila cose risultando inutile.

    oggi mi sta bene che su linux mi venga chiesta la password per installare i programmi. se fosse una password utile soltanto a posizionare i files nel posto giusto andrebbe ancora meglio, invece il pacchetto durante l’installazione puo` far quel che vuole col massimo accesso esistente.

    io su programmi all’avvio di gnome ho DUE programmi contati, non esiste quindi il rischio che centomila programmi facciano domande continuamente.
    una richiesta di amsn ci potrebbe stare, si potrebbe persino evitare la richiesta e inserire l’elemento su gnome-session-properties ma disabilitato e sara` cura dell’utente attivare quel che vuole avviato.

    da buon conoscitore di linux, se tu volessi ingannare un utente e, sapendo che questo eseguira` il tuo trojan, quanti modi conosci per ficcarti in avvio automatico e complicargli la vita?
    io ne trovo oltre 10 e nessuno di questi e` protetto in alcun modo.

  3. 13 dicembre 2009 alle 9:43

    la uac poveraccia e` fatta male perche` chiede i privilegi per diecimila cose risultando inutile.

    Sì e non solo: UAC funziona al contrario di sudo. L’utente “normale” è un realtà amministratore, ma all’avvio del sistema gli vengono tolti quasi tutti i privilegi. Poi, su richiesta, UAC glieli ridà. Quindi è relativamente facile aggirare UAC e ritrovarsi immediatamente administrator.

    da buon conoscitore di linux, se tu volessi ingannare un utente e, sapendo che questo eseguira` il tuo trojan, quanti modi conosci per ficcarti in avvio automatico e complicargli la vita?
    io ne trovo oltre 10 e nessuno di questi e` protetto in alcun modo.

    Io che sono meno bravo ne trovo 8🙂 ma non ho capito bene come fai ad evitare sto problema. Faccio un trojan che dice di essere un programma che parte in avvio (ad esempio uno strumento di ricerca tipo tracker o beagle, oppure uno di quei tools tipo “avvio rapido del programma XYZ). E l’utente fa quello che gli dice…

    se fosse una password utile soltanto a posizionare i files nel posto giusto andrebbe ancora meglio, invece il pacchetto durante l’installazione puo` far quel che vuole col massimo accesso esistente.

    Anche qui… in teoria hai perfettamente ragione. In pratica come fa l’utente a capire che un certo programma non dovrebbe fare una certa cosa e quindi richiedere un certo livello di autorizzazione? Certo magari dei livelli aiuterebbero (si potrebbero realizzare con policykit) per prevenire lo struttamento di exploit.
    Se dovessi individuare delle priorità, secondo me sono l’home separata con il noexec di default e un profilo apparmor o selinux su firefox, openoffice (per le macro) e tutti i programmi che hanno a che fare con la rete.

    • 13 dicembre 2009 alle 9:58

      ma non ho capito bene come fai ad evitare sto problema. Faccio un trojan che dice di essere un programma che parte in avvio (ad esempio uno strumento di ricerca tipo tracker o beagle, oppure uno di quei tools tipo “avvio rapido del programma XYZ). E l’utente fa quello che gli dice…

      gia` regolando i programmi che partono all’avvio della sessione posso decidere sin da prima dell’accesso se avviarli o meno.

      se dovevi farmi danno l’hai gia` fatto al primo avvio ma non continuerai a farmene e a usarmi come botnet o a rubarmi dati o a manovrarmi dall’esterno se io posso decidere cosa avviare automaticamente, tanto piu` se devo autorizzarlo esplicitamente aprendo session-properties e mettendo la spunta.

      e se sono fesso da farlo perche` mi hai ingannato, almeno prima del login potro` decidere di pentirmi.

      • 13 dicembre 2009 alle 10:09

        sì ok capito.

        ah, a proposito di sicurezza, perché non usi launchpad per il tuo repo?

      • 13 dicembre 2009 alle 10:24

        principalmente perche` non capivo il suo funzionamento, quindi ho studiato come funzionano i repo e a pezzettini ho capito come farne uno.

        ancora oggi launchpad non lo capisco, lo trovo veramente caotico.
        andando su https://launchpad.net/bashare ci sono decine di links che portano a pagine con altri links apparentemente inutili (branches, blueprints).

        veramente non lo reggo quel sito, saro` stupido

      • 13 dicembre 2009 alle 10:30

        ah sì guarda, ti do perfettamente ragione sul caos di LP, io c’ho messo un mese a capirlo e solo perché mi hanno guidato, sennò l’avrei sfanculato🙂
        Ma l’uso dei repo ppa è abbastanza semplice e ti dà una grossa visibilità.
        Io lo trovo comodissimo per compilarsi i programmi senza doversi preoccupare di installare le dipendenze di sviluppo e occupare la macchina (ok tu hai un quad core e te ne puoi fottere, io no, se compilo il kernel mi appesantisce🙂 )

      • 13 dicembre 2009 alle 10:48

        guarda non me ne parlare, sono oltre il limite dello sclero. questa e` una parte della situazione vm su vmware con cui devo lavorare.

        poi ci sono quelle di virtualbox.

        puntare a debian mi ha incasinato ancora di piu`

Comment pages
  1. 13 dicembre 2009 alle 10:06
I commenti sono chiusi.
%d blogger cliccano Mi Piace per questo: