ページへ戻る

− Links

 印刷 

Gentoo Linuxな生活​/MeltdownとSpectre対策 のソース :: Nest Of Hawk

xpwiki:Gentoo Linuxな生活/MeltdownとSpectre対策のソース

« Prev[3]  
*コンピュータ業界に激震が走る。 [#u1d15249]
2018年初っ端、コンピュータ業界に大激震が走りました。PentiumⅡ以降から運用されているCPUに、ハード的な脆弱性があると発表されました。それがMeltdownとSpectre。そらもう世間は蜂の巣つついた大騒ぎでした。うちのサーバも世間にさらしている以上、分かっているセキュリティ対策はなんとかしておきたい。このため、各所より発表されている対策を施しましたので、同様の皆様のためにも、まとめておこうかと思います。

対策のポイントは以下です。
-Meltdown&Spectreの対策パッチが当たっているカーネルを導入
-Linuxカーネルのビルドオプション
-Spectre対策パッチが施されているコンパイラ

それでは行ってみましょう

*Linuxカーネル側 [#zecba13f]
**対策版Linuxカーネルソースのインストール [#aed11328]
2018年2月25日時点で、Meltdown&Spectre対策のパッチは、Longterm,Stableの最新版には当たっております。現在Longtermリリースの最新版は4.14.21、Stableリリース最新版は4.15.6です。とりあえず、うちは安定性で4.14を採用しております。但し、Gentooのパッケージでは、Unstableになっておりますので、ロック解除しなければなりません。設定しておきます。

/etc/portage/package.keywordsに以下を追記します。

 <sys-kernel/gentoo-sources-4.15

で、Linuxカーネル4.14の最新版をemergeします。

**カーネルオプションの設定 [#q2cbfd56]
以下のカーネルオプションを必須で設定しましょう

 Processor type and features
 [*] Avoid speculative indirect branches in kernel RETPOLINE Patch(Spectre)
 [*] Build a relocatable kernel
 [*] Randomize the address of the kernel image (KASLR) (Meltdown)
 
 Security Options
 [*] Remove the kernel mapping in user mode Kernel Page Table Isolation (Meltdown)

**GCC 7.3のインストール [#kc4a482b]
RETPOLINE対策がされているコンパイラである、GCC7.3をインストールしましょう。但し、Gentoo Stableでは無いので、これまた設定を追加します。

/etc/portage/package.keywords
 =sys-devel/gcc-7.3.0
 =dev-libs/boehm-gc-7.6.4

/etc/portage/package.use
 dev-libs/boehm-gc abi_x86_32
 dev-libs/libatomic_ops abi_x86_32

で、emergeします。さらに、以下のコマンドでgccのアップグレード

 # gcc-config x86_64-genelic-linux-gnu-7.3.0
 # emerge -1v libtool

**カーネルのリビルド [#haa04ea9]
Linuxカーネルを通常手順でリビルド致します。

  # cd /usr/src/linux
  # make
  # make modules_install

あとは、ビルドカーネルをブート可能な状態にして、サーバをリブート致します。

*成果 [#q7d55360]
本対策で、Spectre&Meltdownにおける、Variant2とVariant3に対応出来ました。Variant1は、アプリ側の対応らしいので、出来ることはここまでかな。とりあえずホッと一安心。

« Prev[3]