Was ist der "Dirty COW" -Fehler und wie kann ich mein System davor schützen?


22

Ich habe gerade von diesem Fehler "Dirty COW" gehört, der es jedem Benutzer mit Lesezugriff auf Dateien ermöglicht, auch auf sie zu schreiben und administrativen Zugriff zu erhalten. Wie schütze ich mich gegen diesen Bug?

Antworten:


20

Die alte schmutzige Kuh-Wanze

Dieser Fehler ist seit der Kernel-Version 2.6.22 aufgetreten. Es ermöglicht einem lokalen Benutzer mit Lesezugriff Administratorrechte zu erlangen. Es wurde eine Warnung ausgegeben ( Softpedia: Linux-Kernel 4.8.3, 4.7.9 und 4.4.26, Sicherheitslücke bei LTS-Patch "Dirty COW" ) und Benutzer werden aufgefordert, ein Upgrade auf Kernel Linux-Kernel 4.8.3, Linux-Kernel 4.7 durchzuführen. 9 und Linux-Kernel 4.4.26 LTS. DIESER LINK IST FEHLERHAFT, da diese Kernel-Versionen von Ubuntu nicht unterstützt werden.

Diese Antwort ist auf Ubuntu-Benutzer zugeschnitten und enthält folgende Informationen:

  • Empfohlene Kernel-Versionen für Ubuntu-Benutzer
  • So zeigen Sie Ihre aktuelle Kernel-Version an
  • So wenden Sie ein Update für von Ubuntu unterstützte Kernel an
  • So wenden Sie ein Update für nicht unterstützte Ubuntu-Kernel an

Ubuntu Benutzer "Dirty COW" empfohlene Kernel

Ubuntu veröffentlichte am 20. Oktober 2016 Sicherheitsupdates, um den von allen unterstützten Ubuntu-Versionen verwendeten Kernel zu patchen: Softpedia: Canonical Patches Alter "Dirty COW" -Kernel-Bug in allen unterstützten Ubuntu-Betriebssystemen

Canonical fordert alle Benutzer auf, ihre Systeme sofort zu patchen, indem sie Folgendes installieren:

  • Linux-Image-4.8.0-26 (4.8.0-26.28) für Ubuntu 16.10
  • Linux-Image-4.4.0-45 (4.4.0-45.66) für Ubuntu 16.04 LTS
  • Linux-Image-3.13.0-100 (3.13.0-100.147) für Ubuntu 14.04 LTS
  • Linux-Image-3.2.0-113 (3.2.0-113.155) für Ubuntu 12.04 LTS
  • Linux-Image-4.4.0-1029-Raspi2 (4.4.0-1029.36)

Der Xenial HWE-Kernel für Ubuntu 14.04 LTS wurde ebenfalls auf die Version linux-image-4.4.0-45 (4.4.0-45.66 ~ 14.04.1) und der Trusty HWE-Kernel für Ubuntu 12.04 LTS auf die Version linux-image aktualisiert -3,13,0-100 (3,13,0-100,147 ~ genau1).

Bitte aktualisieren Sie Ihre Ubuntu-Installationen umgehend, indem Sie den Anweisungen von Canonical unter https://wiki.ubuntu.com/Security/Upgrades folgen .

Zeigen Sie Ihre aktuelle Kernel-Version an

Um Ihre aktuelle Kernel-Version anzuzeigen, öffnen Sie das Terminal mit Ctrl+ Alt+ Tund geben Sie Folgendes ein:

uname -a

Die Kernel-Version, mit der Sie gebootet haben, wird dann folgendermaßen angezeigt:

Linux dell 4.8.1-040801-generic #201610071031 SMP Fri Oct 7 14:34:10 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

Denken Sie daran, dass Sie nach der Installation des neuen Kernels mit den Patches immer noch ältere Kernelversionen von Grub booten können. Bei älteren Versionen wird der Patch nicht angewendet, was bei dieser Kernel-Version 4.8.1 der Fall ist.

Denken Sie daran, dass die Kernel-Version 4.8.1 von Ubuntu nicht unterstützt wird.

Fix für von Ubuntu unterstützte Kernel

Da Ubuntu die Fehlerbehebung veröffentlicht hat, müssen alle Benutzer nur ein Upgrade ihres Systems durchführen. Wenn tägliche Sicherheitsupdates aktiviert sind, wurde das Kernel-Upgrade bereits durchgeführt. Überprüfen Sie Ihre Kernel-Version in der obigen Liste der Kernel.

Wenn Ubuntu Ihre Kernel-Version nicht automatisch aktualisiert hat, führen Sie Folgendes aus:

sudo apt-get update
sudo apt-get dist-upgrade
sudo reboot

Überprüfen Sie nach dem Neustart Ihre aktuelle Kernel-Version, indem Sie die Anweisungen im vorherigen Abschnitt wiederholen.

Problembehebung für nicht unterstützte Ubuntu-Kernel

Einige Installationen mit neuerer Hardware verwenden möglicherweise einen nicht unterstützten Kernel wie 4.8.1oder höher. In diesem Fall müssen Sie den Kernel manuell aktualisieren. Obwohl der obige Fehlerberichtslink die Verwendung des Kernels angibt 4.8.3, ist der Stand vom 30. Oktober 2016 4.8.5der neueste und so wird er installiert:

cd /tmp
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.8.5/linux-headers-4.8.5-040805_4.8.5-040805.201610280434_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.8.5/linux-headers-4.8.5-040805-generic_4.8.5-040805.201610280434_amd64.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v4.8.5/linux-image-4.8.5-040805-generic_4.8.5-040805.201610280434_amd64.deb
sudo dpkg -i *.deb
sudo reboot

Überprüfen Sie nach dem Neustart Ihre aktuelle Kernel-Version, indem Sie die Anweisungen zwei Abschnitte zurück wiederholen.


Anstatt "dieser Link ist irreführend", was mir ein zu starkes Wort ist, würde ich etwas in der Art von "Diese Anweisungen gelten nicht für Ubuntu-Benutzer" sagen.
fkraiem

@ WinEunuuchs2Unix Ich wollte vorschlagen "Dieser Link ist wie er ist irreführend, da die genannten Kernel-Versionen von Ubuntu nicht unterstützt werden." Du bist dir auch nicht sicher, warum du überall aufregende Termine hast?
Thomas Ward

Mit Ubuntu 16.04 LTS stellte ich fest, dass dieser Befehl mir zeigte, dass alles in Ordnung war: apt list --installed | grep linux-image-4.4.0-45- Es kehrte zurück linux-image-4.4.0-45-generic/xenial-updates,xenial-security,now 4.4.0-45.66 amd64 [installed,automatic].
User643722

1

Ich bin überhaupt kein Experte, aber nachdem ich ein wenig über die "Dirty COW" nachgelesen habe, wollte ich unbedingt überprüfen, ob es mir gut geht, nachdem ich mein letztes Update erst vor ein paar Stunden abgeschlossen habe.

Aus den Ergebnissen meiner Stichwortsuche habe ich diesen Artikel und diese Diskussion als vielversprechend ausgewählt. Jetzt ist es mir leicht gelungen, den Status meines Xenial Xerox-Systems zu überprüfen, indem ich zuerst den Anweisungen im obigen Artikel gefolgt bin, um Ihre aktuelle Kernel-Version anzuzeigen (es stellt sich heraus, dass es sich um Folgendes handelt :)linux-image-4.4.0.-45 . Obwohl uname -anicht im Einzelnen die Patches, es angezeigt , die derzeit installierte Version Kernel, der mir zu folgen erlaubt Benutzer 643.722 der Vorschlag - und das mit Erfolg:

apt list --installed | grep linux-image-4.4.0-45

Obwohl eine unerwartete zusätzliche Zeile angezeigt wurde ...

WARNING: apt does not have a stable CLI interface. 
Use with caution in scripts.

... die erhofften Informationen folgen in der nächsten Zeile:

linux-image-4.4.0-45-generic/xenial-updates,xenial-security,now 4.4.0-45.66 amd64  [Installiert,automatisch]

Dank an alle - für die schnelle Implementierung von Lösungen in Updates durch Linux / Ubuntu-Entwickler und die schnelle Verbreitung von Wissen unter den Benutzern.


1
Die Warnung verschwindet, wenn Sie apt-getanstelle aptvon sich selbst verwenden.
WinEunuuchs2Unix

Vielen Dank, @ WinEunuuchs2Unix. Ich lerne jeden Tag die ganze Zeit ...
Ano Nyma

1

Sie müssen Ihre Pakete folgendermaßen aktualisieren apt-get:

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

Außerdem können Sie den Livepach-Dienst aktivieren :

Zufälligerweise haben wir kurz vor Veröffentlichung der Sicherheitsanfälligkeit den Canonical Livepatch Service für Ubuntu 16.04 LTS veröffentlicht. Die Tausenden von Benutzern, die Canonical-Livepatch auf ihren Ubuntu 16.04 LTS-Systemen in den ersten Stunden aktiviert haben, haben den Fix automatisch im Hintergrund und ohne Neustart auf Dirty COW angewendet.

  1. Gehen Sie zu https://ubuntu.com/livepatch und rufen Sie Ihr Livepatch-Token ab. Installieren Sie den Canonical-Livepatch-Snap

    $ sudo snap install canonical-livepatch

  2. Aktivieren Sie den Dienst mit Ihrem Token

    $ sudo canonical-livepatch enable [TOKEN]

  3. Überprüfen Sie den Status jederzeit mit:

    $ canonical-livepatch status --verbose

  4. Aktualisierung

    `$ sudo apt installiert unbeaufsichtigte Upgrades

  5. Ältere Versionen von Ubuntu (oder Ubuntu-Systemen, die auf 16.04 aktualisiert wurden) müssen dieses Verhalten möglicherweise aktivieren, indem sie Folgendes verwenden:

    $ sudo dpkg-rekonfiguriere unbeaufsichtigte Upgrades

`


Nach

@ WinEunuuchs2Unix nur ein Neuling Linux-Benutzer :)
GAD3R

Na ja, trotzdem danke für deine Antwort. Ich fürchte, Sie müssen mit dem falschen Kommentar leben, dass Sie 11 Stunden lang Canonical-Mitarbeiter sind, bis ich nach Hause komme und ihn von meinem Computer löschen kann.
WinEunuuchs2Unix

$ sudo snap install canonical-livepatch error: cannot install "canonical-livepatch": snap not foundHilfe?
Hershey Gamer
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.