Comment protéger votre serveur contre la vulnérabilité Linux de COW sale

introduction

Le 19 octobre 2016, une vulnérabilité d’élévation de privilèges dans le noyau Linux a été révélée. Le bogue est surnommé Dirty COW car le problème sous-jacent était une condition de concurrence critique dans la façon dont le noyau gère la copie sur écriture (COW). Sale COW existe depuis longtemps - du moins depuis 2007, avec la version 2.6.22 du noyau -, de sorte que la grande majorité des serveurs est en danger.

Exploiter ce bogue signifie qu’un utilisateur régulier et non privilégié de votre serveur peut obtenir un accès en écriture à n’importe quel fichier qu’il peut lire et peut donc augmenter ses privilèges sur le système. Pour plus d’informations, voir CVE-2016-5195 à l’adresse Canonical, https: //access.redhat. com / security / cve / CVE-2016-5195 [Red Hat] et Debian.

Heureusement, la plupart des distributions majeures ont déjà publié un correctif. Toutes les images de base sur DigitalOcean ont été mises à jour pour inclure les versions du noyau corrigées. Par conséquent, les Droplets que vous créez ne seront plus mis à jour. Toutefois, si vous utilisez un serveur plus ancien, vous pouvez suivre ce tutoriel pour vous assurer que vous êtes protégé.

Vérifier la vulnérabilité

Ubuntu / Debian

Pour savoir si votre serveur est affecté, vérifiez la version de votre noyau.

uname -rv

Vous verrez la sortie comme ceci:

Output-Ubuntu SMP Fri Oct 7 23:11:45 UTC 2016

Si votre version est antérieure à la suivante, vous êtes affecté:

  • * 4.8.0-26.28 * pour Ubuntu 16.10

  • * 4.4.0-45.66 * pour Ubuntu 16.04 LTS

  • * 3.13.0-100.147 * pour Ubuntu 14.04 LTS

  • * 3.2.0-113.155 * pour Ubuntu 12.04 LTS

  • * 3.16.36-1 + deb8u2 * pour Debian 8

  • * 3.2.82-1 * pour Debian 7

  • * 4.7.8-1 * pour Debian unstable

CentOS

Certaines versions de CentOS peuvent utiliser cet script fourni par RedHat pour RHEL pour tester la vulnérabilité de votre serveur. Pour l’essayer, commencez par télécharger le script.

wget https://access.redhat.com/sites/default/files/rh-cve-2016-5195_1.sh

Puis lancez-le avec + bash +.

bash rh-cve-2016-5195_1.sh

Si vous êtes vulnérable, vous verrez une sortie comme celle-ci:

Output
Red Hat recommends that you update your kernel. Alternatively, you can apply partial
mitigation described at https://access.redhat.com/security/vulnerabilities/2706661 .

Correction de la vulnérabilité

Heureusement, l’application du correctif est simple: mettez à jour votre système et redémarrez votre serveur.

Sous Ubuntu et Debian, mettez à jour vos paquets en utilisant + apt-get.

sudo apt-get update && sudo apt-get dist-upgrade

Vous pouvez mettre à jour tous vos paquets sur CentOS 5, 6 et 7 avec + sudo yum update, mais si vous souhaitez uniquement mettre à jour le noyau pour traiter ce bogue, exécutez:

sudo yum update kernel

Sur les anciennes Droplets avec gestion du noyau externe, vous devez également sélectionner le noyau DigitalOcean GrubLoader. Pour ce faire, accédez au panneau control, cliquez sur le serveur que vous souhaitez mettre à jour. Ensuite, cliquez sur * Kernel * dans le menu de gauche et choisissez le noyau GrubLoader. Pour en savoir plus sur la mise à jour du noyau de Droplet, consultez la page cette tutoriel de gestion du noyau. Les nouvelles Droplets avec une gestion interne du noyau peuvent ignorer cette étape.

Enfin, sur toutes les distributions, vous devrez redémarrer votre serveur pour appliquer les modifications.

sudo reboot

Conclusion

Assurez-vous de mettre à jour vos serveurs Linux pour rester protégé de ce bogue d’élévation des privilèges.