IoC(Indicator of Compromise)とは?仕組みやメリット、注意点について徹底解説|サイバーセキュリティ.com

IoC(Indicator of Compromise)とは?仕組みやメリット、注意点について徹底解説



サイバー攻撃は日々進化を続けており、もはや完全に防御することは難しくなっています。しかし新しい手法の攻撃ではなく、既知のサイバー攻撃については、その侵害の痕跡を分析することで、ある程度の対策を取ることは可能です。例えば既知のマルウェアの検出などです。

このような既知の攻撃の痕跡を集めてデータベースとして利用できるようにしたものが「IoC(Indicator of Compromise)」です。自社がサイバー攻撃の被害に遭っても、IoCを活用することで、出来るだけ早くサイバー攻撃を検知して影響範囲を狭くすることが可能です。

今回はIoCの仕組みやメリット、注意点などについて徹底解説します。

IoC(Indicator of Compromise)とは

IoC(Indicator of Compromise)は日本語で「侵害指標」「痕跡情報」「セキュリティ侵害インジケーター」などと呼ばれます。サイバー攻撃を受けた時に、その痕跡となる様々な指標のことです。このIoCは、様々なフォーマットで保存されてデータベースとして活用されています。

自社がサイバー攻撃を受けた場合、IoCに記録されている痕跡と、自社が攻撃を受けた時に残された痕跡を照合することで、既知の攻撃として認識して、攻撃による影響範囲を最小化させることが可能です。IoCはただ単純に侵害の痕跡として記録されるのではなく、既知の攻撃の検出手段として使われることで効果を発揮します。

IoC(Indicator of Compromise)の仕組み

IoCとして記録される侵害指標の例は以下のようなものです。

  • 攻撃に使われたIPアドレスやドメイン
  • マルウェアのMD5ハッシュやファイル名
  • レジストリやシステムファイルの不審な変更
  • 連続したログインの失敗や存在しないアカウントへのログイン試行
  • 攻撃に使用されるプロセス

サイバー攻撃を受けた時に、このような情報を入手してIoCとして保存します。このようにIoCの侵害指標として記述される各項目のことを「Indicator Terms」といいます。

IoCの記録には様々なフォーマットがあります。例えばXML形式のフォーマットとしてはFireEye社の「OpenIOC」があります。同社はIoCのデータ管理と論理構造を操作するためのインターフェースを無償で提供しているツール「IOC Editor(https://www.fireeye.jp/current-threats/freeware/ioc-editor.html)」を公開しています。

またコンピュータをスキャンしてIoCを発見する「IoC Finder」も公開されています。このようなツールを使いコンピュータをスキャンして痕跡情報を発見することで、IoCとして保存されている既知の攻撃を受けた痕跡があるかどうか調査します。セキュリティ対策ソフトによるマルウェアのスキャンに似ていますが、IoCの調査はそれよりも範囲が広く、多くのサイバー攻撃の発見が可能です。

参照IOC Finder/FIREEYE

他のフォーマットとしては、XML形式ベースの「STIX」や、より軽量なJSONベースの「STIX 2.0」なども作成されています。また特定のフォーマットによらず、専門家による情報交換のコミュニティからもIoCを見つけることも可能です。

IoC(Indicator of Compromise)のメリット

IoCを活用することで、以下の2つのメリットが得られます。

他組織・企業と共有することで迅速な攻撃検知が可能になる

サイバー攻撃は世界中のあらゆるところで行われており、同時に大量の攻撃の痕跡がIoCとして記録されています。自社がサイバー攻撃を受けた時、攻撃の痕跡をIoCとして保存していれば、他社が同じサイバー攻撃を受けた際にも、IoCの情報と照合することで、迅速な攻撃の検知が可能となります。IoCを他の組織や企業と共有することで、サイバー攻撃の発生時に迅速に対応できるのです。

高リスクな脅威を識別し攻撃を防止できる

自社にとって未知なサイバー攻撃でも、IoCのデータベースに登録されているサイバー攻撃であれば、それが高リスクな脅威かどうか識別して防止させることが可能です。

IoC(Indicator of Compromise)の注意点

サイバー攻撃の侵害の痕跡発見に有益なIoCですが、以下の3点に注意が必要です。

短期間で進化する攻撃の検出は困難

IoCとして管理されている情報は、過去のサイバー攻撃における、攻撃の侵害指標です。短期間で進化するようなマルウェアの亜種などについては、もとのマルウェアとのハッシュ値が異なっているので、検出が困難です。また、ターゲットによって異なる活動を行うマルウェアやファイルレスのマルウェアなど、痕跡を変える攻撃や、痕跡を残さない攻撃もIoCによる検出は難しいでしょう。

膨大なIoCの中から有益情報を見つけることが難しい

すでにIoCにはかなり多くの痕跡情報が登録されています。そのため実際にサイバー攻撃を受けた際に、膨大なIoCから自社にとって有益な情報をピンポイントで見つけ出すのは困難です。

世界規模のコンピュータセキュリティの強化を目的としている討論会である「FIRST Conference」において、IoCのことを「干し草(hay)」と呼ぶ専門家がいたそうです。IoCのことを干し草の中から針を探すようなものだと皮肉した言い方ですが、IoCを効果的に使うには、IoCを使いこなせる専門家を活用したり、システムを構築したりするのに、膨大なコストが必要なことは無視できません。また自社でIoCを活用する時は、自社に関連のあるIoCに絞り込まなければなりせん。

IoC(Indicator of Compromise)単体ではなく他のセキュリティ対策を組み合わせると効果的

IoCは単体で活用するのではなく、他のセキュリティ対策と組みわせるとより効果的です。IoC自体は侵害の痕跡としての情報に過ぎません。コンピュータにセキュリティ対策ソフトを導入する、ネットワークにファイアウォールを設置する、アクセスログ分析のためのソフトウェアをインストールするなどの対策が不要になることはありません。

IoC(Indicator of Compromise)とIoA(Indicator of Attack)の違い

IoC(Indicator of Compromise)は侵害の発生後に、マルウェアのシグネチャや脆弱性、攻撃者のIPアドレスなどを「侵害の痕跡」として集められる情報です。このような情報は攻撃のたびに変わってしまう可能性があります。つまりコンピュータの保護に対しては「事後対応的」な性質を持ちます。

一方、IoA(Indicator of Attack)は今まさに攻撃が行われていようとしているか、あるいは攻撃の進行中であるかなどの、「攻撃の痕跡」としての情報です。これはサイバー攻撃のリアルタイムな情報であり、攻撃者による変更は困難です。つまりIoAはコンピュータの保護に対して「事前予防的」な性質を持ちます。

まとめ

サイバー攻撃は日進月歩で進化しており、自社が受けるサイバー攻撃が既知のものであるとは限りません。IoCは既知の攻撃の痕跡に過ぎず、新しく登場したマルウェアの亜種などに対して無力です。このことからIoCを活用した対策は、陳腐化しているという指摘もあります。セキュリティ対策としてIoCを活用する際には、このような問題点を認識して、未知の攻撃には効果が足りないことを認識する必要があります。

SNSでもご購読できます。