Comment réparer la vulnérabilité de la sambacry (CVE-2017-7494) dans les systèmes Linux

Comment réparer la vulnérabilité de la sambacry (CVE-2017-7494) dans les systèmes Linux

Samba est depuis longtemps la norme pour fournir des services de fichiers et d'impression partagés aux clients Windows sur * Nix Systems. Utilisé par les utilisateurs à domicile, les entreprises de taille moyenne et les grandes entreprises, il se démarque comme la solution de choix dans des environnements où différents systèmes d'exploitation coexistent.

Comme cela se produit malheureusement avec des outils largement utilisés, la plupart des installations de samba sont sous risque d'une attaque qui peut exploiter une vulnérabilité connue, qui n'était pas considérée comme grave jusqu'à ce que Vouloir pleurer Ransomware Attack a frappé la nouvelle il n'y a pas si longtemps.

Dans cet article, nous expliquerons ce qu'est cette vulnérabilité de samba et comment protéger les systèmes dont vous êtes responsable. Selon votre type d'installation (à partir des référentiels ou de la source), vous devrez adopter une approche différente pour le faire.

Si vous utilisez actuellement Samba dans n'importe quel environnement ou connaissez quelqu'un qui le fait, lisez la suite!

La vulnérabilité

Les systèmes obsolètes et non corrigées sont vulnérables à une vulnérabilité d'exécution de code distant. En termes simples, cela signifie qu'une personne ayant accès à un partage inscriptible peut télécharger un morceau de code arbitraire et l'exécuter avec des autorisations racine sur le serveur.

Le problème est décrit dans le site Web de Samba comme CVE-2017-7494 et est connu pour affecter les versions Samba 3.5 (libéré début mars 2010) et à partir. Officieusement, il a été nommé Sambacry En raison de ses similitudes avec Vouloir pleurer: Les deux ciblent le protocole SMB et sont potentiellement verbins - ce qui peut le faire répandre du système à.

Debian, Ubuntu, Centos et Red Hat ont pris des mesures rapides pour protéger ses utilisateurs et ont publié des correctifs pour leurs versions prises en charge. De plus, des solutions de contournement de sécurité ont également été fournies pour des solutions.

Mise à jour de la samba

Comme mentionné précédemment, il existe deux approches à suivre en fonction de la méthode d'installation précédente:

Si vous avez installé Samba à partir des référentiels de votre distribution.

Jetons un coup d'œil à ce que vous devez faire dans ce cas:

Fix Sambacry à Debian

Assurez-vous qu'APT est défini pour obtenir les dernières mises à jour de sécurité en ajoutant les lignes suivantes à votre liste de sources (/ etc / apt / sources.liste):

Deb http: // Security.Debian.org stable / met à jour le principal deb-src http: //.Debian.org / stable / mises à jour principales 

Ensuite, mettez à jour la liste des packages disponibles:

# mise à jour d'aptitude 

Enfin, assurez-vous que la version du package Samba correspond à la version où la vulnérabilité a été corrigée (voir CVE-2017-7494):

# aptitude show samba 
Fix Sambacry à Debian

Réparer la sambacry à Ubuntu

Pour commencer, consultez les nouveaux packages disponibles et mettez à jour le package Samba comme suit:

$ sudo apt-get updue $ sudo apt-get install samba 

Les versions samba où le correctif pour CVE-2017-7494 a déjà été appliqué sont les suivants:

  • 17.04: Samba 2: 4.5.8 + dfsg-0ubuntu0.17.04.2
  • 16.dix: Samba 2: 4.4.5 + dfsg-2ubuntu5.6
  • 16.04 LTS: Samba 2: 4.3.11 + dfsg-0ubuntu0.16.04.7
  • 14.04 LTS: Samba 2: 4.3.11 + dfsg-0ubuntu0.14.04.8

Enfin, exécutez la commande suivante pour vérifier que votre boîte Ubuntu a maintenant la bonne version Samba installée.

$ sudo apt-cache show samba 

Fix la sambacry sur Centos / Rhel 7

La version samba corrigée en El 7 est samba-4.4.4-14.EL7_3. Pour l'installer, faire

# yum makecache rapide # yum update samba 

Comme précédemment, assurez-vous que vous disposez maintenant de la version Samba corrigée:

# yum info samba 
Fix la sambacry à Centos

Les versions plus anciennes, toujours prises en charge de Centos et Rhel ont également des correctifs disponibles. Vérifiez RHSA-2017-1270 pour en savoir plus.

Si vous avez installé Samba à partir de la source

Note: La procédure suivante suppose que vous avez déjà construit Samba à partir de la source. Vous êtes fortement encouragé à l'essayer largement dans un environnement de test avant de le déployer sur un serveur de production.

De plus, assurez-vous de sauvegarder le pME.confli fichier avant de commencer.

Dans ce cas, nous compilerons et mettrons à jour Samba à partir de la source également. Avant de commencer, cependant, nous devons nous assurer que toutes les dépendances sont précédemment installées. Notez que cela peut prendre plusieurs minutes.

Dans Debian et Ubuntu:

# aptitude installer ACL ATTR AutoConf Bison Build-Essential \ Debhelper Dnsutils DocBook-Xml DocBook-XSL Flex GDB KRB5-USER \ Libacl1-Dev Libaio-Dev Libattr1-Dev Libblkid-Dev Libbsd-Dev \ Libcap-Dev Libcups2-Dev Libgnutls28-Dev-Dev libjson-perl \ libldap2-dev libncurses5-dev libpam0g-dev libparse-yapp-perl \ libpopt-dev libreadline-dev perl perl-modules pkg-config \ python-all-dev python-dev python-dnsython python-Crypto xsltproc \ zlib1g -dev libsystemd-dev libgpgme11-dev python-gpgme python-m2crypto 

Dans Centos 7 ou similaire:

# yum install attot bind-utils docbook-style-xsl gcc gdb krb5-workstation \ libsmanage-python libxslt perl perl-extutils-makemaker \ perl-pare-yapp perl-test-base pkgconfig policyccoreutils-python \ python-Crypto gnutls-Devel libattr-devel keyutils-libs-devel \ libacl-devel libaio-devel libblkid-devel libxml2-devel openldap-devel \ pam-devel popt-devel python-devel reledline-devel zlib-devel 

Arrêtez le service:

# SystemCTL Stop SMBD 

Télécharger et dénué la source (avec 4.6.4 étant la dernière version à l'époque de la rédaction de cet article):

# wget https: // www.samba.org / samba / ftp / samba-latest.le goudron.GZ # TAR XZF Samba-Latest.le goudron.GZ # CD Samba-4.6.4 

À des fins informatives uniquement, consultez les options de configuration disponibles pour la version actuelle avec.

# ./ Configurer - help 

Vous pouvez inclure certaines des options renvoyées par la commande ci-dessus si elles étaient utilisées dans la version précédente, ou vous pouvez choisir d'aller avec la valeur par défaut:

# ./ Configurer # Make # faire l'installation 

Enfin, redémarrez le service.

# SystemCTL Redémarrer SMBD 

et vérifiez que vous exécutez la version mise à jour:

# SMBSTATUS - Version 

qui devrait revenir 4.6.4.

considérations générales

Si vous exécutez une version non soutenue d'une distribution donnée et que vous ne pouvez pas passer à une raison plus récente pour une raison quelconque, vous voudrez peut-être tenir compte des suggestions suivantes:

  • Si seinux est activé, vous êtes protégé!
  • Assurez-vous que les actions Samba sont montées avec l'option NOEXEC. Cela empêchera l'exécution de binaires résidant sur le système de fichiers monté.

Ajouter,

support de tuyaux NT = non 

à la section [globale] de votre pME.confli déposer et redémarrer le service. Vous voudrez peut-être garder à l'esprit que cela «peut désactiver certaines fonctionnalités chez les clients Windows», selon le projet Samba.

Important: Sachez que l'option "support de tuyaux NT = non«Désactiverait la liste des partages des clients Windows. Par exemple: lorsque vous tapez \\dix.100.dix.2 \ De Windows Explorer sur un serveur Samba, vous obtiendrez une autorisation refusée. Les clients Windows devraient spécifier manuellement le partage comme \\dix.100.dix.2 \ share_name Pour accéder à la part.

Résumé

Dans cet article, nous avons décrit la vulnérabilité connue sous le nom de sambacry et comment l'atténuer. Nous espérons que vous pourrez utiliser ces informations pour protéger les systèmes dont vous êtes responsable.

Si vous avez des questions ou des commentaires sur cet article, n'hésitez pas à utiliser le formulaire ci-dessous pour nous le faire savoir.