LinuxのリーダーLinus TorvaldsがIntelのMeltdown/Spectre対策を“完全なごみ”と酷評

つねに歯に衣(きぬ)着せぬLinus Torvaldsは、今でもLinuxオペレーティングシステムの最深奥部分のコードを書き続けているが、今回はIntelに対して、率直な非難の言葉を投じた。彼によると、Meltdown/Spectre問題に対するIntelによる最新の対応(パッチ)は: “完全なごみだ”。そしてこんな疑問文も: “彼らに、お前らは頭がおかしい、と言ってやれる人は一人もいなかったのか?”。

これら一連の悪口は、公開メール〔Linuxカーネル・メイリングリスト〕上で、イギリスに住むAmazonの技術者David Woodhouseとの対話の中で吐露された。その問題自体が(少なくともぼくのような門外漢にとっては)相当ややこしいが、Torvaldsの主張では、それに対するIntelのフィックスは、“基本的に何もしない、しかし要らないことをたくさんしているフィックスの、イカれた実装”だ、という。

そのフィックスは、主にIntelのチップの問題であるMeltdownの対策であるはずだが、しかし単純にそれだけをやるのではなくて、もっといろんなフィックスがあって、それらをユーザーまたはアドミニストレータがブート時にいちいちオプトインしなければならない。そもそもそんなに重大な脆弱性なら、なんで(ユーザーやアドミンに、ブート時に)尋ねたりするのか?  しかも将来のCPUが必要としないと思われる機能に関して、なぜそこまで低レベルの作業をやらせるのか? その選択(オプトイン/アウト)は、良くって不必要、悪ければユーザーの誤誘導ないしパフォーマンスの劣化に帰結するのではないか?

また、同一のパッチにいろんなものを詰め込んでいることに関してTorvaldsは、これまでのソリューションと重複を指摘している。たとえば脆弱性の悪用に対する保護は、GoogleのProject Zeroの“retpoline”テクニックが対応済みだ。

では、なぜやるのか? Torvaldsの推測では、Intelのテクニックの大部分、この場合はIndirect Branch Restricted Speculation, IBRS(間接分岐の予測を制限する)は効率が非常に悪いので、全面展開すると性能劣化が広範に及ぶからだ。そこで、そうする代わりに、メインのMeltdownフィックスをオプションにして、冗長な部分を加え、パッチをいかにもそれらしく見せている。〔IBRSと名付けられたIntelのフィックスについては: 参考文献。〕

Intel本気でこのクソをアーキテクチャにするつもりか? 誰も彼らに、お前らはバカだと言ってやれなかったのか?

彼らは文字通り、イカれたことをしている。まったく、意味のないことをしている。そのために、きみ[Woodhouse]の主張に疑問符がついてしまう。このパッチは、まともではないことを、している。

…彼らの中に、‘王様は裸だ’と言える人がいなかった。意味もなく完全なごみを詰め込む人たちしか、いなかった。こんなことを書くこと自体が、悲しいよ。

Torvaldsの毒舌を諌(いさ)めようとしていたWoodhouseも、最後の方ではTorvaldsの批判を認め、IBRSは“下品で恥ずべきハック”だ、と言っている。“それをオプトインにする正当な理由はない”、とも。

【後略】
〔Intelからの儀礼的形式的なリプライなど〕

[原文へ]
(翻訳:iwatani(a.k.a. hiwa

Apple、Spectre問題を軽減するiOSとmacOSのアップデートを公開

つい先ほどAppleはiOS 11.2.2を公開し、SafariとWebKitにいくつかの改善を施すとともに、Spectre脆弱性を緩和した。macOSもアップデートされた。これはmacOS High Sierra 10.13.2に対する追加アップデートで同じくSpectre対応が含まれる。

例によって、所有するデバイスは常に最新のセキュリティーパッチを当てた状態にすべきだ。今回のMeltdownとSpectreの脆弱性は深刻だ。Meltdownを悪用すると、悪意のアプリケーションがカーネル内の非暗号化メモリーを参照できる。パスワードや暗号化キーを他人に見られていい人はいない。

Meltdownは、すでに過去のアップデートで対応済みだ。iOS 11.2、macOS 10.13.2、およびtvOS 11.2にはMeltdownを緩和する修正がすでに含まれている。Apple WatchのCPUはMeltdownの影響を受けない。

Spectreは、複数アプリケーション間の障壁を破るだけなのでMeltdownほど深刻ではない。しかし、ウェブブラウザーでJavaScriptを使って悪用することが可能だ。誰かが悪質なJavaScriptコードを広告に入れて配信する前に修正することが重要なのはそのためだ。

iPhoneまたはiPadのユーザーは、設定アプリを開き、一般-ソフトウェアアップデートに進む。Macでは、Mac App Storeに行ってアップデートを確認する。

[原文へ]

(翻訳:Nob Takahashi / facebook