NVIDIA のビデオ・ドライバの脆弱性を突き止める

avatar

 2016.10.06  Japanブログ編集部

今年の3月、私は Tripwire の 脆弱性調査チーム(VERT:Vulnerability and Exposure Research Team)のメンバーに会うためにジョージア州アルファレッタに向かいました。日曜日の移動は税関、レンタカー、ホテルなどの問題で何かと厄介でしたが、これは実に価値のある滞在となりました。

この出張の少し前に、「Tripwire IP360 でスキャンを実行するたびノートPC がクラッシュする」との訴えが、あるお客様からありました。システムへの負担が小さいという当社製品の性質から考えて、新しいコンテンツに何か誤りがあったか、あるいは当社の製品が図らずも新しい脆弱性を発見したことが考えられました。

スキャン時の相互作用の問題は出荷前にトリプルチェックされることと、IP360で新たな脆弱性を検出してきたこれまでの歴史から、やはり新しい脆弱性の出現が最も濃厚な線であると睨み、サポートチームにそのお客様からのデータを収集するよう手配しました。そんなわけで、問題のノートPC が、私の到着の前日に当社のアルファレッタオフィスに送られて来ることになったのです。

私たちはこのユニークなプロジェクトを開始することになりました。つまり、趣味と仕事が100%合致するという滅多にない状況が整ったのです。私たちは皆、少年少女探偵団が世界の壮大なミステリを解くような気持ちになっていました。そしてパケットごとにスキャン手順を進めていきながら、クラッシュを連発させている問題に取り組みました。

そしてすぐに、リモートデスクトップが犯人であることを突き止めましたが、ここである疑問が浮上しました。「RDP を実行中のすべてのシステムでこの問題が起きてはいないのはなぜなのか?」

チームの数人は、概念実証用のpython スクリプトを準備し、試験の効率化を図りました。一方、他の数人はメモリーダンプを解析しました。ノート PC にインストールされているソフトウェアおよびメモリーダンプから得たデータなどを調べると、ビデオ・ドライバが怪しいことがわかりました。そのドライバをアンインストールしてリブートしてみると・・・なんと、ブルースクリーンが回避できました!そして、ドライバを再びインストールすると、また同じ問題が発生しました。

私たちは、Microsoft またはビデオカードの製造者 NVIDIA のどちらに連絡をすべきかについて議論しました。そして結局、ピラミッドの下から上に向かって対峙していくことに決め、2016年3月14日に Microsoft に接触しました。それからの48時間のあいだに複数回メールでやり取りを行った後、Microsoftの調査結果を待つことになりました。

2016年4月7日、再度 Microsoftに連絡すると、同社では問題が再現できなかったため、ドライバ側の問題であると結論付けたことを伝えられました。また、ビデオ・ドライバの提供会社にこの件を持ち込むことを提案されました。その日のうちに、我々は NVIDIAにこの問題に関する情報を送信しました。

4月いっぱい NVIDIAとのやり取りが続いた一方で、我々は Lenovoの製品セキュリティインシデント対策チーム(PSIRT)にも詳細情報を提供しました。5月には返事がもらえず、6月にやっと NVIDIAから連絡を受けました。彼らは連絡が遅くなったことを詫び、この問題に対する CVE(CVE-2016-4959)を提供するとともに、近々フィックスの公開を予定していることを告げました。

6月20日に、TripwireのVERTはフィックスに向けたタイムラインを受け取り、NVIDIAと協力のうえ責任を持ってこの問題を公開することに合意しました。公開に関する NVIDIAのアドバイザリはこちらで参照できます。

最後に、(本来の目的ではないものの)メジャーな製品に潜む新たな脆弱性を発見することができるこの製品に10年間も携わってこれたことは、非常に素晴らしいことだと思っています。世の中には対応の悪いセキュリティチームも存在しますが、NVIDIAの迅速な対応は素晴らしく、この件に関して協力できて良かったと思います。

Title image courtesy of ShutterStock

元の記事はこちらからご覧いただけます。

ギャップにご用心サーバー脅威対応までの感覚

RECOMMEND関連記事


RECENT POST「脆弱性管理」の最新記事


この記事が気に入ったらいいねしよう!