ITmedia NEWS > セキュリティ >
ニュース
» 2018年11月28日 08時00分 公開

ITりてらしぃのすゝめ:Apple「T2チップ」の意義 OS起動で動くマルウェアの怖さ (1/2)

マルウェアにはアンチウイルスプログラムで対抗すれば良いが、OS起動時に動作するマルウェアが現れたら、われわれはそれをどう検知すれば良いのだろうか。

[宮田健,ITmedia]

「レッドピルなし」にマトリックスを感じられるか

 突然ですが、約20年前に公開され、もはや古典として扱われるかもしれないSF映画の金字塔「マトリックス」をご覧になりましたでしょうか。作中で主人公のネオは、マトリックスの秘密を知るためには「レッドピル」(赤い錠剤:真実を知ることができる)を飲むべし、と選択を迫られる場面があります。その結果、自分がこれまでいた世界はマトリックスという仮想空間であることに気が付くのです。当時としては驚きの展開でした。

サイバー攻撃 画像はイメージ

 今から考えると、マトリックスというのはサーバなどで使われる「仮想環境」技術そのもの。仮想環境上で動くゲストOSは、それより上位の層にある「ハイパーバイザ」と呼ばれる制御プログラムに管理されています。動いているゲストOSはハイパーバイザのことを認識できず、あたかも物理的な環境で動いていると錯覚しているわけです。

 そうなるとおそらく、レッドピルはマトリックスという仮想空間における「脆弱性」だったのでしょう。エンジニア知識のある人とマトリックスを見ると、「キー・メーカーはどこにでも行けるからGoto命令」「オラクルは選択を迫るからwhich()」などと言い出すかもしれません。

連載:ITりてらしぃのすゝめ

「身近な話題を例にITリテラシーを高めていこう」がコンセプト。さらっと読めて人に話せる、すぐに身につく。分かりやすさ重視で解説。小ネタも扱います。

もしその画面が「仮想化内」だとしたら

 この映画のポイントは、マトリックス内にいる人は(脆弱性を突くなどしない限り)現実世界と区別がつかないということ。例えば、皆さんのPCで動いているWindows OSやmacOSは「仮想化環境ではなくちゃんと動いている」と言い切れますか。

 もちろん、Hyper-VやVMware、Parallels Desktopなど、各種仮想環境のアプリを動かしている人なら話は別です。しかし、目の前にあるOSが実は何らかのハイパーバイザの上で仮想化されたものであり、その仮想化の仕組みが意図したものではない「マルウェア」として混入していたら困ったことになるかもしれません。

 それを「ハイパーバイザマルウェア」と呼ぶとして、挙動としてはOSの上位層から動作をコントロールでき、通信を傍受したり、書き換えたりできるでしょう。もちろん、プロセス一覧を見てもダメで、マトリックス内にいる人と同様、仮想環境からは一切検知できません。

 これを解決するための高度な仕組みが実装されたとしても、レッドピルがない限り仮想環境からハイパーバイザーを感じることすらできませんので、無敵な攻撃手法といえるでしょう。

 現実では、まだそんな攻撃は発見されていません。しかし、2017年12月にカスペルスキーの分析チーム「GReAT」にインタビューしたときは「そのようなハイパーバイザマルウェアが既に存在しているのではないか」と予測していました。17年末に発表された2018年の予測にも「高度なUEFI攻撃」として記載されています。

  • 高度なUEFI攻撃

Unified Extensible Firmware Interface(UEFI)はアンチウイルスプログラムよりも先に起動する領域で、ここで動作するマルウェアは検知が困難です。検知回避のため、より多くのUEFIマルウェアが開発されると見られます。一方で、セキュリティベンダー各社による検知の能力が向上し、その意味でも2018年はUEFIへの攻撃が多く観測されることになるでしょう。

 この背景には、17年10月のGoogleエンジニアによる発表があります。OS起動時に存在する弱点が明らかになり、これを悪用すると、上記のようなことが想定できるというお話です。興味のある方はぜひ、下記記事もあわせてご覧ください。

「セキュアブート」の仕組みは既にあるが……

 ハイパーバイザーマルウェアが存在するとしたら、防ぐポイントは「起動時」しかありません

       1|2 次のページへ

Copyright © ITmedia, Inc. All Rights Reserved.