インフラセキュリティの処方箋

第44回2018年3月~修正できない脆弱性対応、繰り返される歴史、そして「あたりまえ」実践すること

今月は、時折見られる「開発者と連絡を取れず、修正できない(修正を期待できない)脆弱性⁠⁠、繰り返される「攻撃」の歴史、そして「あたりまえ」という3つのトピックについて解説します。

「連絡不能案件」扱いされるソフトウェアの脆弱性対処

通常、ソフトウェアに脆弱性がある場合、当該ソフトウェアの開発者に連絡が行き、開発者による脆弱性修正がなされるのが通例と考える方が多いかと思います。実際、情報セキュリティ早期警戒パートナーシップの枠組では、IPAが受付機関となり、JPCERT/CCが調整機関となって、開発者との連絡を取り、脆弱性情報を提供した上で、脆弱性修正および修正版の公開を推進します。

しかし、脆弱性があるソフトウェア開発者との連絡がつかない場合には、このような営みを行うことが非常に困難になります。通常の手段では連絡を取れない開発者の一覧は、JVNで公開されています。

連絡不能開発者一覧
https://jvn.jp/reply/

ソフトウェア開発者との連絡を取れない場合、脆弱性はどのように公開されるのか

ソフトウェア開発者との連絡を取れないような場合、一定の条件を満たすことの確認を経て、当該ソフトウェアの脆弱性は公開されます。

以下は、そのような状況に置かれたソフトウェアの脆弱性の1つです。

JVN#87226910 WebProxy におけるディレクトリトラバーサルの脆弱性
https://jvn.jp/jp/JVN87226910/

一定の条件とは、以下の4つになります。

  1. 当該案件が調整不能であること
  2. 脆弱性の存在が認められると判断できること
  3. IPAが公表しない限り、当該脆弱性情報を知り得ない製品利用者がいるおそれがあること
  4. 製品開発者や製品利用者の状況等を総合的に勘案して、公表が適当でないと判断する理由・事情がないこと

ようは「ソフトウェアの開発者と連絡を取ることができないが、利用者がいるソフトウェアに脆弱性があり、ソフトウェアの利用者に対して当該脆弱性を公開したほうがよいと判断した場合」に、⁠連絡不能」案件として当該脆弱性は公開されます。

JVNでも、のような形で「連絡不能」というラベルを付けられた形で脆弱性が公開されます。

 連絡不能案件を含む脆弱性一覧
図 連絡不能案件を含む脆弱性一覧

「連絡不能案件」にあたる脆弱性を持つソフトウェアのユーザができる対処

基本的には、そのようなソフトウェアの利用を「中止する」というのが理想です。

オープンソースなソフトウェアであり、自身で当該脆弱性を修正できるという場合には、修正の上利用すればいいという向きもありますが、バイナリのみ配布されており、そのような対処を取るのが困難なソフトウェアもあるため、基本は「利用を中止する」方向で考えるのが妥当といえます。

攻撃の歴史を学ぼう~歴史は繰り返す

筆者は20年近く、攻撃に使われる手法を見てきています。これは別に、筆者が攻撃を仕掛けようという意図を持っているわけではなく、実際に発生した攻撃に対処する必要がある、もしくは攻撃手法の調査を行い、予防に役立てる必要があるためです。

昨今は、個別の組織を狙う攻撃が発生しているということも、多くみられるようになっていますが、そうでない(不特定多数向けの)攻撃は、手法に流行り廃りが見られます。

2018年3月時点の状況~メールが攻撃に使われることが圧倒的に多い

現時点でもドライブバイダウンロードが根絶されたとは言えませんが、正規サイトが改ざんされて仕掛けられるタイプのドライブバイダウンロードよりは、不審なURLにそのような仕掛けがなされていることのほうが圧倒的に多いといえます。

そして、そのようなURLへの誘導は、多くの場合はメールによってなされます。

その他、BEC(ビジネスメール詐欺)も、その名の通り、メールによってなされます。日本でも、日本航空(JAL)がBECの被害に遭っています。

JAL、詐欺被害3億8000万円 777リース料や貨物委託料送金
http://www.aviationwire.jp/archives/136855

メールが攻撃に使われる理由ですが、攻撃のためのコストを低く抑えられるという点が大きいと、筆者は考えています。

Exploit Kitで流行ったドライブバイ・ダウンロード攻撃~最近は「?」状態に

ドライブバイ・ダウンロード攻撃は、Exploit Kitという形で「使いやすくパッケージングされた」攻撃用ツールが配布されたこともあり、一時期猛威を振るった攻撃です。しかし、Exploit Kitの制作者が逮捕されたり、主流Exploit Kitの活動停止といったイベントが相次いだ後に、その後を継ぐような強力なExploit Kitは確認されていません。

2016年を振り返る:相次ぐ主流エクスプロイトキットの活動停止、減少傾向は続くか
http://blog.trendmicro.co.jp/archives/14468

しかしこの兆候もあくまで「今はこう」というだけに過ぎないので、またいずれ流行ることを見越して対応を行えるようにしておくのがよいといえます。

繰り返す歴史の中にも新たな攻撃手法~Meltdown/Spectreが開いた新たな境地

「歴史は繰り返す」と書きましたが、従前と類似の攻撃手法が間をおいて使われるだけではなく、ときに「まったく新しい」攻撃手法が公開されることがあります。

MeltdownやSpectreは、CPUの投機実行をはじめとする機構に着目した脆弱性の攻略をするための手法でした。この攻撃は、サイドチャネル攻撃と呼ばれる攻撃手法の一つとされているのですが、このような脆弱性を利用可能な場合、攻撃側の攻撃バリエーションを拡大する可能性があります。

実際、このような形の脆弱性が存在することを重要視してか、Microsoftは新たな報奨金プログラムを開始しています。

投機的実行に関する報奨金プログラムの開始
https://blogs.technet.microsoft.com/jpsecurity/2018/03/23/speculative-execution-bounty-launch/

最後に~「あたりまえ」の行動が被害を最小限にとどめる

本稿をもって、本連載はお休みとなりますが、最後に述べておきたいのは「あたりまえ」の行動が、攻撃によってもたらされる被害を最小化する、ということです。

外から見える脆弱性を最小化する

「外から見える脆弱性」とは、たとえばポートスキャンなどで見える「脆弱かもしれないサービスの提供ポート」を経由してトリガできる脆弱性のことを指します。

一例として、WannaCryなどは、MS17-010の脆弱性を突いて、感染拡大を試みますし、この際にはTCP445番ポートを叩きにきます。

このような(脆弱かもしれない)ポートを、ファイアウォールを用いて閉じておくなどするだけでも、だいぶ攻撃によってもたらされる被害を未然に防ぐ効果があります。Windowsクライアントを直接インターネットに接続しないのも、効果があるといえます。

入った不正プログラムを早期検知できるようにする

これは、ウイルススキャナをはじめとする、セキュリティソフトウェアをきちんと使おうということを言っています。入れただけで更新してないのは論外ですが、きちんと更新しておけば、ありきたりの攻撃は検知・駆除してくれます。

そもそも付け入るスキを与えない

これは、脆弱性修正が公開されたら速やかに適用する、ということを言っています。本連載の初回でも、脆弱性修正に関する話を述べていますが、システム的に付け入るスキを与えないためには脆弱性修正は非常に有効です。

最後に

筆者は、システムインフラストラクチャを支えるセキュリティを実現するための鍵の1つは、どこまで「できてあたりまえ」を徹底できるかにかかっていると考えてます。

本連載は、そのときそのときの「あたりまえ」を、私なりに解釈して読者の皆さんにお伝えしようとしてきました。その時その時は結構悩みながら書き上げてきたものは、振り返るといずれも「あたりまえ」をきちんと体現できていると感じています。

繰り返しになりますが、現在の「あたりまえ」は以下の3つに集約されると考えています。

  • 使うもの、公開するものを最小化する
  • セキュリティソフトウェアを導入・有効化する
  • 脆弱性修正を行う

これらを実践するためには、日々の情報収集と中心となって対応する人の技量維持が欠かせません。⁠あたりまえ」の実践を継続するのは非常に大変だとは思います。AIなどの新技術を取り入れて、開発や運用が高度化しても、高度化した開発や運用を支えるのは、最終的には人であり、適切な情報をもって、技量維持を行っている人がそれらの営みを支えることで、開発や運用をより高いレベルで実現可能となります。

本連載で述べてきたことが、そのような営みのちょっとした助けになることが、筆者にとっての喜びです。

おすすめ記事

記事・ニュース一覧