Respond to Intel chip vulnerability on DigitalOcean

年明け早々大きな脆弱性が発表されましたね。

このブログは DigitalOcean 上で動いているのですが、 DigitalOcean ではどのような対策が取られているのでしょうか。

公式ブログに記事が上がっていました。

読んでみると

  • Intel やその他ハードウェアベンダーと協力して対策を進めている
  • 1月9日時点では、 DigitalOcean に当てるパッチの検証をしている
  • カーネル側で対応するためのアップデートが各ディストリビューションから出ているので、まずはそれを適用して対策してほしい
  • そのために全ての Droplet で内部カーネルを使えるように設定した

と言った感じでした。1月10日現在、まだ DigitalOcean 本体の作業は終わっていないみたいですね。

さて、内部カーネルってなんだという話ですが、これは DigitalOcean の Droplet が使用するカーネルがどこにあるかという話です。

以前は Droplet 内部(例えば /boot/vmlinuz-3.10.0-693.11.6.el7.x86_64 など)のカーネルは使われず、外部( DigitalOcean のハイパーバイザー上?)のカーネルが利用されていたみたいです。

内部のカーネルを利用するためには以下にあるように DigitalOcean GrubLoader という特殊なカーネルを Droplet に設定してあげなければならなかったらしいです(レガシーなシステムが利用されていた場合)。

それを今回の脆弱性対応のために全 Droplet で内部カーネルが使われるように変更した( DigitalOcean GrubLoader を使うように変更した)ということみたいです。

この内部カーネルかどうかについての話は AWS の PV インスタンスでも似たような話がありました。

対応方法

カーネルをアップデートして再起動すれば OK 。

sudo yum update kernel
sudo reboot

まとめ

新年早々かなり影響範囲の大きい脆弱性でしたね。これで今年はもうこんなに影響範囲の大きい脆弱性は発見されないでしょう(フラグ)。再起動があるのがキツイですが頑張りましょう…。

内部カーネルや外部カーネルといった概念は知らなかった!