Inserisci Infobox

NFS security

Breve rassegna della security history, problematiche attuali

NFS security
Autore: neo - ( Revisione: al ) - Ultimo Aggiornamento: 2003-04-01 17:35:33 - Data di creazione: 2003-04-01 17:35:33
Tipo Infobox: DESCRIPTION - Skill: 3- INTERMEDIATE

Il protocollo NFS presenta varie problematiche di sicurezza legate soprattutto all'uso di RPC.
Il metodo più sicuro per utilizzare NFS è quello di limitarne l'uso in network considerate trusted e di appoggiarsi a servizi di firewalling ed a una configurazione molto limitativa dal punto di vista dei permessi di accesso alle risorse.
Di fatto nella gran parte dei casi non serve e non ha senso avere un server NFS raggiungibile direttamente via Internet, per cui già molte delle minacce possibili possono venir escluse da meccanismi di limitazione di accesso che prescindono dal server stesso e dalla sua configurazione.

Riassumendo:

- Installare e utilizzare l'ultima versione di nfs-utils oltre che un kernel aggiornato.
Verificare i vari aggiornamenti del kernel su www.kernel.org e appoggiarsi a siti come www.incidents.org o www.cert.org per la verifica di BUGS sui protocolli NFS e RPC.

- Esportare i filesystem in sola lettura, se possibile, ed a un limitato numero di host considerati trusted.
Configurare il proprio /etc/exports aggiungendo le opzioni ro per la sola lettura del filesystem esportato e limitare l'uso di wildcards per le definizioni di chi dovrà accedere alle risorse. Inoltre è bene poter utilizzare l'opzione root_squash ove è possibile, per limitare l'accesso alle risorse con UID di root.

- Lato client si può limitare l'esecuzione dei binari ed evitare la possibilità di lanciare comandi con SuID root tramite le opzioni noexec e nosuid da specificare nelle opzioni del comando di mount o nel file di configurazione /etc/fstab.

- Verificare che l'export list non ecceda i 256 caratteri.
Alcuni sistemi operativi ingnorerebbero la completa export list. [Advisory CA-94:02]

- Filtrare i pacchetti UDP e TCP  porte 2049 (nfs) 111 (rpc) provenienti dall'esterno o da network da cui non si prevede il mounting di export nfs.

- Se possibile e veramente necessario incapsulare il protocollo NFS con SSH (SNFS) per criptare i dati in transito.
Tramite il protocollo SSHv2 è possibile fare un tunneling per il protocollo NFS over UDP.
Maggiori informazioni e documentazione sono reperibili al seguente indirizzo:
http://www.math.ualberta.ca/imaging/snfs/

- Utilizzare Auditing tools come Nessus, nmapo SATAN per eseguire test e verificare possibili vulnerabilità o errori di configurazione.

Storia delle vulnerabilità su NFS
Autore: al - Ultimo Aggiornamento: 2003-04-01 17:58:10 - Data di creazione: 2003-04-01 17:58:10
Tipo Infobox: DESCRIPTION - Skill: 3- INTERMEDIATE

Il fatto di appoggiarsi a Remote Procedure Calls rende l'implementazione di NFS delicata dal punto di vista della sicurezza in quanto implica un ambiente RPC protetto e correttamente implementato.
A prescindere inoltre dalle potenziali vulnerabilità di RPC esistono bug noti in varie implementazioni del protocollo NFS.
Questi ovviamente vanno considerati solo se si riferiscono al proprio server NFS (tipo e versione) e  se riguardano problmetiche presenti nel proprio ambiente.
Come sempre, oltre ad una corretta configurazione del servizio (riassumibile con la regola aurea di controllare che tutti i permessi siano corretti, in particolare quelli in scrittura, e non espongano informazioni sensibili) è opportuno avere una versione di un server NFS aggiornata e non vulnerabile a exploit noti.

Segue un elenco indicativo delle vulnerabilità riscontrate in varie implementazioni del protocollo NFS. Fonte: Security Focus Vulnerability Archive.

     29-01-2003:      PLP Tools plpnfsd Syslog Format String Vulnerability
     17-10-2002:      Solaris NFS lockd Remote Denial of Service Vulnerability
     06-08-2002:      Multiple Vendor BSD NFS Zero-Length RPC Message Denial Of Service Vulnerability
     30-05-2002:      TCPDump Malformed NFS Packet Buffer Overflow Vulnerability
     06-09-2001:      NetBSD NFS Denial of Service Vulnerability
     24-07-2001:      Microsoft Services for Unix NFS DoS Vulnerability
     01-05-2000:      Linux knfsd Denial of Service Vulnerability
     09-11-1999:      Linux nfsd Remote Buffer Overflow Vulnerability
     24-06-1999:      RedHat Linux nfs-server Vulnerabilities
     18-04-1996:      Multiple Vendor PCNFSD Remote Command Execution Vulnerability
     18-04-1996:      Multiple Vendor PCNFSD Symbolic Link chmod Vulnerability
     21-07-1992:      SunOS NFS large uid mismatch Vulnerability

Privacy Policy