1/04/2018

[PC] ここ十年のIntel製CPUほぼ全てにハード修正不能でソフト対処後数割性能低下の脆弱性発覚

このところハード周りに起因する深刻な脆弱性を連発し、広範囲に甚大な被害を撒き散らしているIntelが、またしてもやらかしてしまったようです。今回発覚したのもハードの脆弱性ですが、ここ十年程度の間に発売されたx86系CPUのほぼ全てが対象と、規模はさらに桁違い、またハード側での修正が不可能と非常に性質が悪く、その対処に伴う副作用も大きく、甚大な被害が予想されています。

まだパッチがリリースされていないのでその詳細は伏せられていますが、各所の情報を総合するに、今回の脆弱性の存在箇所はCPU内で、大まかに言って、各メモリ領域への権限に応じたアクセス制御に際し、その検証が対象のコードの実行前ではなく実行後に行われるため、本来ならアクセスが禁止されるメモリ領域に対して権限外からアクセスが出来てしまう、というもののようです。これを悪用すると、カーネル内部の保護情報、例えばパスワードだとかに権限外のプロセスからアクセス可能になり、原理的には攻撃者が何でも出来てしまう、というわけです。最悪ですね。

上記はあくまで現段階では推測に留まりますが、ハード側の修正は不可能、すなわちマイクロコードの変更では対処出来ないレベルの問題である点と、公開されているOS側での対処方法がカーネルサイドのメモリキャッシュのフラッシングだとかページングのランダム入れ替えだとか、要するにアクセス自体の防止は諦める事を前提に、対象エリアの情報を都度消すという、力技というか、極めて消極的な対処方法である点等を見るに、概ね間違っていないものと言って良いのでしょう。仮に違っていたとしても、およそ同種、同レベルの問題である事は間違いなさそうです。なんてお粗末な。

ハードの修正が不可能である以上、対処がソフト面による事はもう仕方ないのでしょう。ただその種のソフト的な対処は、パフォーマンス面で大きな負の影響を与える、副作用の大きいものにならざるを得ません。それも当然、OS側の処理をする度にキャッシュのクリアが入るとなれば、処理によってはキャッシュが無いも同然になり、低速な外部メモリ等へのアクセスが必然的に多発する事になるのですから。

仮にその方法のパッチを用いる場合、その導入前後で30%程度もパフォーマンスが低下する、との見積もりも出ています。個人ユースの事務処理のように、元々リソースをあまり使っておらず、余剰が常に十分あるような環境では許容出来なくもないかもしれませんが、余剰があるわけではない場合には深刻な問題となるでしょう。特に、仮想化等でリソース配分を動的に最適化しているDC等のクラウド系のサーバビジネスあたりには致命的なインパクトがある筈です。脆弱性を放置する選択肢は取り得ませんから、パッチを当てた瞬間不足に陥るべき数割のリソースを事前に増強する必要があるわけですが、当然ながらそのコストは大変な事になるのですし、Amazon、Google、Microsoftはじめ、各社とも今頃は大変な騒ぎになっていることでしょう。というか私も管理してるサーバのリソース見直しとか頭が痛い。。。どうしよう。

ユーザが対処に追われる一方、当の犯人たるIntelは、まだ何もアクションを起こしていません。生じた被害はここ十年に販売したCPU全部すなわち数億件レベルで言うまでもなく甚大、Intel側で修正は不可能なために被害を食い止める事も出来ず、そもそも現行製品も対象でアーキテクチャの根本的な見直しが必要になる以上、問題を認めた瞬間に全製品が販売停止から回収となり、かつソフト側の対処に伴う費用とそれで落ちる性能分の損害賠償or増強費用を合算した空前の規模の損害賠償責任が降りかかってくるわけで、そりゃちょっとどうしていいかわからなくなるのも無理はないとも思いますけれども。しかしだからといってだんまりを決め込んでもどうにもならないでしょうし、潔く腹を切るしかないのではないかと思うのですが、さてどうしてくれるんでしょう。

なお、Intel以外のCPUではどうかというと、AMDは問題ない旨リリースを出していますが、ARMは何か怪しいです。というのも、ARM向けにも同様のパッチが準備されている、という話が出ているからです。ARMも、となると、スマホやタブレット、各種IoTデバイス等、一気に対象が広がってしまい、只でさえ大変な本件の規模がさらに何倍、という惨事になってしまうわけですが。。。どうなってしまうんでしょう。というか、そうだとしたら、どうにかなるのかこれ?

先日のファームウェアの脆弱性についてもまだ解決されていないのに。。。私のところのサーバに使っているJ3455M-Eの対策済みBIOSはまだリリースの予定すら立っていないようです。こっちも同じ位洒落になりません。まあこっちはマザーボードメーカー(ASUS)の問題ではあるのですけど。

The mysterious case of the Linux Page Table Isolation patches

で、あっという間に横展開の調査も進み、本件に加えてさらに同種の脆弱性も発覚してしまいました。しかもこちらはARMやAMDのチップも対象に含まれています。

[続き記事 [PC] Meltdownに続き、Spectre脆弱性発覚でCPU全陣営が一斉崩壊の危機]

[関連記事 [PC] 現行Intel製チップのファームウェアの大半に脆弱性発覚]