web-dev-qa-db-ja.com

「Dirty COW」バグとは何ですか?また、システムをそれに対して保護するにはどうすればよいですか?

このバグ「Dirty COW」について聞いたことがあります。このバグにより、ファイルへの読み取りアクセス権を持つすべてのユーザーがファイルへの書き込みと管理アクセス権を取得できます。このバグからどのように保護しますか?

22

古代の汚い牛のバグ

このバグは、カーネルバージョン2.6.22以降に存在します。これにより、読み取りアクセス権を持つローカルユーザーが管理者権限を取得できます。警告が発行されました( Softpedia:Linux Kernels 4.8.3、4.7.9、4.4.26 LTS Out to Patch "Dirty COW" Security Flaw )、ユーザーはカーネルにアップグレードすることをお勧めしますLinuxカーネル4.8.3、Linuxカーネル4.7.9、およびLinuxカーネル4.4.26 LTS。 このリンクIS MISLEADINGこれらのカーネルバージョンはUbuntuでサポートされていないためです。

この回答は、Ubuntuユーザー向けに調整されており、次のことを示しています。

  • Ubuntuユーザーに推奨されるカーネルバージョン
  • 現在のカーネルバージョンを表示する方法
  • Ubuntuがサポ​​ートするカーネルに修正を適用する方法
  • サポートされていないUbuntuカーネルに修正を適用する方法

Ubuntuユーザー「Dirty COW」が推奨するカーネル

Ubuntuは、サポートされているすべてのUbuntuバージョンで使用されるカーネルにパッチを適用するために、2016年10月20日にセキュリティ更新プログラムをリリースしました: Softpedia:Canonical Patches Ancient "Dirty COW" Kernel Bug in All Supported Ubuntu OSes

Canonicalは、すべてのユーザーに以下をインストールすることにより、すぐにシステムにパッチを適用するよう促しています。

  • ubuntu 16.10のlinux-image-4.8.0-26(4.8.0-26.28)
  • ubuntu 16.04 LTS用のlinux-image-4.4.0-45(4.4.0-45.66)
  • ubuntu 14.04 LTSのlinux-image-3.13.0-100(3.13.0-100.147)
  • ubuntu 12.04 LTSのlinux-image-3.2.0-113(3.2.0-113.155)
  • linux-image-4.4.0-1029-raspi2(4.4.0-1029.36)

Ubuntu 14.04 LTSのXenial HWEカーネルもバージョンlinux-image-4.4.0-45(4.4.0-45.66〜14.04.1)に更新され、Ubuntu 12.04 LTSのTrusty HWEカーネルがバージョンlinux-imageに更新されました-3.13.0-100(3.13.0-100.147〜precise1)。

Canonicalが提供する https://wiki.ubuntu.com/Security/Upgrades の指示に従って、Ubuntuインストールをすぐに更新してください。

現在のカーネルバージョンを表示する

現在実行中のカーネルのバージョンを表示するには、ターミナルを開きます Ctrl+Alt+T 次に入力します:

uname -a

ブートしたカーネルバージョンは次のように表示されます。

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

パッチを使用して新しいカーネルをインストールした後でも、Grubから古いカーネルバージョンを起動できます。古いバージョンにはパッチが適用されません。これは、このカーネルバージョン4.8.1の場合です。

カーネルバージョン4.8.1はUbuntuでサポートされていません。

Ubuntuがサポ​​ートするカーネルの修正方法

Ubuntuがバグの修正をリリースしたため、ユーザーが行う必要があるのはシステムをアップグレードすることだけです。毎日のセキュリティ更新が有効になっている場合、カーネルのアップグレードはすでに完了しています。カーネルのバージョンを上記のカーネルのリストで確認してください。

Ubuntuがカーネルバージョンを自動的にアップグレードしていない場合は、次を実行します。

Sudo apt-get update
Sudo apt-get dist-upgrade
Sudo reboot

再起動後、前のセクションの手順を繰り返して、現在のカーネルバージョンを確認します。

サポートされていないUbuntuカーネルの修正方法

新しいハードウェアを使用したインストールでは、4.8.1以上などのサポートされていないカーネルを使用している場合があります。その場合、カーネルを手動でアップグレードする必要があります。上記のバグレポートのリンクではカーネル4.8.3を使用するように記載されていますが、2016年10月30日現在、4.8.5が最新であり、これがインストール方法です。

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

再起動後、2つのセクションの指示を繰り返して、現在のカーネルバージョンを確認します。

20

apt-getを使用してパッケージをアップグレードする必要があります。

Sudo apt-get update && Sudo apt-get dist-upgrade

livepach service を有効にすることもできます:

偶然にも、脆弱性が公開される直前に、Ubuntu 16.04 LTS用のCanonical Livepatch Serviceをリリースしました。 Ubuntu 16.04 LTSシステムでcanonical-livepatchを有効にして数千人のユーザーが、最初の数時間で修正プログラムを受け取って、ダーティCOWに自動的にバックグラウンドで再起動せずに修正を適用しました。

  1. https://ubuntu.com/livepatch に移動し、ライブパッチトークンを取得しますcanonical-livepatchスナップをインストールします

    $ Sudo snap install canonical-livepatch

  2. トークンでサービスを有効にします

    $ Sudo canonical-livepatch enable [トークン]

  3. 以下を使用して、いつでもステータスを確認します。

    $ canonical-livepatch status --verbose

  4. アップグレード

    `$ Sudo apt install unattended-upgrades

  5. 古いバージョンのUbuntu(または16.04にアップグレードしたUbuntuシステム)では、次を使用してこの動作を有効にする必要があります。

    $ Sudo dpkg-reconfigure unattended-upgrades

`

1
GAD3R

私はまったく専門家ではありませんが、「Dirty COW」を少し読んで、ほんの数時間前に最新の更新を完了した後に自分が大丈夫かどうかを確認したいと本当に感じました。

キーワード検索の結果から、私はこの記事と議論を有望なものとして選んだ。これで、最初に上記の記事の手順に従って現在のカーネルバージョンを表示することで、Xenial Xeroxシステムの「COWパッチ」ステータスを簡単に確認できました(判明:linux-image-4.4.0.-45)。 uname -aにはパッチの詳細は記載されていませんが、現在インストールされているカーネルバージョンが表示されたため、 ser 643722's の提案に従うことができました。

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

予期しない余分な行が表示されましたが...

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

...希望する情報は次の行に続きます。

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

すべてに感謝します-Linux/Ubuntu貢献者による更新へのソリューションの迅速な実装、およびユーザー間の知識の迅速な拡散。

1
Ano Nyma