MeltdownおよびSpectreの脆弱性に関するUbuntuのステータスは何ですか?


81

ステータスの更新に関連する質問、またはこれらの脆弱性に対してパッチを適用するかどうかを尋ねる質問は、この質問の複製として終了する必要があります。

メルトダウンとスペクターは現在ニュースであり、かなり厳しい音です。これらの脆弱性をカバーするUbuntuのセキュリティ更新プログラムは見当たりません。

Ubuntuはこれらの脆弱性について何をしていて、Ubuntuユーザーは何をすべきでしょうか?

これらは、CVE-2017-5753、CVE-2017-5715、およびCVE-2017-5754です。


3
私はwiki.ubuntu.com/SecurityTeam/KnowledgeBase/SpectreAndMeltdownで、カーネル4.4と4.13のみにパッチが適用されることを読んでいます。カーネル4.10でUbuntu 16.04.3を使用しています。4.4に戻る必要がありますか?
フィリップゴーシェ

2
wikiページを更新して詳細を更新しました。16.04HWEカーネルが公開されており(2月には4.13になりました)、代わりに以前に行います。
-gQuigs

平均的なLinuxユーザーにとって、これは私が心配すべきことでもありますか?
flyingdrifter

誰でもIntelからのニュース(newsroom.intel.com/news/…)について詳しく説明できますintel-microcodeか?
ベール

回答:


49

新しいクラスのサイドチャネル攻撃は、Intel、AMD、ARMのプロセッサを含むほとんどのプロセッサに影響を与えることが発見されました。この攻撃により、悪意のあるユーザースペースプロセスがカーネルメモリを読み取り、ゲストの悪意のあるコードがハイパーバイザーメモリを読み取ることができます。

この問題に対処するには、Ubuntuカーネルとプロセッサマイクロコードの更新が必要です。アップデートはUbuntu Security Noticesで発表されます。Meltdown / Spectre関連のアップデートが発表され、カーネルお​​よび一部のユーザースペースソフトウェアのアップデートをカバーしています。

以下の更新がリリースされました。

  • Ubuntuカーネルのアップデートは、USN 3522-1(Ubuntu 16.04 LTSの場合)、USN 3523-1(Ubuntu 17.10の場合)、USN 3522-2(Ubuntu 14.04 LTS(HWE)の場合)、およびUSN-3524-1(Ubuntuの場合)で利用可能です14.04 LTS)。
  • カーネルの更なる更新(Specterバリアントの緩和策とMeltdownの追加緩和策の両方を含む)は、2018年1月22日にUSN-3541-2(Ubuntu 16.04 LTS(HWE)用)、USN-3540-1(Ubuntu 16.04 LTS用)で利用可能になりました)、USN-3541-1(Ubuntu 17.10の場合)、USN-3540-2(Ubuntu 14.04 LTS(HWE)の場合)、USN-3542-1(Ubuntu 14.04 LTSの場合)、USN-3542-2(Ubuntu 12.04 LTSの場合) (HWE))。
  • USN-3516-1はFirefoxの更新を提供します。
  • USN-3521-1は、NVIDIAドライバーの更新を提供します。
  • USN-3531-1は、Intelマイクロコードの更新を提供します。退行のため、マイクロコードの更新は今のところ元に戻されています( USN-3531-2)。

ユーザーは、通常の方法でリリースされたアップデートをすぐにインストールする必要があります。カーネルとマイクロコードの更新を有効にするには、再起動が必要です。

ユーザーは、再起動後にカーネルページテーブル分離パッチがアクティブであることを確認できます

Ubuntu 17.04(Zesty Zapus)の更新は、 2018年1月13日にサポートが終了したため提供さません

セキュリティ更新プログラムがリリースされる前に、Dustin Kirklandは、カーネルの更新、CPUマイクロコード、gcc、qemuの更新など、ブログの投稿で予想される更新の詳細を提供していました。

CanonicalのKiko Reisは、2018年1月24日にこれらの脆弱性の影響と Ubuntuユーザーへの緩和策についてアクセシブルな説明を書きました。

Ubuntuセキュリティチームは、これらの問題に関する現在のステータスと、特定の個々の脆弱性バリアントと、さまざまなユースケースでのそれらのミギテーションについて詳細に説明する公式の技術的なFAQ維持しています

v4.15(2018年1月28日)以降のLinuxメインラインおよび安定版リリースの更新には適切な修正が含まれており、Ubuntuカーネルはそれらに基づいていることに注意してください。そのため、Linuxカーネルバージョン4.15.0以降を使用するUbuntuのすべてのバージョンにパッチが適用されます(18.04および18.10を含む)。


8
早期の開示を考慮しても、Canonicalはこれについて少し遅れているように見えますが、深刻さを考えると残念です。RHELはすでに6と7にパッチが適用されており、Windows AFAIKも同様です。公平を期すために、Canonicalはあまり注目を集めていなかったようです(タイムラインによると9-nov-17です)。これは、大きな男の子が自分たちにニュースを伝え、最後の可能性のある機会にのみ競技会に通知している場合だろうか?
sxc731

2
「RHELはすでに6と7にパッチが適用されているため、Windowsでも見られます」-これらのパッチは、一部の。更新がリリースされたときだけを見るだけでは十分ではありません。その品質も確認する必要があります。Canonicalはより多くの時間をテストに費やしています。必要に応じて、今すぐプレリリースパッケージにアクセスできます。
ロビーバサック

私は確かにCanonicalに非難していませんでした。変更の広範な性質を考えると、機能的回帰だけでなく、非機能的(メルトダウンの場合に与えられる)の可能性も確かにあります。私の質問は、それがOSベンダー間の平等な分野であったかどうかということでした。
sxc731

UPDATE:参照してくださいinsights.ubuntu.com/2018/01/24/...最も包括的なこの質問への答え、とのためにwiki.ubuntu.com/SecurityTeam/KnowledgeBase/SpectreAndMeltdown詳細なステータスのために。
キコ

30

ここで心に留めておくべき特定の事柄がありますが、これは、Ubuntuだけでなく、分析とセキュリティに関するメーリングリストの一部からも取り上げられています。

  1. メルトダウンの攻撃は、カーネルレベルでパッチを適用することが可能です。これは、Meltdownの一連の脆弱性から保護するのに役立ちます。

  2. スペクターの攻撃ベクトルはに対して保護するためにはるかに困難ですが、悪者を悪用するためにもはるかに困難です。修正可能なLLVM攻撃ベクトルなどの既知の攻撃ベクトル用のソフトウェアパッチがありますが、本質的な問題は、Spectreを実際に修正するには、CPUハードウェアの動作と動作を変更する必要があることです。これにより、既知の攻撃ベクトルのみが実際にパッチを適用できるため、保護が非常に難しくなります。ただし、この問題にはすべてのソフトウェアに個別の強化が必要です。つまり、「1つのパッチですべてが修正されるわけではない」種類の取引の1つです。

さて、大きな質問のために:

  • UbuntuはMeltdownとSpectreの脆弱性にパッチを当てますか?
    • 答えははい、それは行うことは難しいですが、パッチはカーネルにトリクルしかし、彼らが行くとおそらく彼らは予期しない問題を修正するパッチを適用する必要があります道に沿って予想外の回帰を確認しようとしているとして、カーネルとセキュリティチームがテストを行います。ただし、セキュリティチームとカーネルチームこれに取り組んでいます。
  • 修正プログラムはいつ入手可能になりますか?

    • カーネルチームから得たのと同じ答えをお伝えします。「パッチが機能することを確信している場合、途中で他に何も壊さないこと」。

      考慮すべき今、大きなもの:ありました修正のリリースに一致するようになっていた1月9日の公表、対象日付が。ただし、代わりに1月3日に開示が行われました。カーネルチームとセキュリティチームはまだ1月9日を目標にしていますが、これは確固たる期限ではなく、カーネルの主要な何かがプロセスで中断した場合に遅延が発生する可能性があります

  • MeltdownとSpectreの最新情報を探している場所はありますか?

    • はい、実際に。 Ubuntuセキュリティチームには、SpectreとMeltdownに関するナレッジベースの記事があり、そこからリリースされている修正のタイムラインとそうでないものに関するステータスレポートが表示されます。

      あなたは必要がありますまた、 Ubuntuのセキュリティチームの鑑賞セキュリティ通知サイトを、そしてカーネルに利用可能になるの修正の発表に目を光らせておいてください。


注目すべきその他の関連リンク:


1
サポートされているリスト(https:wiki.ubuntu.com/Releases)にリストされている@jkabrg 17.04。より具体的には、17.04についてのubuntu-announceメーリングリスト通知が最終EOL日付に達していないため、確定日が設定されます
Thomas Ward

@jkabrgそれは彼らがパッチを取得することを意味しません。なぜなら彼らはEOLに近いパッチを「リリースしない」と決めることができるからです。実際のリリースがあるかどうかを尋ねましたが、まだ明確な応答はありません。
トーマス・ウォード

心配する必要があるページのデータは@jkabrgです。単に「linux」という名前のパッケージ用のリストであり、現在「pending」としてリストされています。
トーマス・ウォード

@jkabrgそうは言っても、Zesty 17.04のEOLは25日に予定されています-パッチが利用可能になる前に利用可能になると、利用可能になるかもしれません。
トーマスウォード

1
略語DNE、needs-triageの意味は何ですか?「保留中」と「リリース済み」しか理解できません。
フィリップゴーシェ

2

2018年1月20日

カーネル4.9.77および4.14.14のスペクター保護(Retpoline)は、Linuxカーネルチームによって2018年1月15日にリリースされました。Ubuntuカーネルチームは、2018年1月17日にカーネルバージョン4.9.77のみをリリースし、カーネルバージョン4.14は公開していません.14。理由は不明ですが、Ask Ubuntuで回答されたように4.14.14が再要求されました:カーネル4.9.77がリリースされたが、カーネル4.14.14はリリースされなかったのはなぜですか?今日まで表示されませんでした。

2018年1月17日、メルトダウンへのスペクターサポートの追加

プログラマーのコメントに記載されている4.14.14の変更(4.14.13から)に興味がある人はいると思います。主にSpectreサポートに焦点を当てた4.14.13から4.14.14カーネルへの変更点は次のとおりです。

+What:  /sys/devices/system/cpu/vulnerabilities
+       /sys/devices/system/cpu/vulnerabilities/meltdown
+       /sys/devices/system/cpu/vulnerabilities/spectre_v1
+       /sys/devices/system/cpu/vulnerabilities/spectre_v2
+Date:      January 2018
+Contact:   Linux kernel mailing list <linux-kernel@vger.kernel.org>
+Description:   Information about CPU vulnerabilities
+
+       The files are named after the code names of CPU
+       vulnerabilities. The output of those files reflects the
+       state of the CPUs in the system. Possible output values:
+
+       "Not affected"    CPU is not affected by the vulnerability
+       "Vulnerable"      CPU is affected and no mitigation in effect
+       "Mitigation: $M"  CPU is affected and mitigation $M is in effect
diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/admin-guide/kernel-parameters.txt
index 520fdec15bbb..8122b5f98ea1 100644
--- a/Documentation/admin-guide/kernel-parameters.txt
+++ b/Documentation/admin-guide/kernel-parameters.txt
@@ -2599,6 +2599,11 @@ 
    nosmt       [KNL,S390] Disable symmetric multithreading (SMT).
            Equivalent to smt=1.

+   nospectre_v2    [X86] Disable all mitigations for the Spectre variant 2
+           (indirect branch prediction) vulnerability. System may
+           allow data leaks with this option, which is equivalent
+           to spectre_v2=off.
+
    noxsave     [BUGS=X86] Disables x86 extended register state save
            and restore using xsave. The kernel will fallback to
            enabling legacy floating-point and sse state.
@@ -2685,8 +2690,6 @@ 
            steal time is computed, but won't influence scheduler
            behaviour

-   nopti       [X86-64] Disable kernel page table isolation
-
    nolapic     [X86-32,APIC] Do not enable or use the local APIC.

    nolapic_timer   [X86-32,APIC] Do not use the local APIC timer.
@@ -3255,11 +3258,20 @@ 
    pt.     [PARIDE]
            See Documentation/blockdev/paride.txt.

-   pti=        [X86_64]
-           Control user/kernel address space isolation:
-           on - enable
-           off - disable
-           auto - default setting
+   pti=        [X86_64] Control Page Table Isolation of user and
+           kernel address spaces.  Disabling this feature
+           removes hardening, but improves performance of
+           system calls and interrupts.
+
+           on   - unconditionally enable
+           off  - unconditionally disable
+           auto - kernel detects whether your CPU model is
+                  vulnerable to issues that PTI mitigates
+
+           Not specifying this option is equivalent to pti=auto.
+
+   nopti       [X86_64]
+           Equivalent to pti=off

    pty.legacy_count=
            [KNL] Number of legacy pty's. Overwrites compiled-in
@@ -3901,6 +3913,29 @@ 
    sonypi.*=   [HW] Sony Programmable I/O Control Device driver
            See Documentation/laptops/sonypi.txt

+   spectre_v2= [X86] Control mitigation of Spectre variant 2
+           (indirect branch speculation) vulnerability.
+
+           on   - unconditionally enable
+           off  - unconditionally disable
+           auto - kernel detects whether your CPU model is
+                  vulnerable
+
+           Selecting 'on' will, and 'auto' may, choose a
+           mitigation method at run time according to the
+           CPU, the available microcode, the setting of the
+           CONFIG_RETPOLINE configuration option, and the
+           compiler with which the kernel was built.
+
+           Specific mitigations can also be selected manually:
+
+           retpoline     - replace indirect branches
+           retpoline,generic - google's original retpoline
+           retpoline,amd     - AMD-specific minimal thunk
+
+           Not specifying this option is equivalent to
+           spectre_v2=auto.
+
    spia_io_base=   [HW,MTD]
    spia_fio_base=
    spia_pedr=
diff --git a/Documentation/x86/pti.txt b/Documentation/x86/pti.txt
new file mode 100644
index 000000000000..d11eff61fc9a
--- /dev/null
+++ b/Documentation/x86/pti.txt
@@ -0,0 +1,186 @@ 
+Overview
+========
+
+Page Table Isolation (pti, previously known as KAISER[1]) is a
+countermeasure against attacks on the shared user/kernel address
+space such as the "Meltdown" approach[2].
+
+To mitigate this class of attacks, we create an independent set of
+page tables for use only when running userspace applications.  When
+the kernel is entered via syscalls, interrupts or exceptions, the
+page tables are switched to the full "kernel" copy.  When the system
+switches back to user mode, the user copy is used again.
+
+The userspace page tables contain only a minimal amount of kernel
+data: only what is needed to enter/exit the kernel such as the
+entry/exit functions themselves and the interrupt descriptor table
+(IDT).  There are a few strictly unnecessary things that get mapped
+such as the first C function when entering an interrupt (see
+comments in pti.c).
+
+This approach helps to ensure that side-channel attacks leveraging
+the paging structures do not function when PTI is enabled.  It can be
+enabled by setting CONFIG_PAGE_TABLE_ISOLATION=y at compile time.
+Once enabled at compile-time, it can be disabled at boot with the
+'nopti' or 'pti=' kernel parameters (see kernel-parameters.txt).
+
+Page Table Management
+=====================
+
+When PTI is enabled, the kernel manages two sets of page tables.
+The first set is very similar to the single set which is present in
+kernels without PTI.  This includes a complete mapping of userspace
+that the kernel can use for things like copy_to_user().
+
+Although _complete_, the user portion of the kernel page tables is
+crippled by setting the NX bit in the top level.  This ensures
+that any missed kernel->user CR3 switch will immediately crash
+userspace upon executing its first instruction.
+
+The userspace page tables map only the kernel data needed to enter
+and exit the kernel.  This data is entirely contained in the 'struct
+cpu_entry_area' structure which is placed in the fixmap which gives
+each CPU's copy of the area a compile-time-fixed virtual address.
+
+For new userspace mappings, the kernel makes the entries in its
+page tables like normal.  The only difference is when the kernel
+makes entries in the top (PGD) level.  In addition to setting the
+entry in the main kernel PGD, a copy of the entry is made in the
+userspace page tables' PGD.
+
+This sharing at the PGD level also inherently shares all the lower
+layers of the page tables.  This leaves a single, shared set of
+userspace page tables to manage.  One PTE to lock, one set of
+accessed bits, dirty bits, etc...
+
+Overhead
+========
+
+Protection against side-channel attacks is important.  But,
+this protection comes at a cost:
+
+1. Increased Memory Use
+  a. Each process now needs an order-1 PGD instead of order-0.
+     (Consumes an additional 4k per process).
+  b. The 'cpu_entry_area' structure must be 2MB in size and 2MB
+     aligned so that it can be mapped by setting a single PMD
+     entry.  This consumes nearly 2MB of RAM once the kernel
+     is decompressed, but no space in the kernel image itself.
+
+2. Runtime Cost
+  a. CR3 manipulation to switch between the page table copies
+     must be done at interrupt, syscall, and exception entry
+     and exit (it can be skipped when the kernel is interrupted,
+     though.)  Moves to CR3 are on the order of a hundred
+     cycles, and are required at every entry and exit.
+  b. A "trampoline" must be used for SYSCALL entry.  This
+     trampoline depends on a smaller set of resources than the
+     non-PTI SYSCALL entry code, so requires mapping fewer
+     things into the userspace page tables.  The downside is
+     that stacks must be switched at entry time.
+  d. Global pages are disabled for all kernel structures not
+     mapped into both kernel and userspace page tables.  This
+     feature of the MMU allows different processes to share TLB
+     entries mapping the kernel.  Losing the feature means more
+     TLB misses after a context switch.  The actual loss of
+     performance is very small, however, never exceeding 1%.
+  d. Process Context IDentifiers (PCID) is a CPU feature that
+     allows us to skip flushing the entire TLB when switching page
+     tables by setting a special bit in CR3 when the page tables
+     are changed.  This makes switching the page tables (at context
+     switch, or kernel entry/exit) cheaper.  But, on systems with
+     PCID support, the context switch code must flush both the user
+     and kernel entries out of the TLB.  The user PCID TLB flush is
+     deferred until the exit to userspace, minimizing the cost.
+     See intel.com/sdm for the gory PCID/INVPCID details.
+  e. The userspace page tables must be populated for each new
+     process.  Even without PTI, the shared kernel mappings
+     are created by copying top-level (PGD) entries into each
+     new process.  But, with PTI, there are now *two* kernel
+     mappings: one in the kernel page tables that maps everything
+     and one for the entry/exit structures.  At fork(), we need to
+     copy both.
+  f. In addition to the fork()-time copying, there must also
+     be an update to the userspace PGD any time a set_pgd() is done
+     on a PGD used to map userspace.  This ensures that the kernel
+     and userspace copies always map the same userspace
+     memory.
+  g. On systems without PCID support, each CR3 write flushes
+     the entire TLB.  That means that each syscall, interrupt
+     or exception flushes the TLB.
+  h. INVPCID is a TLB-flushing instruction which allows flushing
+     of TLB entries for non-current PCIDs.  Some systems support
+     PCIDs, but do not support INVPCID.  On these systems, addresses
+     can only be flushed from the TLB for the current PCID.  When
+     flushing a kernel address, we need to flush all PCIDs, so a
+     single kernel address flush will require a TLB-flushing CR3
+     write upon the next use of every PCID.
+
+Possible Future Work
+====================
+1. We can be more careful about not actually writing to CR3
+   unless its value is actually changed.
+2. Allow PTI to be enabled/disabled at runtime in addition to the
+   boot-time switching.
+
+Testing
+========
+
+To test stability of PTI, the following test procedure is recommended,
+ideally doing all of these in parallel:
+
+1. Set CONFIG_DEBUG_ENTRY=y
+2. Run several copies of all of the tools/testing/selftests/x86/ tests
+   (excluding MPX and protection_keys) in a loop on multiple CPUs for
+   several minutes.  These tests frequently uncover corner cases in the
+   kernel entry code.  In general, old kernels might cause these tests
+   themselves to crash, but they should never crash the kernel.
+3. Run the 'perf' tool in a mode (top or record) that generates many
+   frequent performance monitoring non-maskable interrupts (see "NMI"
+   in /proc/interrupts).  This exercises the NMI entry/exit code which
+   is known to trigger bugs in code paths that did not expect to be
+   interrupted, including nested NMIs.  Using "-c" boosts the rate of
+   NMIs, and using two -c with separate counters encourages nested NMIs
+   and less deterministic behavior.
+
+   while true; do perf record -c 10000 -e instructions,cycles -a sleep 10; done
+
+4. Launch a KVM virtual machine.
+5. Run 32-bit binaries on systems supporting the SYSCALL instruction.
+   This has been a lightly-tested code path and needs extra scrutiny.
+
+Debugging
+=========
+
+Bugs in PTI cause a few different signatures of crashes
+that are worth noting here.
+
+ * Failures of the selftests/x86 code.  Usually a bug in one of the
+   more obscure corners of entry_64.S
+ * Crashes in early boot, especially around CPU bringup.  Bugs
+   in the trampoline code or mappings cause these.
+ * Crashes at the first interrupt.  Caused by bugs in entry_64.S,
+   like screwing up a page table switch.  Also caused by
+   incorrectly mapping the IRQ handler entry code.
+ * Crashes at the first NMI.  The NMI code is separate from main
+   interrupt handlers and can have bugs that do not affect
+   normal interrupts.  Also caused by incorrectly mapping NMI
+   code.  NMIs that interrupt the entry code must be very
+   careful and can be the cause of crashes that show up when
+   running perf.
+ * Kernel crashes at the first exit to userspace.  entry_64.S
+   bugs, or failing to map some of the exit code.
+ * Crashes at first interrupt that interrupts userspace. The paths
+   in entry_64.S that return to userspace are sometimes separate
+   from the ones that return to the kernel.
+ * Double faults: overflowing the kernel stack because of page
+   faults upon page faults.  Caused by touching non-pti-mapped
+   data in the entry code, or forgetting to switch to kernel
+   CR3 before calling into C functions which are not pti-mapped.
+ * Userspace segfaults early in boot, sometimes manifesting
+   as mount(8) failing to mount the rootfs.  These have
+   tended to be TLB invalidation issues.  Usually invalidating
+   the wrong PCID, or otherwise missing an invalidation.

プログラマーのドキュメントについて質問がある場合は、下にコメントを投稿してください。回答するように最善を尽くします。

2018年1月16日、4.14.14および4.9.77のSpectreを更新

私はそれをインストールするには非常に簡単だんだように、あなたはすでにカーネルのバージョン4.14.13または4.9.76を実行している場合4.14.144.9.77、彼らはスペクターのセキュリティホールを軽減するために、数日中に出てくるとき。この修正の名前はRetpolineであり、以前推測されていた深刻なパフォーマンスヒットはありません。

Greg Kroah-HartmanがLinux 4.9および4.14ポイントリリースの最新パッチを送信しました。これには、現在Retpolineサポートが含まれています。

このX86_FEATURE_RETPOLINEは、すべてのAMD / Intel CPUで有効です。完全にサポートするには、-mindirect-branch = thunk-externサポートを含む新しいGCCコンパイラでカーネルを構築する必要もあります。GCCの変更は昨日GCC 8.0に上陸し、GCC 7.3にバックポートされる可能性があります。

Retpolineサポートを無効にしたい場合は、パッチを適用したカーネルをnoretpolineで起動できます。

2018年1月12日更新

Spectreからの最初の保護はここにあり、今後数週間および数か月で改善されます。

Linuxカーネル4.14.13、4.9.76 LTS、および4.4.111 LTS

このSoftpediaの記事から:

Linuxカーネル4.14.13、4.9.76 LTS、および4.4.111 LTSがkernel.orgからダウンロードできるようになりました。これらには、Spectreセキュリティ脆弱性に対する修正が追加され、Linux 4.14.12、4.9からの回帰が含まれています。先週リリースされた.75 LTSおよび4.4.110 LTSカーネルは、いくつかのマイナーな問題を報告しました。

これらの問題は現在修正されているように見えるので、Linuxベースのオペレーティングシステムを、今日リリースされた新しいカーネルバージョンに更新しても安全です。これには、x86アップデート、PA-RISC、s390、PowerPC(PPC)ドライバ(Intel i915、暗号、IOMMU、MTD)、および通常のmmおよびコアカーネルの変更。

多くのユーザーは、2018年1月4日と2018年1月10日にUbuntu LTSの更新に4.14.13問題がありました。YMMVでも問題なく数日間使用しています。カーネル14.14.13のインストール手順については、一番下までスキップしてください。


2018年1月7日更新

Greg Kroah-Hartmanは昨日、MeltdownとSpectre Linux Kernelのセキュリティホールに関する最新状況を書いています。ある人は彼をLinuxの世界でLinusに次いで2番目に強力な人と呼ぶかもしれません。この記事では、安定したカーネル(以下で説明します)およびUbuntuの大部分が使用するLTSカーネルについて説明しています。

平均的なUbuntuユーザーには推奨されません

この方法では、最新のメインライン(安定した)カーネルを手動でインストールする必要があり、平均的なUbuntuユーザーにはお勧めできません。安定したカーネルを手動でインストールした後、新しい(または古い)カーネルを手動でインストールするまでそこにとどまるためです。Ubuntuの平均的なユーザーは、新しいカーネルを自動的にインストールするLTSブランチにいます。

他の人が述べたように、Ubuntu Kernel Teamが通常のプロセスで更新をプッシュするのを待つ方が簡単です。

この答えは、「Meltdown」セキュリティ全体をすぐに修正し、追加の手動作業を行う意思がある上級Ubuntuユーザー向けです。

Linuxカーネル4.14.11、4.9.74、4.4.109、3.16.52、および3.2.97パッチのメルトダウンの欠陥

この記事から:

ユーザーは、すぐにシステムを更新することをお勧めします

2018年1月4日01:42 GMT・マリウス・ネストル

LinuxカーネルメンテナーのGreg Kroah-HartmanとBen Hutchingsは、最新バージョンのLinux 4.14、4.9、4.4、3.16、3.18、3.12 LTS(長期サポート)カーネルシリーズの新しいバージョンをリリースしました。プロセッサ。

Linux 4.14.11、4.9.74、4.4.109、3.16.52、3.18.91、および3.2.97カーネルがkernel.org Webサイトからダウンロードできるようになりました。ユーザーはGNU / Linuxディストリビューションを更新することをお勧めしますこれらのカーネルシリーズのいずれかをすぐに実行する場合、これらの新しいバージョンに。更新する理由 明らかに、Meltdownと呼ばれる重大な脆弱性にパッチを当てているためです。

前述のように、MeltdownとSpectreは、過去25年間にリリースされた最新のプロセッサー(CPU)を搭載したほぼすべてのデバイスに影響する2つのエクスプロイトです。はい、それはほとんどすべての携帯電話とパソコンを意味します。メルトダウンは、権限のない攻撃者が悪用して、カーネルメモリに保存されている機密情報を悪用する可能性があります。

まだ進行中のSpectre脆弱性に対するパッチ

Meltdownは、パスワードや暗号化キーなどの秘密データを公開する可能性がある重大な脆弱性ですが、Specterはさらに悪化し、修正するのは簡単ではありません。セキュリティ研究者は、かなりの期間、それが私たちを悩ませると言います。Spectreは、パフォーマンスを最適化するために最新のCPUで使用される投機的実行手法を活用することが知られています。

Spectreのバグにもパッチが適用されるまで、少なくともGNU / Linuxディストリビューションを新しくリリースされたLinuxカーネルバージョンにアップデートすることを強くお勧めします。お気に入りのディストリビューションのソフトウェアリポジトリで新しいカーネルアップデートを検索し、できるだけ早くインストールしてください。手遅れになるまで待ってはいけません、今すぐやってください!


カーネル4.14.10を1週間使用していたので、Ubuntu Mainline Kernelバージョン4.14.11をダウンロードして起動することはあまり気になりませんでした。

Ubuntu 16.04ユーザーは、4.14.11と同時にリリースされた4.4.109または4.9.74カーネルバージョンの方が快適かもしれません。

定期的な更新で希望するカーネルバージョンがインストールされない場合は、Ubuntuの質問に答えて手動で実行できます。カーネルを最新のメインラインバージョンに更新するにはどうすればよいですか?


4.14.12-1日がもたらす違い

最初の回答から24時間以内に、4.14.11カーネルバージョンを修正するためのパッチがリリースされました。4.14.11へのアップグレードは、4.14.11のすべてのユーザーに推奨されます。Greg-KHのコメント

4.14.12カーネルのリリースを発表しています。

4.14カーネルシリーズのすべてのユーザーはアップグレードする必要があります。

このリリースには、人々が遭遇したいくつかの小さな問題がまだ知られています。パッチがLinusのツリーに到達していないため、今週末に解決されることを願っています。

今のところ、いつものように、環境でテストしてください。

この更新を見ると、ソースコードの行はほとんど変更されていません。


カーネル4.14.13のインストール

Linuxカーネル4.14.13、4.9.76、および4.4.111では、より多くのMeltdownリビジョンとSpectre機能の開始が導入されました。

最新のメインラインカーネルをインストールする理由はいくつかあります。

  • 最後のUbuntu LTSカーネルアップデートのバグ
  • 現在のUbuntu LTSカーネル更新ストリームでサポートされていない新しいハードウェアがあります
  • 最新のメインラインカーネルバージョンでのみ利用可能なセキュリティアップグレードまたは新機能が必要です。

2018年1月15日現在、最新の安定したメインラインカーネルは4.14.13です。手動でインストールする場合は、次のことを知っておく必要があります。

  • 古いLTSカーネルは、Ubuntuというタイトルのメインメニューの最初のオプションよりも大きくなるまで更新されません。
  • 手動でインストールされたカーネルは、通常のsudo apt auto-removeコマンドでは削除されません。これに従う必要があります:ブートメニューをクリーンアップするために古いカーネルバージョンを削除するにはどうすればよいですか?
  • 通常のLTSカーネル更新方法に戻りたいときのために、古いカーネルの開発を監視します。次に、前の箇条書きリンクの説明に従って、手動でインストールされたメインラインカーネルを削除します。
  • 最新のメインラインカーネルを手動で削除した後sudo update-grub、Ubuntuの最新のLTSカーネルがGrubのメインメニューのUbuntuと呼ばれる最初のオプションになります。

警告が邪魔にならないので、最新のメインラインカーネル(4.14.13)をインストールするには、次のリンクに従ってください:ディストリビューションをアップグレードせずにカーネルを最新のメインラインバージョンに更新する方法は?

メインラインカーネル4.14.13.png


6
一般的なUbuntuユーザーにメインラインカーネルをインストールするようアドバイスするのは賢明ではないと思います。メインラインカーネルビルドはデバッグ用に作成されているため、サポートされていません。自己責任で使用してください。あなたが何をしているのかを知っていて、特にMeltdownとSpectreに対して脆弱であり、Ubuntuからの公式のセキュリティ更新を数日待つことができないなら、それを行うことができます。
ロビーバサック

4
また、これを行うと、以降のセキュリティ更新プログラムの自動受信を停止することに注意することも重要です。
ロビーバサック

1
-1。この方法ではセキュリティ更新プログラムが取得されないためです。
トーマスウォード

ブート4.14.11カーネルと実行するとsudo apt list --upgradable明らかにapport/xenial-updates,xenial-updates,xenial-security,xenial-security 2.20.1-0ubuntu2.15 all [upgradable from: 2.20.1-0ubuntu2.14]し、他のパッケージのホスト。次に、実行sudo apt upgradeするとそれらすべてがインストールされます。セキュリティ更新プログラムが無効になっていることを示すリンクを誰かが提供できますか?もっと学びたいです。Linuxチームのカーネルパッチが理にかなっているのではなく、Ubuntuカーネルチームが独自のパッチを適用するのを数日間待っているセキュリティホールが25年間存在していたため、Robieに同意します。
WinEunuuchs2Unix

セキュリティ更新プログラムが完全にオフになるわけではありません。問題は、カスタムインストールされたカーネルが、Ubuntu Securityチームによって発行された後続のカーネル更新をオーバーライドすることです。また、カスタムインストールされたカーネルも自動的に更新されません。
ロビーバサック
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.