Ubuntu Weekly Topics

2020年8月7日号 “BootHole”脆弱性,Advantech EPC-C301

この記事を読むのに必要な時間:およそ 4 分

“BootHole”脆弱性

GRUB2に脆弱性が発見されました。ただし,慌てることはありません。⁠BootHole⁠と呼ばれるこの脆弱性は,メモリ破壊によってSecureBootを迂回することが可能であるというものです。

繰り返しますが,慌てることはありません。この脆弱性そのものがただちにお使いのマシンを侵害することはあまり考えられません。……というより,慌てて適用すると起動不能になることがあった(現在は解消しています)うえ,現状ではまだ完全な防御ができない段階にあります。

この脆弱性の悪用にはブートローダ領域の侵害が必要であり,通常この操作にはroot権限が必要になります。⁠root権限が侵害されている」という時点でたいていの環境では致命傷のはずで,通常はrootを取られるような脆弱性を放置していないはず,という前提が採用できるでしょう。⁠悪用される時点ですでに何かがおかしい」というタイプの問題であり,ただちにこれが問題になるのであれば,その環境はなにかおかしな前提で運用されている可能性があります。

また,⁠root特権を奪取した上で,この脆弱性を使って気付かれないように仕込みをする」という攻撃を受けるのが侵害シナリオとなります。少なくとも現時点ではまだ,この脆弱性を使ってSecureBootを迂回する「仕込み」を入れるような侵害パターンは観測されていません。よって,⁠日々世界の平和のために戦っており,敵対する国家に狙われている」⁠職業がスパイである」⁠これから世界征服を始めるつもりで,脳改造を後回しにしたバッタ怪人の改造手術をしたばかりである」といったケースでなければ,⁠すぐ」対応する必要はないはずです。

とはいえ,ずっと対応しないわけにもいきません。対処としては次のようにプランするのが良いでしょう。

  • 最初に,利用している環境で,SecureBootを利用しているかどうかを確認しましょう。利用していない,もしくはSecure Bootに興味がない場合はこの脆弱性への対策を取る必要はありません注1⁠。
  • SecureBootを利用している場合,その環境に,第三者が不正なアクセスをする可能性や,マルウェアに感染する可能性があるかどうかを考えましょう。もしどちらかが存在する場合は,SecureBootを保護するための対策が必要です。
  • 対策を行う前に,⁠その環境がブート不能になった場合の回復手段は存在するか」を確認しましょう。物理的にアクセスできる,あるいはIPMI付属のリモートKVM経由でアクセスできる,もしくはクラウド環境にあるのでブロックデバイスを他のマシンでマウントできる,といった回復手段が存在しない場合,現状ではまだ更新はリスキーです。もう少し事例が集まるまで更新を待てないかを検討してください。
  • 万が一の際の回復手段があることが確認できたら,GRUBを更新してシステムを再起動します。
  • 無事にGRUBの更新が終わったら,dbxの更新が可能かどうかを検討します(ただし,Ubuntu的にはまだdbxを更新する方法が提供されていないことに注意してください。このステップはあくまで準備のための対応です⁠⁠。もしもデュアルブートしている場合は,Ubuntu以外の環境についてもこの問題への対処が完了していることを確認した上で更新する必要があり,たいていのケースでは時期尚早でしょう。
  • Ubuntu的な検証が完了した後に提供されるパッケージを用いて,ハードウェアが保持するdbxを更新してください。また,厳密な「対応完了」を確認するためには,dbxの更新後,⁠無事に起動できるか」⁠revokeされたブートローダーでは起動できないか」を確認する必要があることを覚えておく必要があります。
注1
この脆弱性は「SecureBootを迂回できる」というものなので,もともとSecureBootをしていない環境であればそもそも影響の受けようがありません。一方,⁠本当にそれでいいのか」を考える必要はあります。

その他のニュース

  • Ubuntu 18.04 LTS(おそらくUbuntu Core18ではなく通常のUbuntuの方)を搭載した「スマートシティ向け」組み込み向けデバイス,Advantech EPC-C301について。耐候性とGPIOを備えた,典型的な組み込みデバイスに「Ubuntuがインストールされて」販売されるようになりました。ちなみに同一機種のWindows版は日本でも扱いがありそうです。

今週のセキュリティアップデート

usn-4435-1, usn-4435-2:ClamAV のセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-July/005527.html
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-July/005531.html
  • Ubuntu 20.04 LTS・18.04 LTS・16.04 LTS・14.04 ESM・12.04 ESM用のアップデータがリリースされています。CVE-2020-3327, CVE-2020-3350, CVE-2020-3481を修正します。
  • 特定のアーカイブ形式において,悪意ある加工を施したファイルを処理することでDoSと任意のファイルの削除が可能でした。
  • 対処方法:通常の場合,アップデータを適用することで問題を解決できます。
usn-4437-1:libslirp のセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-July/005528.html
  • Ubuntu 20.04 LTS用のアップデータがリリースされています。CVE-2020-10756を修正します。
  • 悪意あるICMP ECHO応答を受け取るとlinslirp0がクラッシュする問題がありました。
  • 対処方法:アップデータを適用の上,システムを再起動してください。
usn-4438-1:SQLite のセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-July/005529.html
  • Ubuntu 20.04 LTS用のアップデータがリリースされています。CVE-2020-15358を修正します。
  • 悪意ある加工を施したクエリを処理させることで,メモリ破壊を誘発することが可能でした。DoSに加えて,任意のコードの実行の可能性があります。
  • 対処方法:通常の場合,アップデータを適用することで問題を解決できます。
usn-4436-1:librsvg のセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-July/005530.html
  • Ubuntu 18.04 LTS・16.04 LTS用のアップデータがリリースされています。CVE-2017-11464, CVE-2019-20446を修正します。
  • 悪意ある加工を施したファイルを処理させることで,DoSが可能でした。
  • 対処方法:アップデータを適用の上,セッションを再起動(一度ログアウトして再度ログイン)してください。
usn-4439-1:Linux kernel のセキュリティアップデート
usn-4440-1:linux kernel のセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-July/005533.html
  • Ubuntu 18.04 LTS用のアップデータがリリースされています。CVE-2019-16089, CVE-2019-19462, CVE-2019-20810, CVE-2019-20908, CVE-2020-10732, CVE-2020-10757, CVE-2020-10766, CVE-2020-10767, CVE-2020-10768, CVE-2020-11935, CVE-2020-13974, CVE-2020-15780を修正します。
  • 対処方法:アップデータを適用の上,システムを再起動してください。
  • 備考:ABIの変更を伴いますので,カーネルモジュールを自分でコンパイルしている場合は再コンパイルが必要です。カーネルモジュール関連のパッケージ(標準ではlinux-restricted-modules, linux-backport-modules, linux-ubuntu-modulesなど)は依存性により自動的にアップデートされるため,通常はそのままアップデートの適用を行えば対応できます。
usn-4441-1:MySQL のセキュリティアップデート
usn-4442-1:Sympa のセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-July/005535.html
  • Ubuntu 14.04 ESM用のアップデータがリリースされています。CVE-2018-1000550, CVE-2018-1000671, CVE-2020-10936を修正します。
  • 悪意ある操作を行うことで,XSS・コンテンツの改竄が可能でした。また,環境変数の扱いが正しくないため,setuidバイナリを特権昇格に利用可能でした。
  • 対処方法:通常の場合,アップデータを適用することで問題を解決できます。
usn-4436-2:librsvgの再アップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2020-July/005536.html
  • Ubuntu 18.04 LTS・16.04 LTS用のアップデータがリリースされています。
  • usn-4436-1の修正以降,特定のファイルを表示させることができなくなっていました。このアップデータでは一時的に以前のバージョンに戻すことで問題を回避します。
  • 対処方法:アップデータを適用の上,セッションを再起動(一度ログアウトして再度ログイン)してください。
usn-4443-1:Firefox のセキュリティアップデート
usn-4432-1:GRUB 2 のセキュリティアップデート

著者プロフィール

吉田史(よしだふみひと)

システム管理を中心にWindows/PC Unixを併用している。Ubuntu Japanese Teamではパッケージサーバの管理や翻訳などの作業を担当。