Posso ottenere un virus usando "sudo apt-get install"?


74

Vorrei assicurarmi che il download del software sia sicuro sudo apt-get install. I pacchetti vengono scansionati da qualche parte? Tutti i pacchetti scaricati con questo comando sono privi di virus?

Se non vi è alcuna garanzia che non siano privi di virus, dopo aver installato un pacchetto contenente virus, l'attaccante sarebbe in grado di controllare completamente la mia macchina? Esiste un modo per controllare tutti i pacchetti che sono stati installati sul mio computer da me? (Non dal sistema automaticamente. Vorrei filtrarli per vedere tutti i pacchetti che sono stati installati manualmente da me, non dal sistema.)


8
La domanda è valida, ma contiene idee sbagliate sui virus. Una lista nera come unico mezzo per evitare l'infezione è un pessimo metodo , nonostante la sua ubiquità grazie al modello di sicurezza invertito di Windows. "Scansionare" un pacchetto software è un modo orribile per prevenire azioni dannose.
Carattere jolly

2
Tomas, il tuo commento è stato rimosso da un moderatore. Ti preghiamo di NON pubblicarlo più e più volte.
jokerdino

Risposte:


108

aptsu un sistema Ubuntu predefinito è molto improbabile che si verifichino virus. Tuttavia, ciò non significa che non sia possibile:

  • PPA dannoso
    Una delle funzionalità di APT è la possibilità per gli amministratori di aggiungere archivi di pacchetti personali (PPA) o altre fonti software alla cache APT. Queste fonti APT di terze parti non sono necessariamente attendibili e possono contenere virus. Tuttavia, sarebbe necessaria un'azione intenzionale dell'amministratore della macchina per aggiungere una di queste fonti infette, rendendo piuttosto difficile per se stessa aggiungersi.
  • Repository
    compromesso In teoria, un repository software può essere hackerato da una parte malintenzionata, causando .debpotenzialmente il download di file dannosi. Tuttavia, i repository di software ufficiali sono controllati con molta attenzione e la sicurezza di questi repository è piuttosto limitata. A un hacker sarebbe difficile trovare una delle fonti ufficiali del software Ubuntu, ma fonti di software di terze parti (vedi sopra) potrebbero essere compromesse molto più facilmente.
  • Attacchi MITM / rete attivi
    Se una rete è compromessa più in alto (ad esempio dal tuo ISP), è possibile ottenere un virus da fonti software ufficiali. Tuttavia, un attacco di questo calibro richiederebbe uno sforzo estremo e la capacità di gestire molti siti, inclusi i server di distribuzione delle chiavi GPG e i repository ufficiali.

  • Esistono vulnerabilità di codice male scritto / dannoso nel codice open source, sottoposto a revisione paritaria e gestito. Sebbene queste cose non siano tecnicamente considerate "virus" per definizione, alcuni exploit nascosti o mai rivelati nel codice potrebbero consentire a un utente malintenzionato di posizionare un virus o diffondere il sistema. Un esempio di questo tipo di problema potrebbe essere Heartbleed di OpenSSL, o il molto più recente Dirty CoW. Si noti che i programmi da universeo multiverserepository sono potenziali minacce di questo calibro, come spiegato qui .

apt(per la sua importanza sui sistemi Linux) è abbastanza pesantemente protetto da quasi tutti questi tipi di attacchi sia sul lato client che sul lato server. Sebbene siano possibili, un amministratore che sa cosa sta facendo e sa leggere i log degli errori sarà in grado di impedire che questi attacchi si verifichino.

Inoltre, aptapplica anche la verifica della firma per garantire che i file scaricati siano legittimi (e scaricati correttamente ), rendendo ancora più difficile intrufolarsi dal malware apt, poiché queste firme digitali non possono essere simulate.


Per quanto riguarda la risposta a un incidente di infezione da malware, il percorso più semplice in assoluto è quello di masterizzare il sistema a terra e ricominciare da un backup recente (e noto). A causa della natura di Linux, può essere molto facile per il malware manifestarsi così profondamente nel sistema che non può mai essere trovato o estratto. Tuttavia, pacchetti come clamave rkhunterpossono essere utilizzati per scansionare un sistema alla ricerca di infezioni.


6
"brucia il sistema a terra" - per un virus davvero ben scritto, questo è quasi letteralmente vero. La distruzione fisica dell'hardware sarà sicura; qualcosa di meno sarà un duro lavoro (ad esempio, se il firmware del disco rigido è stato rootato).
Martin Bonner,

2
Vale la pena notare che questi tre esempi non si escludono a vicenda. È possibile aggiungere PPA di terze parti che è stato violato tramite MITM.
el.pescado,

11
Come è possibile (3) anche? I pacchetti sono firmati e la chiave pubblica per i repository ufficiali di Ubuntu proviene dal supporto di installazione di Ubuntu. Non credo che tu possa essere infettato a meno che non inizi da un supporto di installazione falso.
Federico Poloni,

6
È necessario aggiungere l'opzione numero 4: Codice subdolo in un pacchetto ufficiale. Bugs come Heartbleed dimostrano che per anni possono esistere gravi bug anche apertamente in software open source pesantemente mantenuti. Quindi esiste sempre la possibilità per un utente malintenzionato di immettere codice dannoso in un repository in modo tale da sopravvivere alla revisione tra pari. In questo caso è sufficiente scaricare la backdoor come pacchetto completamente firmato dal server originale.
Falco,

22
Si noti che la situazione non è certamente migliore di questa sui sistemi non Linux. Al contrario, davvero. Il modo standard per ottenere software su Windows è letteralmente scaricarlo da qualche sito casuale e sperare che non sia successo nulla di brutto. Quello che descrivi riguarda il meglio che puoi fare in termini di installazione sicura del software. (Penso che valga la pena menzionare esplicitamente la risposta, poiché qualcuno che pone questa domanda è a livello di principiante e potrebbe non rendersene conto.)
jpmc26

16

apt-getverrà installato solo dai repository Ubuntu ufficiali che sono controllati o dai repository che hai aggiunto alle tue fonti. Se aggiungi tutti i repository che incontri, potresti finire con l'installazione di qualcosa di brutto. Non farlo.


1
Ci sono casi in cui è necessario installare * .deb da altri siti Web, ma credo che abbiano anche somme di controllo / somme di hash. Ci sono volte in cui è necessario aggiungere un ppa per scaricare da altri repository ma il comando apt-get è ancora usato. Sarebbe bello controllare i ppa in un elenco di "siti Web non
validi

8
Un checksum protegge dalla corruzione accidentale, ma non dalla manomissione intenzionale: sono le firme OpenPGP che proteggono dalla manomissione.
Charles Duffy,

1
Supponendo che ti fidi della persona che ha firmato il pacchetto e puoi controllare la chiave in modo affidabile. Onestamente, ogni persona a volte scarica software dal web. I repository sono grandi ma non infiniti. La perfetta sicurezza e fiducia è un po 'un sogno.
Andrea Lazzarotto,

Ma non puoi aggiungere altri repository?
Jeremy,

"Se aggiungi tutti i repository che incontri, potresti finire con l'installazione di qualcosa di brutto. Non farlo."
Marc

5

I file scaricati da sudo apt-getvengono confrontati con una somma di controllo / somma hash per quel file per garantire che non sia stato manomesso e privo di virus.

In effetti, i problemi che le persone hanno riscontrato quando si usa "sudo apt get hash sum" sono troppa sicurezza contro i virus.

Linux non è completamente privo di virus, tuttavia gli incidenti sono probabilmente 1000 volte inferiori rispetto a Windows.

Quindi, a giudicare dal mio nome, potrei essere di parte :)

Il commento del 28 novembre 2017 menziona come Windows abbia 1.000 workstation in più rispetto a Linux, quindi perché preoccuparsi di hackerare Linux. Fa emergere il fatto che Linux è attualmente in esecuzione su tutti i 500 supercomputer più veloci e la maggior parte dei server Web esegue Linux, il che lo rende il modo migliore per hackerare tutte le workstation Windows che si collegano a Internet.

Google Chrome, Android e Windows 10 offrono agli utenti ampie opportunità di regalare la loro privacy e probabilmente un po 'di sicurezza allo stesso tempo.


4
Eh? I problemi di checksum non riguardano tanto l'evitamento delle modifiche intenzionali quanto la corruzione accidentale - a meno che non ci sia una firma (e sì, i pacchetti Debian hanno anche firme OpenPGP), un checksum può essere modificato tanto quanto i dati grezzi stessi possono essere . Se un checksum su un pacchetto non corrisponde a quello che era presente al momento della creazione, non ci si può aspettare che quel pacchetto possa essere estratto per ottenere il contenuto originale desiderato.
Charles Duffy,

@Jeremy Tuttavia Linux esegue i primi 500 supercomputer e la maggior parte dei server Web, il che è un ottimo modo per hackerare tutti i client Windows collegati.
WinEunuuchs2Unix

3

Sebbene apt-get verrà installato solo dai repository ufficiali di Ubuntu, non garantisce che il pacchetto compresso al 100% sia pulito.

Se il repository viene violato, l'hacker può iniettare codice dannoso nei pacchetti. Il server Linux Mint come esempio è stato violato e l'hacker ha iniettato malware nei propri file ISO. http://www.theregister.co.uk/2016/02/21/linux_mint_hacked_malwareinfected_isos_linked_from_official_site/


3
Anche gli scambi di NSA, DNC e bitcoin sono stati hackerati di recente. Penso che sia sicuro affermare che i repository Ubuntu sono privi del 99,99999% di virus, che è lo spirito della domanda e delle nostre risposte. In effetti, nessuno ha effettivamente prodotto un virus Ubuntu in queste domande e risposte. C'è il virus / malware Linux di vecchia data che KASLR risolve e che la maggior parte delle persone non conosce nemmeno e di cui ho letto solo su un sito Web alternativo non MSM basato su non Linux e basato esclusivamente su notizie globali. Vorrei dire che Linux ha molti meno virus di Windows e che Ubuntu Update è sicuro. Tuttavia, come sempre, fai attenzione ai siti Web.
WinEunuuchs2Unix,

2
C'è una grande differenza tra l'iniezione di codice dannoso in un ISO e nei server apt. Gli ISO non sono completamente firmati: sono disponibili strumenti moderni che potrebbero essere utilizzati per tale firma (firma EFI per proteggere il bootloader, validazione GRUB OpenPGP per proteggere il kernel e initrd, dm-verity per proteggere il filesystem di root), ma dm -verity non è ancora ampiamente utilizzata al di fuori di Chrome OS. I contenuti dei server apt, d'altra parte, hanno tutti le firme OpenPGP - dovresti entrare nella workstation di uno degli sviluppatori fidati per forgiarli.
Charles Duffy,

1
L'iniezione di ISO e il servizio di pacchetti apt infetti sono completamente diversi. Un server può essere violato e iso infetto può essere servito, ma apt non può essere distribuito in questo modo. ci sono firme che lo impediranno
Anwar,

-4

dipende da quali sono le tue autorizzazioni sudo. accesso root? tutte le scommesse sono disattivate - stai ipso facto a fidarti dell'ecosistema apt-get che può o meno essere sicuro. Penso che sia un'idea terribile, ma lo faccio sempre perché è l'unica scelta. Se stai eseguendo un'installazione delicata in cui la sicurezza ha un costo, eseguire sudo su qualcosa che non controlli completamente è probabilmente pazzo. se sei solo una ragazza normale allora probabilmente stai bene.


La domanda qui è se e in che misura l'ecosistema apt-get sia effettivamente sicuro, cosa che non sono sicuro che questa risposta affronti direttamente. Per quanto riguarda la "terribile idea" - oltre a distribuire le chiavi OpenPGP di proprietà di sviluppatori fidati con il sistema operativo (come già fatto) e richiedere un'azione esplicita dell'utente per abilitare chiavi aggiuntive (come quando si aggiunge un PPA), quali misure aggiuntive dovrebbero o potrebbero aggiungi se stavi costruendo il tuo sistema di distribuzione del software?
Charles Duffy,

no, la domanda è molto esplicita. basta leggere l'op. "Posso ottenere un virus?" si, inequivocabilmente. costruire il proprio sistema di distribuzione del software è una domanda completamente diversa.
mobileink,

ps. Ho detto "Penso" che sia un'idea terribile, che non può essere messa in discussione. In effetti, è una pessima idea per i sistemi di distribuzione del software richiedere sudo.
mobileink,

6
Direi che è un'idea ancora più terribile consentire a un utente non privilegiato di installare software in posizioni in cui si trova nel PERCORSO predefinito per altri utenti non privilegiati. Qui l'homebrew è un grave trasgressore - non appena viene eseguita la sua configurazione, qualsiasi processo compromesso in esecuzione con il relativo uid può installare il software /usr/local/binsenza richiedere all'utente di affermare che intende autorizzare attività amministrative.
Charles Duffy,

3
Teoricamente possibile, ma molto meno probabile. E questo non è Security SE, dove ci occupiamo del teorico: è Ask Ubuntu, focalizzato sugli utenti finali con domande fondate sulla pratica.
Charles Duffy,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.