linux user group brescia

immagine del castello

Archivio della mailing list

Linux e i virus

Maurizio Paolini paolini a dmf.unicatt.it
Sab 1 Apr 2006 10:19:13 UTC
On Sat, Apr 01, 2006 at 11:58:12AM +0200, Nicola wrote:
> 
> Ciao a Tutti,
> una domanda che per molti sarĂ  banale.
> 
> Se un programma installato dall'amministratore sul sistema Linux dovesse 
> contenesse al suo interno un Virus, una Backdoor o un Trojaun ecc.. il 
> sistema Linux sarebbe compromesso come lo sarebbe Windows?

La risposta e' necessariamente piuttosto variegata.
Un programma eseguibile installato su un sistema Unix viene eseguito
normalmente con i privilegi di chi richiede l'esecuzione del programma,
anche se e' stato installato dall'amministratore nelle solite directory
tipo /usr/...

Quindi la parte di sistema che puo' essere compromessa in questo modo
e' quella su cui l'utente che esegue il programma ha accesso in scrittura
(la sua home e poco altro).  Ovviamente questo e' gia un bel guaio, ma
in questo caso il sistema non e' compromesso, nel senso che questo non 
basta (di per se) per permettere di acquisire i privilegi di root
(di amministrazione).

Ci sono pero' delle situazioni particolari:

1. Il programma installato ha funzioni di tipo "server", e quindi
verra' in molti casi eseguito da "root", ad esempio con attivazione
al boot della macchina (ad esempio, sendmail, un server web, ecc.

2. Il programma viene installato con il bit "setuid" attivo.  Questo
capita di rado (ad esempio /bin/su e /bin/mount sono di questo tipo),
e te ne accorgi con un "ls -l": compare una lettera "s" dove solitamente
c'e' una "x" per il permesso di esecuzione: (in quarta posizione)

$ ls -l /bin/su
-rwsr-xr-x  1 root root  59740 Jul 25  2005 su
$ ls -l /bin/ls
-rwxr-xr-x  1 root root 91012 Jul 25  2005 /bin/ls

In questo caso anche se l'eseguibile viene invocato da un utente,
avra' i permessi di esecuzione associati al suo 'owner', che
quasi sempre e' 'root' (come per /bin/su).

Comunque credo che la filosofia con windows XP non sia poi cosi'
diversa, forse la differenza *fondamentale* e' cosa deve fare
l'amministratore per installare il programma:
Se c'e' un eseguibile (tipo "install.exe") da eseguire per
installare il tutto e il virus sta nel programma di installazione,
allora ovviamente la macchina e' compromessa.
Se invece si fa una installazione con programmi standard gia presenti
sul sistema (rpm, apt-get, oppure il solito "make install" (dopo aver
controllato il Makefile, pero') )
vale il discorso fatto prima.

mp



Maggiori informazioni sulla lista Lug