(57)【要約】      （修正有）【課題】ウェブサイトに挿入される悪性コードを効率よく検出できるようにする。【解決手段】悪性コード検出システム３００は、リンク情報を用いて、リンク情報に対応するウェブサイトに接続されるウェブサイト接続制御部３１０と、ウェブサイトに含まれるコードを通した実行行為が検出される場合、コード及びコードによってダウンロードされるファイルのうち少なくとも１つを悪性コードとして検出する悪性コード検出部３２０と、を備える。【選択図】図３
2012234540.tif 000002
【特許請求の範囲】
【請求項１】
リンク情報を用いて、前記リンク情報に対応するウェブサイトに接続するウェブサイト接続制御部と、
前記ウェブサイトに含まれるコードを介した実行が検出される場合、前記コード及び前記コードによってダウンロードされるファイルのうち少なくとも１つを悪性コードとして検出する悪性コード検出部と、
を備えることを特徴とする悪性コード検出システム。
【請求項２】
前記悪性コード検出部は、前記コードによって任意のサーバに接続され、前記ファイルが自動的にダウンロードされてインストールまたは実行される場合、前記実行を検出することを特徴とする請求項１に記載の悪性コード検出システム。
【請求項３】
前記ウェブサイト、前記コード、前記ファイル、及び前記サーバのうち少なくとも１つに関する情報を収集して記録する情報収集部をさらに備えることを特徴とする請求項２に記載の悪性コード検出システム。
【請求項４】
前記コード及び前記ファイルのうち少なくとも１つが悪性コードとして検出される場合、前記記録された少なくとも１つに関する情報を管理者に提供する情報提供部をさらに備えることを特徴とする請求項３に記載の悪性コード検出システム。
【請求項５】
リンク情報を用いて、前記リンク情報に対応するウェブサイトに接続し、
前記ウェブサイトに含まれるコードを介した実行が検出される場合、前記コード及び前記コードによってダウンロードされるファイルのうち少なくとも１つを悪性コードとして検出することを特徴とする悪性コード検出方法。
【請求項６】
前記コード及び前記コードによってダウンロードされるファイルのうち少なくとも１つを悪性コードとして検出することは、前記コードによって任意のサーバに接続され、前記ファイルが自動にダウンロードされてインストールまたは実行される場合、前記実行を検出することを特徴とする請求項５に記載の悪性コード検出方法。
【請求項７】
前記ウェブサイト、前記コード、前記ファイル、及び前記サーバのうち少なくとも１つに関する情報を収集して記録することをさらに含むことを特徴とする請求項６に記載の悪性コード検出方法。
【請求項８】
前記コード及び前記ファイルのうち少なくとも１つが悪性コードとして検出される場合、前記記録された少なくとも１つに関する情報を管理者に提供することをさらに含むことを特徴とする請求項７に記載の悪性コード検出方法。
【請求項９】
請求項５から請求項８のいずれか１項の方法を行うプログラムを記録したコンピュータで読み出し可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、悪性コード検出システム及び悪性コード検出方法に関する。
【背景技術】
【０００２】
悪性コードとは、ユーザの意思または／および利益に反してシステムを破壊したり、または情報を流出させたりするなど、悪意的な活動を行うように意図的に作成されたソフトウェアのことを指す。代表的な悪性コードの感染経路には、インターネットで容易に入手できる各種の無料ソフトウェアによるものがある。さらに、ファイル共有プログラムの場合、該当のプログラムインストールのうちに悪性コードが共にインストールされることがある。このようなプログラムは、既に長期間インターネット上に提供され、コンピュータのワクチンプログラムによって検出される場合が多い。
【０００３】
しかし、このような感染経路の他にウェブサイトに悪性コードが挿入される場合もある。図１は、従来のウェブサイトを介した悪性コードの感染経路の一例を示す構成図である。図１は、ユーザ端末１１０、ウェブサイト１２０、ウェブサーバ１３０、及び攻撃因子サーバ１４０を示している。
【０００４】
ユーザが、ユーザ端末１１０によってウェブサイト１２０を訪問することをリクエストした場合、ウェブサーバ１３０は、ユーザ端末１１０にウェブサイト１２０を提供してもよい。ここで、ユーザが訪問したウェブサイト１２０がセキュリティに弱く、攻撃因子の悪性コードが隠されていた場合、ユーザが単にウェブサイト１２０の特定ページを訪問するだけで特定ページに隠されている悪性コードが実行されてしまう。そして、悪性コードリンク１５０を介してユーザ端末１１０が攻撃因子サーバ１４０にアクセスされ、攻撃因子サーバ１４０から悪性プログラム１６０をダウンロードしてインストールされる。従来では、このような悪性コードのインストール及び実行を予め検出することができないのが現状であった。
【０００５】
このような攻撃コードをエクスプロイト（ｅｘｐｌｏｉｔ）といい、ジャバスクリプト（ＪａｖａＳｃｒｉｐｔ（登録商標））で作成される場合が多く、コードの乱読化によってコードの読み出しを困難にする場合が多い。さらに、ユーザが該当ページに訪問する度に動的に変更される特徴も有する場合がある。
【０００６】
このような攻撃コードは、コンピュータワクチンプログラムで検出するためのパターン化作業を困難にし、特に、動的に自動変更されるコードはワクチンプログラムで検出できない場合が多い。
【０００７】
このような攻撃コードは、オペレーティングシステムやアクティブエックス（ＡｃｔｉｖｅＸ）、ウェブプラグイン（フラッシュなど）モジュールの弱点を用いてセキュリティパッチの発表されていない新規の弱点を用いる攻撃コード（ゼロデイエクスプロイト（Ｚｅｒｏ−Ｄａｙ−Ｅｘｐｌｏｉｔ））へ容易に変更できるため深刻な問題を誘発する。
【０００８】
本発明では、悪性コードを効率よく検出可能なシステム及び悪性コードを効率良く検出可能な方法が提案される。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】韓国公開特許第２００９−００７８６９１号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
本発明の目的は、ユーザ端末と類似の動作をする環境エミュレータを構成してウェブサイトに接続し、プログラムの実行行為の有無を確認して攻撃コードを検出する悪性コード検出システム及び悪性コード検出方法を提供する。
【００１１】
本発明の他の目的は、悪性コードのパターンに応じて、悪性コードを検出することなく、悪性コードによって実行される行為に応じて悪性コードを検出することで、コードの乱読化によってコードが読み難い悪性コードや動的に自動変更される悪性コードも容易に検出する悪性コード検出システム及び悪性コード検出方法を提供する。
【課題を解決するための手段】
【００１２】
本発明の一実施形態に係る悪性コード検出システムは、リンク情報を用いてリンク情報に対応するウェブサイトに接続するウェブサイト接続制御部と、ウェブサイトに含まれたコードを介した実行が検出される場合、コード及びコードによってダウンロードされるファイルのうち少なくとも１つを悪性コードとして検出する悪性コード検出部と、を備えることを特徴とする。
【００１３】
悪性コード検出部は、コードによって任意のサーバに接続され、ファイルが自動にダウンロードされてインストールまたは実行される場合、実行行為を検出してもよい。
【００１４】
ウェブサイト、コード、ファイル、及びサーバのうち少なくとも１つに関する情報を収集して記録する情報収集部をさらに備えてもよい。
【００１５】
コード及びファイルのうち少なくとも１つが悪性コードとして検出される場合、記録された少なくとも１つに関する情報を管理者に提供する情報提供部をさらに備えてもよい。
【００１６】
本発明の一実施形態に係る悪性コード検出方法は、リンク情報を用いてリンク情報に対応するウェブサイトに接続するステップと、ウェブサイトに含まれたコードを通した実行行為が検出される場合、コード及びコードによってダウンロードされるファイルのうち少なくとも１つを悪性コードとして検出するステップとを含むことを特徴とする。
【発明の効果】
【００１７】
本発明によると、ユーザ端末と類似の動作をする環境エミュレータを構成してウェブサイトに接続し、プログラムの実行の有無を確認して攻撃コードを検出することが可能となる。
【００１８】
本発明によると、悪性コードのパターンに応じて悪性コードを検出することなく、悪性コードによって実行される行為に応じて悪性コードを検出することで、コードの乱読化によってコードが読み難い悪性コードや動的に自動変更される悪性コードも検出することが可能となる。
【図面の簡単な説明】
【００１９】
【図１】従来に係るウェブサイトを介する悪性コード感染の経路の一例を示す構成図である。
【図２】本発明の一実施形態に係るウェブサイトを介して悪性コードを検出する一例を示す構成図である。
【図３】本発明の一実施形態に係る悪性コード検出システムの内部構成を示すブロック図である。
【図４】本発明の一実施形態に係る悪性コード検出方法を示すフローチャートである。
【図５】本発明の一実施形態に係る悪性コード検出システムがエミュレータによって収集した情報の一例を示す図である。
【発明を実施するための形態】
【００２０】
以下、本発明の実施形態を添付の図面を参照しながら詳細に説明する。
【００２１】
図２は、本発明の一実施形態に係るウェブサイトを介した悪性コードを検出する一例を示す構成図である。図２は、悪性コード検出システム２１０、ウェブサイト２２０、ウェブサーバ２３０、及び攻撃因子サーバ２４０を示す。
【００２２】
まず、悪性コード検出システム２１０は、ユーザ端末と同一または類似の動作のエミュレーションを行う環境エミュレータを備えてもよい。ここで、エミュレータは、いずれのハードウェアやソフトウェアの機能を異なる種類のハードウェアやソフトウェアによりエミュレート（模倣）して実現するための装置やプログラムであってもよい。また、悪性コード検出システム２１０は、ウェブサーバ２３０を介してウェブサイト２２０にアクセスするためのユーザ端末の機能をエミュレートして実現した装置またはプログラムであってもよい。すなわち、悪性コード検出システム２１０は、ウェブサイト２２０にアクセスするためにユーザ端末の機能をエミュレートして構成されたエミュレータを備えてもよい。ここで、悪性コード検出システム２１０は、ＵＲＬのようなリンク情報を用いてウェブサイト２２０にアクセスしてもよい。
【００２３】
悪性コード検出システム２１０は、このようなエミュレータを用いてウェブサーバ２３０を介してウェブサイト２２０に接続される。例えば、該当ウェブサイト２２０に悪性コードが含まれていることにより、悪性コードリンク２５０を介して攻撃因子サーバ２４０に接続され、悪性プログラム２６０などのダウンロードと実行が行われると、悪性コード検出システム２１０は、接続されたウェブサイト２２０に関する情報、悪性コードリンク２５０に関する情報、悪性プログラム２６０に関する情報などを取得する。このように、悪性コード検出システム２１０は、取得された情報を分析して悪性コードの感染を検出できるだけではなく、このような悪性コードの感染に関する情報を管理者に通知することで、管理者が該当ウェブサイト２２０に悪性コードが隠されていることを検出できる。
【００２４】
図３は、本発明の一実施形態に係る悪性コード検出システムの内部構成を示すブロック図である。本実施形態に係る悪性コード検出システム３００は、図２に示した悪性コード検出システム２１０に対応していてもよく、ウェブサイト接続制御部３１０及び悪性コード検出部３２０を備えてもよい。また、悪性コード検出システム３００は、必要に応じて図３に示した情報収集部３３０及び情報提供部３４０をさらに備えてもよい。
【００２５】
ウェブサイト接続制御部３１０は、リンク情報を用いてそのリンク情報に対応するウェブサイトに接続する。ここで、リンク情報はウェブサイトのＵＲＬのように該当ウェブサイトを識別及び接続するための情報を含んでもよい。
【００２６】
悪性コード検出部３２０は、ウェブサイトに含まれたコードを介した実行（ｅｘｅｃｕｔｉｏｎ）が検出される場合、コード及びコードによってダウンロードされるファイルのうち少なくとも１つを悪性コードとして検出する。すなわち、上述したように、ウェブ上における攻撃行為は、ユーザ端末に悪性コードをインストールするための実行を誘発する。したがって、悪性コード検出部３２０は、データとしての悪性コードのパターンを参照して悪性コードを検出する必要はなく、悪性コードの実行による振る舞い（ｂｅｈａｖｉｏｒ）を検出して該当コードやコードによってダウンロードされるファイルが悪性コードであることを検出する。ここに「コードを介した実行（ｅｘｅｃｕｔｉｏｎ）」とは、そのコードの実行あるいは、そのコードから直接的または間接的に呼び出されたコードの実行などを指す。例えば、悪性コード検出部３２０は、コードの実行によって任意のサーバに接続され、ファイルが自動的にダウンロードされてそのファイルがインストールされる場合、またはそのファイルに含まれるコードが呼び出されて実行される場合、その実行を検出してもよい。
【００２７】
情報収集部３３０は、ウェブサイト、コード、ファイル、及びサーバのうち少なくとも１つに関する情報を収集して記録してもよい。例えば、情報収集部３３０は、ウェブサイトのＵＲＬ、コードそのものに関する情報、ファイル名、ファイルがダウンロードされ、インストールされた経路、またはサーバのＩＰアドレスなどの情報を収集して記録してもよい。
【００２８】
情報提供部３４０は、コード及びファイルのうち少なくとも１つが悪性コードとして検出された場合、記録された少なくとも１つに関する情報を管理者に提供する。すなわち、情報提供部３４０は、悪性コードが検出されたことを管理者に通知すると同時に、悪性コードに関連するウェブサイト、コード、ファイル、及びサーバのうち少なくとも１つに関する情報を管理者に通知することによって管理者が悪性コードに対応できるようにする。
【００２９】
図４は、本発明の一実施形態に係る悪性コード検出方法を示すフローチャートである。本実施形態に係る悪性コード検出方法は、図３に示した悪性コード検出システム３００によって行われてもよい。図４では、悪性コード検出システム３００による各工程の悪性コード検出方法を説明するフローチャートである。
【００３０】
図４に示すように、まず、ステップＳ４１０において、悪性コード検出システム３００は、リンク情報を用いてリンク情報に対応するウェブサイトに接続する。ここで、リンク情報は、ウェブサイトのＵＲＬのように該当ウェブサイトを識別及び接続するための情報を含んでもよい。
【００３１】
次に、ステップＳ４２０において、悪性コード検出システム３００はウェブサイトに含まれたコードを介した実行（ｅｘｅｃｕｔｉｏｎ）が検出された場合、コード及びコードによってダウンロードされるファイルのうち少なくとも１つを悪性コードとして検出する。すなわち、上述したウェブ上における攻撃行為は、ユーザの端末に悪性コードをインストールするためのコードの実行を誘発する。したがって、悪性コード検出システム３００は、データとしての悪性コードのパターンを用いて悪性コードを検出することなく、悪性コードの実行による振る舞いを検出して該当コードやコードによってダウンロードされるファイルが悪性コードであることを検出する。例えば、悪性コード検出システム３００は、コードによって任意のサーバに接続され、ファイルが自動的にダウンロードされてインストールまたは実行される場合に、その実行を検出してもよい。
【００３２】
次に、ステップＳ４３０において、悪性コード検出システム３００は、ウェブサイト、コード、ファイル、及びサーバのうち少なくとも１つに関する情報を収集して記録してもよい。例えば、悪性コード検出システム３００は、ウェブサイトのＵＲＬ、コードそのものに関する情報、ファイル名、ファイルがダウンロードされるかインストールされた経路、または、サーバのＩＰアドレスなどの情報を収集して記録してもよい。
【００３３】
次に、ステップＳ４４０において、悪性コード検出システム３００は、コード及びファイルのうち少なくとも１つが悪性コードとして検出される場合、記録された少なくとも１つに関する情報を管理者に提供する。すなわち、悪性コード検出システム３００は、悪性コードが検出されたことを管理者に通知すると同時に、悪性コードに関連するウェブサイト、コード、ファイル、及びサーバのうち少なくとも１つに関する情報を管理者に通知することによって、管理者が悪性コードに対応できるようにする。
【００３４】
図３及び図４において、省略されたウェブサイト２２０、ウェブサーバ２３０、及び攻撃因子サーバ２４０などの内容は、必要に応じて図２などを参照することにより理解される。
【００３５】
図５は、本発明の一実施形態に係る悪性コード検出システムがエミュレータによって収集した情報の一例を示す図である。
【００３６】
表５００は、図２〜図４を参照して説明した悪性コード検出システム２１０または３００で収集可能な情報を表している。まず、「Ｔａｒｇｅｔ  ＵＲＬ」は、悪性コード検出システム２１０または３００が接続され、悪性コードの有無を分析しようとするウェブサイトのＵＲＬを意味する。また、「Ａｎａｌｙｓｉｓ  Ｄａｔｅ  Ｔｉｍｅ」は分析が行われた日付と時刻を意味し、「Ｔｏｐ  Ｌｅｖｅｌ」は危険度を表すレベルの最高レベルを意味する。
【００３７】
「Ｔｙｐｅ  Ｃｏｄｅ」は記録された情報の種類を表し、「Ｒｅｓｕｌｔ  Ｃｏｄｅ」は記録された情報に悪性コードが含まれる可能性を表す。また、「Ｒｉｓｋ  Ｌｅｖｅｌ」は記録された情報の危険度を表し、「Ｉｎｆｏ」は実際に記録された情報がどのような情報であるかを表す。「Ｔｙｐｅ  Ｃｏｄｅ」において「ＣＤＲ（Ｃｒｏｓｓ−Ｄｏｍａｉｎ−Ｒｅｑｕｅｓｔ）」は互いに異なるドメイン間のリクエスト発生を表す。例えば、「ａａａ．ｃｏｍ」サイトを訪問したとき、「ｂｂｂ．ｃｏｍ」のデータを受信する状況が発生する場合、ＣＤＲが発生することがある。「ＦＩＬＥ」は、記録された情報による行為をファイルがダウンロードされる行為として表し、「ＥＸＥＣＵＴＩＯＮ」は、記録された情報による行為がファイル、または関連プログラムが実行される行為を表す。また、「Ｒｅｓｕｌｔ  Ｃｏｄｅ」において「Ｍａｌｃｏｄｅ  Ｄｉｓｔｒｉｂｕｔｉｏｎ  Ｐｏｓｓｉｂｉｌｉｔｙ」は記録された情報が悪性コードの配布に関連する可能性が存在することを表す。
【００３８】
ここで、表５００を参照すると、ユーザがウェブサイト「ｗｗｗ．ａａａ．ｋｒ」を訪問する場合、「ｗｗｗ．ｂｂｂ．ｃｏｍ」に関連して悪性コードが含まれた「ｓｋｙ．ｈｔｍｌ」及び「ｋｏ１．ｈｔｍ」のような経路がウェブサイト「ｗｗｗ．ａａａ．ｋｒ」に含まれ、このような悪性コードが「ｗｗｗ．ｂｂｂ．ｃｏｍ．ｃｎ」に対応する攻撃因子サーバから「ｓ．ｅｘｅ」ファイルを自動的にダウンロードして該当するプログラムを実行またはインストールする実行が行われることが分かる。
【００３９】
すなわち、悪性コード検出システム２１０または３００は、特定ウェブサイトに接続してウェブサイトに含まれたコードがファイルをダウンロードしてインストールまたはダウンロードされたファイルに含まれるコードが実行されるように制御するか否かにより、悪性コードを検出する。
【００４０】
このように、本発明の実施形態によると、ユーザ端末と同一または類似の動作をエミュレートする環境エミュレータを構成してウェブサイトに接続し、プログラムの実行の有無を確認して攻撃コードを検出することができ、データとしての悪性コードのパターンに応じて悪性コードを検出することなく、悪性コードによって実行される行為に応じて悪性コードを検出することで、コード乱読化によってコードが読み難い悪性コードや動的に自動変更される悪性コードも容易に検出することができる。また、ワクチンプログラムなどで検出できないゼロデイエクスプロイト（Ｚｅｒｏ−Ｄａｙ−Ｅｘｐｌｏｉｔ）のような悪性コードの検出を可能にする。
【００４１】
本発明の実施形態に係る悪性コード検出方法は、多様なコンピュータ手段によって行うことができるプログラム命令形態で実現され、コンピュータ読み出し可能媒体に記録してもよい。記録媒体は、プログラム命令、データファイル、データ構造などを単独または組み合わせたものを含んでもよい。記録媒体及びプログラム命令は、本発明の目的のために特別に設計して構成されたものでもよく、コンピュータソフトウェア分野の技術を有する当業者にとって公知のものであり使用可能なものであってもよい。コンピュータ読取可能な記録媒体の例としては、ハードディスク、フロッピー（登録商標）ディスク及び磁気テープのような磁気媒体、ＣＤ−ＲＯＭ、ＤＶＤのような光記録媒体、フロプティカルディスクのような磁気−光媒体、及びＲＯＭ、ＲＡＭ、フラッシュメモリなどのようなプログラム命令を保存して実行するように特別に構成されたハードウェア装置を含んでもよい。プログラム命令の例としては、コンパイラによって生成されるような機械語コードだけでなく、インタプリタなどを用いてコンピュータによって実行され得る高級言語コードを含む。上述のハードウェア装置は、本発明の動作を行うために１つ以上のソフトウェアモジュールとして作動するように構成してもよく、その逆も同様である。
【００４２】
上述したように本発明を限定された実施形態と図面によって説明したが、本発明は、上記の実施形態に限定されることなく、本発明が属する分野における通常の知識を有する者であれば、このような実施形態から様々に修正及び変形が可能である。
【００４３】
したがって、本発明の範囲は、開示された実施形態に限定して定められるものではなく、特許請求の範囲及び特許請求の範囲と均等なものなどによって定められるものである。
【符号の説明】
【００４４】
２１０      悪性コード検出システム
２２０      ウェブサイト
２３０      ウェブサーバ
２４０      攻撃因子サーバ
２５０      悪性コードリンク
２６０      悪性プログラム
【図１】
2012234540.tif 000003
【図２】
2012234540.tif 000004
【図３】
2012234540.tif 000005
【図４】
2012234540.tif 000006
【図５】
2012234540.tif 000007