Translated message

A translation of this page exists in English.

Falle importanti sulla sicurezza in Samba rilasciate il 12 aprile 2016

Samba è una implementazione open source del protocollo Server Message Block (SMB) o Common Internet File System (CIFS) e permette a macchine compatibili con il PC di condividere file, stampanti e altre informazioni. Sono state scoperte e risolte diverse falle su tutte le vesioni correnti di Samba. Per maggiori informazioni su Badlock (CVE-2016-2118), consultare l'articolo della Knowledgebase 2253041.

Versioni interessate:

CVE RHEL 5 samba RHEL 5 samba3x RHEL 6 samba RHEL 6 samba4 RHEL 7 Gluster Storage Ruoli interessati di Samba
CVE-2015-5370 N S S S S S Tutti i possibili ruoli nei quali Samba è in grado di opeare
CVE-2016-2110 S S S S S S Tutti i possibili ruoli nei quali Samba è in grado di opeare
CVE-2016-2111 S S S S S S Classic primary DC, backup DC, o Active Directory DC
CVE-2016-2112 S S S S S S Tutti i possibili ruoli nei quali Samba è in grado di opeare
CVE-2016-2113 N N N S S S Tutti i possibili ruoli nei quali Samba è in grado di opeare
CVE-2016-2114 N N N S S S Tutti i possibili ruoli nei quali Samba è in grado di opeare
CVE-2016-2115 S S S S S S Tutti i possibili ruoli nei quali Samba è in grado di opeare
CVE-2016-2118 S S S S S S Tutti i ruoli possibili nei quali Samba è in grado di operare, ad eccezione di critico per Active Directory DC

CVE-2015-5370: Falle multiple nel codice DCE/RPC

Sono state identificate diverse falle nell'implementazione del protocollo DCE/RPC di Samba. Un aggressore autenticato e remoto era in grado di causare un attacco di tipo denial of service nei confronti del server Samba (carichi CPU molto elevati o un arresto inaspettato), o una esecuzione arbitraria del codice con i permessi di un utente che esegue Samba (root). Questa vulnerabilità può essere utilizzata per ridurre il livello di sicurezza di una connessione DCE/RPC da un aggressore di tipo man-in-the-middle, il quale è in grado di assumere il controllo di un elemento dell'Active Directory (AD) e compromettere la sicurezza di un Samba Active Directory Domain Controller (DC).

Nota Bene: Anche se i pacchetti di Samba disponibili con Red Hat Enterprise Linux non supportano l'esecuzione di Samba come AD DC, questa falla riguarda tutti i ruoli implementati da Samba.

CVE-2016-2118 (Badlock): Attacchi man in the middle in SAMR e LSA, possibili

Le informazioni su questa falla sono disponibili su: Falla di sicurezza Badlock in Samba - CVE-2016-2118

CVE-2016-2110: Attacchi Man-in-the-middle possibili con NTLMSSP

Sono state identificate diverse falle nell'implementazione di Samba relative all'autenticazione NTLMSSP. Un aggressore non autenticato di tipo man-in-the-middle era in grado di utilizzare questa vulnerabilità per annullare la cifratura e i flag dell'integrità di una connessione, causando così la trasmissione dei dati in testo semplice. L'aggressore era anche in grado di forzare il client o il server e inviare i dati in testo semplice, anche se la cifratura era stata richiesta esplicitamente.

LDAP (con autenticazione NTLMSSP) è usato come client da diversi strumenti Samba amministrativi (per esempio, "net", "samba-tool", "ldbsearch" o "ldbedit").

Queste falle interessano tutti i ruoli possibili nei quali Samba è in grado di operare, e sono relativi a CVE-2016-2112 and CVE-2016-2113.

CVE-2016-2111: Vulnerabilità NETLOGON Spoofing

È stato scoperto che un Samba configurato come Domain Controller è in grado di stabilire un canale sicuro per le comunicazioni con una macchina, utilizzando un nome falsificato. Un aggressore remoto in grado di osservare il traffico di rete, era in grado di ottenere informazioni relative alla sessione sulla macchina falsificata.

Questa falla interessa solo un Samba in esecuzione come classic primary DC, backup DC, o Active Directory DC.

Per Microsoft Windows Server questa falla viene classificata come CVE-2015-0005.

Il security advisory patch introduce una nuova opzione in smb.conf:

  raw NTLMv2 auth (G)

    Questo parametro determina se smbd(8) è in grado di abilitare i client SMB1
senza una sicurezza estesa (senza SPNEGO) per utilizzare una autenticazione NTLMv2.

    Se queste opzioni, lanman auth e ntlm auth sono tutte disabilitate, solo
i client con un supporto SPNEGO sono abilitati. Ciò significa che NTLMv2 è solo 
supportato all'interno di NTLMSSP.

    Default: raw NTLMv2 auth = no

CVE-2016-2112: Il server e il client LDAP non forzano la protezione dell'integrità

È stato riscontrato che l'implementazione LDAP di Samba non implementava la protezione dell'integrità per i collegamenti LDAP. Un aggressore di tipo man-in-the-middle era in grado di utilizzare questa vulnerabilità per ridurre il livello di sicurezza dei collegamenti LDAP, e annullare la protezione dell'integrità. Così facendo gli aggressori erano in grado di prendere il controllo di tali connessioni.

Questa falla interessa tutti i ruoli nei quali Samba è in grado di operare.

Il security advisory patch introduce una nuova opzione in smb.conf:

  ldap server require strong auth (G)

    L'opzione "ldap server require strong auth" definisce se
il server ldap necessita di un traffico ldap firmato o 
firmato e cifrato (sealed). I valori possibili sono no, 
    allow_sasl_over_tls e yes.

Un valore 'no' permette di avere associazioni semplici e sasl su tutti i trasporti.

Un valore  allow_sasl_over_tls permette di avere associazioni semplici e sasl (senza firma e seal)
su connessioni TLS cifrate. Connessioni non cifrate
permettono di avere solo le associazioni con firma o seal

Un valore yes permette di avere solo associazioni semplici su connessioni TLS cifrate.
Connessioni non cifrate permettono di avere solo associazioni sasl con firma o seal.

    Default: ldap server require strong auth = yes

Nota Bene: Il server LDAP non possiede ancora una opzione per l'implementazione di una autenticazione forte. I patch di sicurezza introdurranno una nuovo opzione chiamata ldap server require strong auth, i suoi valori possibili sono no, allow_sasl_over_tls e yes.

Se il comportamento predefinito è stato impostato su no, potrebbe essere necessario modificare questa opzione fino a quando tutti i client sono in grado di gestire gli errori LDAP_STRONG_AUTH_REQUIRED. I client di Windows e i server dei membri di Samba utilizzano già la protezione dell'integrità.

CVE-2016-2113: La mancanza della convalida del certificato TLS/SSL espone ad attacchi di tipo man in the middle

È stato scoperto che in alcune connessioni Samba non convalidava i certificati SSL/TLS. Un aggressore di tipo man-in-the-middle era in grado di sfruttare questa vulnerabilità per corrompere un server Samba, usando un certificato SSL/TLS falsificato.

Questa falla interessa tutti i ruoli nei quali Samba è in grado di operare.

Il security advisory patch introduce una nuova opzione in smb.conf:

  tls verify peer (G)

Controlla il livello di verifica del client,
del nome e del certificato. I valori possibili sono (in ordine crescente): no_check,
    ca_only, ca_and_name_if_available, ca_and_name e as_strict_as_possible.

Quando impostato su no_check il certificato non sarà verificato,
    e permette attacchi di tipo trivial man-in-the-middle.

Se impostato su ca_only il certificato dovrà essere firmato da un CA
specificato nell'opzione "tls ca file". È necessario impostare "tls ca file" su un file valido.
Verrà altresì verificato anche il ciclo di vita del certificato. Se è stata configurata l'opzione 
"tls crl file", il certificato sarà verificato usando il
    CA CRL.

Quando impostato su ca_and_name_if_available, verranno eseguiti tutti i controlli ca_only.
Altresì, l'hostname del peer sarà verificato utilizzando il nome dei certificati,
se reso disponibile a livello dell'applicazione e non specificato
da una stringa dell'indirizzo IP.

Quando impostato su ca_and_name, verranno eseguiti tutti i controlli ca_and_name_if_available.
Altresì, l'hostname del peer deve essere fornito e l'indirizzo IP 
controllato con il nome del certificato.

Quando impostato su as_strict_as_possible, verranno eseguiti tutti i controlli ca_and_name.
Configurare altresì il "tls crl file". Le versioni future 
di Samba potranno implementare ulteriori verifiche.

    Default: tls verify peer = as_strict_as_possible

CVE-2016-2114: "server signing = mandatory" not enforced

È stato scoperto che Samba non implementava la firma Server Message Block (SMB) per i client utilizzando il protocollo SMB1. Un aggressore man-in-the-middle era in grado di sfruttare questa vulnerabilità per modificare il traffico tra un client e un server.

Questa falla interessa i seguenti ruoli: standalone server, member server, classic primary DC, backup DC e Active Directory DC.

Come attenuare i rischi:

Una opzione esplicita server signing = mandatory nella sezione [global] del file smb.conf usata con server min protocol = SMB2, dovrebbe essere in grado di negare qualsiasi connessione sprovvista di firma. Tuttavia questa impostazione potrebbe impedire una connessione dei client più obsoleti sprovvisti di supporto per SMB2 (o superiore).

CVE-2016-2115: Connessioni client SMB per il traffico IPC non proteggono l'integrità

È stato scoperto che per impostazione predefinita Samba non era in grado di abilitare una protezione dell'integrità per il traffico IPC. Un aggressore man-in-the-middle poteva utilizzare questa falla per modificare i dati inviati tra un server Samba e un client.

Il security advisory patch introduce nuove opzioni in smb.conf:

  client ipc signing (G)

Questa opzione controlla se il client  ha bisogno o può utilizzare 
la firma SMB per connessioni IPC$ come trasporto DCE/RPC. Valori
possibili sono auto, mandatory e disabled.

    Quando impostato su mandatory o default, è necessario utilizzare la firma SMB.

    Se impostato su auto, verrà offerta l'opzione della firma SMB e non sarà imposta
Se impostato su disabled, l'opzione della firma SMB non sarà disponibile.

    Le connessioni da winbindd all'Active Directory Domain Controller
implementano sempre la firma.

    Default: client ipc signing = default

  client ipc max protocol (G)

Il valore del parametro (una stringa) è il livello più alto del protocollo supportato
per le connessioni IPC$ come trasporto DCE/RPC.

Normalmente non è necessario impostare questa opzione come fase di negoziazione automatica
nel protocollo SMB prende cura del processo di selezione del protocollo appropriato.

Il valore, per impostazione predefinita, si riferisce all'ultimissimo protocollo supportato, attualmente SMB3_11.

Consultare il client max protocol per un elenco completo di protocolli disponibili.
    I valori CORE, COREPLUS, LANMAN1, LANMAN2 sono stati aggiornati a NT1.
   Default: client ipc max protocol = default

    Esempio: client ipc max protocol = SMB2_10

  client ipc min protocol (G)

Questa impostazione controlla la versione minima del protocollo che verrà provata
per un suo utilizzo con le connessioni IPC$ come trasporto DCE/RPC.

Normalmente non è necessario impostare questa opzione come negoziazione automatica
nel protocollo SMB prende cura del processo di selezione del protocollo appropriato.

Il valore predefinito si riferisce al valore più elevato di NT1 e
al valore effettivo di "client min protocol".

Consultare il client max protocol per un elenco completo di protocolli disponibili.
    I valori CORE, COREPLUS, LANMAN1, LANMAN2 sono stati aggiornati a NT1.

    Default: client ipc min protocol = default

    Esempio: client ipc min protocol = SMB3_11

Come attenuare i rischi:

Una opzione esplicita client signing = mandatory nella sezione [global] del file smb.conf.

Questa falla interessa tutti i ruoli nei quali Samba è in grado di operare.

Comments