12.3. Caratteristiche dei livelli di sicurezza

Quella che segue è la descrizione delle varie caratteristiche di sicurezza che ogni livello introduce nel sistema. Queste caratteristiche possono essere di due tipi: di rinforzo del sistema, nel qual caso vengono apportate modifiche al sistema stesso, o di controllo periodico, per le quali ciò non avviene.

12.3.1. Rinforzo del sistema

Le caratteristiche del primo tipo, infatti, modificano i permessi, i proprietari e i gruppi dei file e delle directory del sistema, in base al livello di sicurezza impostato.

Esse modificano anche i file di configurazione per adeguarli al livello selezionato, e riavviano eventuali programmi che ne abbiano bisogno per poter rendere attive le modifiche effettuate. Le funzioni di rinforzo del sistema si riattivano ogni ora, e tutte le modifiche vengono registrate in syslog.

Caratteristica \ Livello012345
umask per gli utenti002002002002077077
umask per root002002002002002077
accesso senza password     
autorizzati a connettersi al server Xtutti locale locale nessunonessunonessuno
il server X riceve connessioni datuttituttituttituttilocalelocale
timeout della shellnessunonessunonessunonessuno3600900
su solo da membri del gruppo wheel     
dimensione della cronologia della shell    10 10
sulogin in runlevel 1    
proibisci elenco utenti nei display manager    
ignora echo ICMP    
ignora messaggi di errore ICMP simulati    
login di root diretto  
abilita libsafe    
proibisci agli utenti at e crontab    
scadenza password (in giorni)    6030
proibisci autologin   
consenti "issue" (disegno per login in modo testo)tuttituttituttilocalelocalenessuno
. in $PATH     
avvisi nel file /var/log/security.log  
avvisi direttamente su tty  
avvisi in syslog   
avvisi inviati via e-mail a root  
registra tutti gli eventi del sistema anche su /dev/tty12    
solo root può usare ctrl-alt-del     
i servizi sconosciuti sono disabilitati    
accetta connessioni datutti tutti tutti tutti locale nessuno

12.3.1.1. umask per gli utenti

Imposta semplicemente umask per gli utenti normali al valore corrispondente al livello di sicurezza.

12.3.1.2. umask per root

La stessa cosa, ma per root.

12.3.1.3. accesso senza password

L'accesso alle console è consentito senza richiedere una password.

12.3.1.4. autorizzati a connettersi al server X

  1. tutti: chiunque da qualsiasi luogo può aprire una finestra di X sul vostro schermo.

  2. locale: solo le persone connesse a localhost possono aprire una finestra X sul vostro schermo.

  3. nessuno: nessuno può farlo.

12.3.1.5. Il server X riceve connessioni da...

  1. tutti: il server X riceve connessioni via TCP.

  2. locale: il server X riceve connessioni da socket UNIX.

12.3.1.6. Timeout della shell

Se l'utente è inattivo per un certo numero di secondi, la shell termina.

12.3.1.7. su solo da membri del gruppo wheel

Solo i membri del gruppo wheel sono autorizzati a usare su per assumere l'identità di root.

12.3.1.8. Dimensione della cronologia della shell

È il numero di comandi che rimangono memorizzati al termine di una sessione della shell.

12.3.1.9. sulogin in runlevel 1

sulogin serve a proteggere l'accesso all'initlevel di un singolo utente (è necessario digitare la password di root per ottenere l'accesso).

12.3.1.10. Proibisci elenco utenti nei display manager

Impedisce che sia mostrato l'elenco degli utenti presenti sul sistema in KDM e GDM.

12.3.1.11. Ignora echo ICMP

Non risponde alle richieste di ping.

12.3.1.12. Ignora messaggi di errore ICMP simulati

Evita di gestire i messaggi di errore ICMP simulati.

12.3.1.13. Login di root diretto

Consente il login di root senza usare il programma su.

12.3.1.14. Abilita libsafe

Abilita la protezione libsafe (solo se è installato il pacchetto libsafe).

12.3.1.15. Proibisci agli utenti at e crontab

Gli utenti non possono usare i programmi at e crontab, mentre root può usarli. Se volete darne l'autorizzazione solo ad alcuni utenti, aggiungeteli rispettivamente in /etc/at.allow e /etc/cron.allow.

12.3.1.16. Scadenza password

Le password scadono dopo un certo numero di giorni; gli utenti devono cambiare la propria password prima della data di scadenza se non vogliono che i loro account siano disattivati.

12.3.1.17. Proibisci autologin

Non è possibile usare il programma autologin.

12.3.1.18. Consenti "issue"

Se impostato su nessuno, non sarà mostrato alcun disegno in nessun login in modo testo. Con locale, viene mostrato il disegno solo sulla console locale. Se impostato su tutti, il disegno viene mostrato in tutti i tipi di login.

12.3.1.19. . in $PATH

L'elemento . viene aggiunto nella variabile d'ambiente $PATH, agevolando l'esecuzione di programmi situati nella directory di lavoro attuale (ciò rappresenta, entro certi limiti, anche una falla di sicurezza).

12.3.1.20. Avvisi nel file security.log

Tutti gli avvisi generati dalla verifica quotidiana vengono registrati nel file di nome /var/log/security.log.

12.3.1.21. Avvisi direttamente su tty

Tutti gli avvisi generati dalla verifica quotidiana vengono mostrati direttamente sulla console dell'utente root.

12.3.1.22. Avvisi in syslog

Gli avvisi generati dalla verifica quotidiana vengono indirizzati verso il servizio syslog.

12.3.1.23. Avvisi inviati via email a root

Gli avvisi generati dalla verifica quotidiana vengono anche inviati via email a root.

12.3.1.24. I servizi sconosciuti sono disabilitati

Durante l'installazione di un pacchetto, i servizi vengono aggiunti tramite chkconfig --add <servizio> solo se il nome del servizio è presente nel file /etc/security/msec/server.

12.3.1.25. Accetta connessioni da...

  1. tutti: tutti i computer possono connettersi alle porte aperte.

  2. locale: solo localhost può connettersi alle porte aperte.

  3. nessuno: nessun computer può connettersi alle porte aperte.

Questa protezione è garantita dal pacchetto tcp wrapper. Se volete consentire l'accesso a un servizio quando questo non è consentito a nessuno, usate il file /etc/hosts.allow. Ad esempio, se volete consentire connessioni ssh provenienti da qualsiasi luogo, aggiungete la seguente linea in /etc/hosts.allow:

sshd: ALL

12.3.2. Controlli periodici

Se il livello di sicurezza è superiore a 0, i controlli vengono effettuati ogni notte.

Caratteristica \ Livello012345
controllo generale di sicurezza  
controllo dei file suid root  
controllo MD5 dei file suid root  
controllo file scrivibili   
controllo permessi   
controllo file gruppo suid   
controllo file senza proprietario   
controllo promiscuità   
controllo porte in ascolto   
controllo integrità file passwd   
controllo integrità file shadow   
controllo integrità dal database RPM   

Notate che sette dei dodici controlli periodici possono rilevare eventuali cambiamenti nel sistema. Essi memorizzano la configurazione del sistema al momento dell'ultimo controllo (un giorno prima) e vi avvisano di eventuali cambiamenti avvenuti nel frattempo nei file contenuti nella directory /var/log/security/. Questi controlli sono:

12.3.2.1. Controllo generale di sicurezza

  1. "NFS filesystems globally exported" ("filesystem NFS esportati globalmente"): viene considerata un'impostazione poco sicura, dato che non esistono restrizioni su chi può montare quei filesystem.

  2. "NFS mounts with missing nosuid" ("mount NFS senza nosuid"): questi filesystem sono esportati senza l'opzione nosuid, che impedisce ai programmi suid di funzionare sul sistema.

  3. "Host trusting files contain + sign" ("i file dei permessi degli host contengono il segno +"): significa che uno dei file /etc/hosts.equiv, /etc/shosts.equiv o /etc/hosts.lpd contiene nomi di host a cui è consentita la connessione senza che venga effettuata un'autenticazione completa.

  4. "Executables found in the aliases files" ("trovati eseguibili nei file degli alias"): è un avviso che riporta i nomi di eventuali eseguibili incontrati nei due file /etc/aliases e /etc/postfix/aliases.

12.3.2.2. Controllo dei file suid root

Controlla se nel sistema sono stati cancellati o creati nuovi file suid root. Se questo è avvenuto, viene generato un avviso con l'elenco dei file in questione.

12.3.2.3. Controllo MD5 dei file suid root

Controlla la firma MD5 di ogni file suid root presente nel sistema. Se la firma è cambiata, significa che è stata fatta una modifica al programma, forse una back door. Viene quindi generato un avviso.

12.3.2.4. Controllo file scrivibili

Controlla se i file del sistema sono modificabili da chiunque. Se è così, genera un avviso contenente la lista dei file a rischio.

12.3.2.5. Controllo permessi

Controlla i permessi di alcuni file speciali come .netrc o i file di configurazione degli utenti. Controlla anche i permessi delle directory base degli utenti. Se questi permessi sono troppo deboli, o se i proprietari sono insoliti, viene generato un avviso.

12.3.2.6. controllo file sgid

Controlla se nel sistema sono stati cancellati o creati nuovi file del gruppo sgid. Se questo è avvenuto, viene generato un avviso con la lista dei file in questione.

12.3.2.7. Controllo file senza proprietario

Questo controllo cerca i file i cui utenti o gruppi proprietari sono sconosciuti al sistema. Se simili file vengono trovati, viene automaticamente impostato come proprietario l'utente/gruppo nessuno.

12.3.2.8. Controllo promiscuità

Questo controllo esamina tutte le schede Ethernet per sapere se esse sono in modalità "promiscua". Questa modalità permette alla scheda di intercettare tutti i pacchetti da essa ricevuti, anche quelli non diretti a lei. Questo può significare che uno sniffer è in funzione sulla vostra macchina. Va sottolineato che questo controllo è impostato per essere eseguito a intervalli di un minuto..

12.3.2.9. Controllo porte in ascolto

Genera un avviso con un elenco di tutte le porte in ascolto.

12.3.2.10. Controllo integrità file passwd

Controlla che ogni utente abbia una password (e non una vuota o facile da indovinare), e verifica che essa sia mascherata.

12.3.2.11. Controllo integrità file shadow

Controlla che ogni utente contenuto nel file shadow abbia una password (e non una vuota o facile da indovinare).

12.3.2.12. Controllo integrità dal database RPM

Controlla che nessun file dei pacchetti installati sia stato modificato, e verifica che nessun pacchetto sia stato installato, rimosso o aggiornato dall'ultima volta che è stata effettuata la verifica.


Tux on Star from MandrakeSoft Linux è un marchio registrato di Linus Torvalds. Tutti gli altri marchi e copyright appartengono ai rispettivi proprietari.
Se non diversamente specificato, i diritti di tutto il contenuto di queste pagine e di tutte le immagini sono proprietà di MandrakeSoft S.A. e MandrakeSoft Inc. 2002.
http://www.mandrakelinux.com/