(57)【要約】      （修正有）【課題】従来よりも詳細にウイルスの感染経路をバックトレースできるようにしたウイルス侵入経路特定装置、ウイルス侵入経路特定方法およびプログラムを提供する。【解決手段】クライアント装置１０ａ、１０ｂのＣＰＵ１１は、それぞれ操作を監視して記憶装置１５に操作履歴を記憶させる。ＣＰＵ１１は、ウイルスを検出すると、記憶装置１５に記憶されている操作履歴からウイルスがクライアント装置１０ａ、１０ｂに最初に保存された日時を特定し、当該特定した日時に実行された操作の内容からウイルスの侵入経路を特定する。また、前記操作履歴からウイルスの侵入経路を特定できなかった場合は、ＣＰＵ１１は、サーバ装置２０の記憶装置２５に記憶されている操作履歴から、前記ウイルスの侵入経路を特定するよう依頼するためのリクエストをサーバ装置２０に対して送信する。【選択図】図１
2018185860.tif 000002
【特許請求の範囲】
【請求項１】
端末装置へのウイルスの侵入経路をバックトレースするウイルス侵入経路特定装置であって、
前記端末装置において実行された操作の履歴である操作履歴を記憶した操作履歴記憶手段と、
前記端末装置においてウイルスが検出されると、前記操作履歴記憶手段に記憶されている当該操作履歴から当該ウイルスが前記端末装置に最初に保存された日時を特定し、当該特定した日時に実行された操作の内容から前記ウイルスの侵入経路を特定する特定手段と
を有することを特徴とするウイルス侵入経路特定装置。
【請求項２】
前記ウイルス侵入経路特定装置が前記端末装置に設けられていることを特徴とする請求項１に記載のウイルス侵入経路特定装置。
【請求項３】
前記ウイルス侵入経路特定装置が前記端末装置に接続されたサーバ装置に設けられていることを特徴とする請求項１に記載のウイルス侵入経路特定装置。
【請求項４】
前記端末装置は、
ウイルスを検出するウイルス検出手段と、
前記ウイルス検出手段が検出したウイルスの侵入経路を特定するよう依頼するためのリクエストを前記サーバ装置に対して送信するリクエスト送信手段と
を有することを特徴とする請求項３に記載のウイルス侵入経路特定装置。
【請求項５】
前記ウイルス侵入経路特定装置が前記端末装置に設けられているとともに、前記端末装置に接続されたサーバ装置にも設けられており、前記端末装置に設けられた前記ウイルス侵入経路特定装置と、前記サーバ装置に設けられた前記ウイルス侵入経路特定装置とが連携して前記端末装置へのウイルスの侵入経路を特定することを特徴とする請求項１に記載のウイルス侵入経路特定装置。
【請求項６】
前記端末装置は、
前記端末装置の前記操作履歴記憶手段に記憶されている操作履歴をサーバ装置に記憶させるために転送し、転送した操作履歴のすべてまたは一部を削除する操作履歴管理手段と、
前記特定手段が、前記操作履歴記憶手段に記憶されている操作履歴からウイルスの侵入
経路を特定できなかったときに、前記サーバ装置に記憶されている操作履歴から前記ウイルスの侵入経路を特定するよう依頼するためのリクエストを前記サーバ装置に対して送信するリクエスト送信手段と
をさらに有することを特徴とする請求項５に記載のウイルス侵入経路特定装置。
【請求項７】
前記特定手段は、前記操作履歴を構成する各レコードに含まれている操作の内容が、ウイルスが侵入する際に実行される特定の操作内容かどうかを判定することで、ウイルスが前記端末装置に侵入した侵入口を特定することを特徴とする請求項１ないし６のいずれか１項に記載のウイルス侵入経路特定装置。
【請求項８】
前記特定手段は、ウイルスの保存に関与した子プロセスを呼び出した親プロセスについても前記操作履歴から検索することで、当該ウイルスの侵入経路を特定することを特徴とする請求項１ないし５のいずれか１項に記載のウイルス侵入経路特定装置。
【請求項９】
前記サーバ装置に設けられた前記操作履歴記憶手段には、前記端末装置に設けられた前記操作履歴記憶手段に記憶されている操作履歴の期間よりも長期間にわたる操作履歴が記憶されていることを特徴とする請求項５に記載のウイルス侵入経路特定装置。
【請求項１０】
前記サーバ装置に設けられた前記特定手段は、前記端末装置に設けられた前記特定手段が調査した期間よりもさらに過去の期間に取得された操作履歴について前記ウイルスの侵入経路を特定することを特徴とする請求項９に記載のウイルス侵入経路特定装置。
【請求項１１】
前記サーバ装置に設けられた前記操作履歴記憶手段は、複数の端末装置において取得された操作履歴を記憶しており、
前記サーバ装置に設けられた前記特定手段は、前記複数の端末装置のうちの１つの端末装置においてウイルスが見つかると、そのウイルスに関連したパス名またはプロセスの識別情報をもとに前記複数の端末装置の操作履歴を検索して、当該ウイルスの侵入経路を特定することを特徴とする請求項５または６に記載のウイルス侵入経路特定装置。
【請求項１２】
前記特定手段は、ウイルスが検知されたプロセスのプロセス識別情報に基づいて当該プロセスが起動してから当該ウイルスが検知されるまでに操作したファイルのパス名を前記操作履歴記憶手段から検索し、検索により発見されたパス名に基づいて前記ファイルを提供した端末装置を特定することを特徴とする請求項１ないし１１のいずれか１項に記載のウイルス侵入経路特定装置。
【請求項１３】
前記特定手段は、ウイルスが検知されたプロセスのプロセス識別情報に基づいて当該プロセスが起動してから当該ウイルスが検知されるまでに操作したファイルのパス名を前記操作履歴記憶手段から検索し、当該プロセスが起動してから当該ウイルスが検知されるまでに操作したファイルが発見されなかったときは、当該プロセスそれ自体をウイルスと認定することを特徴とする請求項１ないし１２のいずれか１項に記載のウイルス侵入経路特定装置。
【請求項１４】
前記特定手段は、ウイルスが検知されたプロセスのプロセス識別情報に基づいて当該プロセスの実行ファイルを作成した他のプロセスを特定し、当該他のプロセスがメーラーかどうかを判定し、当該メーラーが当該プロセスの実行ファイルを添付したメールを受信したことを示す操作履歴を特定し、当該操作履歴に基づいて当該メールの差出人を特定し、当該差出人が当該メールを転送したことを示す操作履歴を特定し、当該メールを転送した差出人が当該メールをさらに他の差出人が受信したことを示す操作履歴を特定し、当該操作履歴に基づいて当該ウイルスの侵入経路を特定することを特徴とする請求項５または６に記載のウイルス侵入経路特定装置。
【請求項１５】
前記特定手段は、ウイルスが検知されたプロセスのプロセス識別情報に基づいて当該プロセスが操作したファイルのパス名を特定し、当該ファイルのパス名に基づいて当該ファイルがリムーバブルデバイスに記憶されていたことを示す操作履歴を特定し、当該操作履歴から当該リムーバブルデバイスの識別情報を特定し、当該リムーバブルデバイスの識別情報から、当該リムーバブルデバイスを接続したことのある他の端末装置を特定し、当該他の端末装置の操作履歴から前記ウイルスの侵入経路を特定することを特徴とする請求項５または６に記載のウイルス侵入経路特定装置。
【請求項１６】
前記特定手段は、ウイルスが検知されたプロセスのプロセス識別情報に基づいて当該プロセスが起動してから当該ウイルスが検知されるまでに操作したファイルを特定し、複数のファイルが特定されたときに、当該複数のファイルに対して重みづけを実行することで、前記ウイルスの侵入経路に関連した１つのファイルを絞り込むことを特徴とする請求項１ないし１５のいずれか１項に記載のウイルス侵入経路特定装置。
【請求項１７】
前記重みづけは、前記ファイルが操作された日時、当該ファイルの実行結果、当該ファイルに対してウイルス検知を実行した結果、および、ユーザにより入力された情報のうちの少なくとも１つにしたがって実行されることを特徴とする請求項１６に記載のウイルス侵入経路特定装置。
【請求項１８】
前記特定手段は、前記操作履歴手段に記憶されている当該操作履歴から、前記ウイルスの拡散経路を特定することを特徴とする請求項１ないし１５のいずれか１項に記載のウイルス侵入経路特定装置。
【請求項１９】
端末装置へのウイルスの侵入経路をバックトレースするウイルス侵入経路特定方法であって、
前記端末装置において実行された操作の履歴である操作履歴を操作履歴記憶手段に記憶する操作履歴記憶工程と、
前記端末装置においてウイルスが検出されると、前記操作履歴記憶手段に記憶されている当該操作履歴から当該ウイルスが前記端末装置に最初に保存された日時を特定し、当該特定した日時に実行された操作の内容から前記ウイルスの侵入経路を特定する特定工程とを有することを特徴とするウイルス侵入経路特定方法。
【請求項２０】
端末装置へのウイルスの侵入経路をバックトレースするウイルス侵入経路特定処理をコンピュータに実行させるプログラムであって、
当該コンピュータに、
前記端末装置において実行された操作の履歴である操作履歴を記憶した操作履歴記憶手段と、
前記端末装置においてウイルスが検出されると、前記操作履歴記憶手段に記憶されている当該操作履歴から当該ウイルスが前記端末装置に最初に保存された日時を特定し、当該特定した日時に実行された操作の内容から前記ウイルスの侵入経路を特定する特定手段として機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータウイルスに感染した経路を特定する技術に関する。
【背景技術】
【０００２】
コンピュータウイルスはますます巧妙化している。コンピュータウイルスの感染を防ぐためには、コンピュータウイルスの感染経路を特定することが重要である。なお、あるウイルスが見つかったときにそのウイルスがどこからやってきたのかを辿る作業をバックトレースと呼び、そのウイルスがさらにどの端末に伝搬してしまっているかを予測する作業をフォワードトレースと呼ぶことにする。
【０００３】
特許文献１には、バックトレースに関する発明が記載されている。特許文献１によれば、中央装置は中央装置を経由して端末装置から送信されるファイルからウイルスを検出したときに、ワクチンを登録した日時、そのファイルを前回送信した日時およびそのファイルの今回の送信日時から、ウイルスの感染時期を推定している。とりわけ、そのファイルを前回送信した日時がワクチンを登録した日時以降であれば感染経路を中央装置以外と測定し、そのファイルを前回送信した日時がワクチンを登録した日時より前であれば、感染経路を中央装置または他のＩＳＰと特定している。
【０００４】
特許文献２には、フォワードトレースに関する発明が記載されている。特許文献２によれば、クライアント端末において、あるファイルからウイルスが検出されたときに、そのファイルに対して過去にアクセスしたことがある別のクライアント端末をすでにウイルスに感染している可能性がある端末として特定する被害範囲予測システムが開示されている。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００２−２８７９９１号公報
【特許文献２】特開２００９−１７６１３２号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
特許文献１によれば、中央装置を経由した感染したのか、それ以外から感染したのかといった２通りの感染経路しか特定できない。しかしながら、現実の感染経路を多岐にわたっている。たとえば、メールに添付されていたファイルからウイルスに感染したり、ＵＳＢメモリなどのリムーバブルメディアから感染したり、ウェブサイトを閲覧しているときにダウンロードしたファイルやスクリプトによって感染したりする場合もある。したがって、ファイルの送信日時だけでは具体的な感染経路を特定することができない。また、特許文献１では基本的に中央装置でウイルスを検出しており、中央装置を経由しないファイルについてはウイルスを検出できず、また、その感染経路も特定できない。つまり、端末装置のみでは感染経路を特定できない。また、特許文献１ではファイルの送信日時だけに着目しているため、送信されないファイルについては感染経路を特定できない。このようにファイルの送信履歴だけでは、中央装置を経由して感染したのか、他の経路を経由した感染したのかといった程度しか感染経路を特定できない。
【０００７】
また、ファイルは新規に作成された後で、コピーされたり、上書きされたり、リネームされたりする。また、メールに添付されていたファイルを展開して生成される一時ファイルからウイルスが検出されるときがあるが、一時ファイルにはランダムなファイル名が付与されることがあり、このような場合にも感染経路を特定しにくくなる。また、あるファイルを閲覧するための専用のビューワソフトウエアは、ウェブブラウザからＯＬＥ（Ｏｂｊｅｃｔ  Ｌｉｎｋｉｎｇ  ａｎｄ  Ｅｍｂｅｄｄｉｎｇ）によって呼びだされることがある。この場合に、ビューワソフトウエアの実行日時だけを監視していたのでは、ウイルスの感染経路を十分に特定できない。すなわち、そのファイルがウェブブラウザによって取得されたことまでは特定できないからである。
【０００８】
特許文献２によれば、あるクライアント端末でウイルスが見つかったときに、それと同じウイルスに感染している可能性がある他のクライアント端末を特定できる（これをフォワードトレースと呼ぶ）。しかし、特許文献２では、最初にウイルスが見つかったクライアント端末に対して、そのウイルスがそもそもどこからやってきたのかを特定するバックトレースを実行することができない。
【０００９】
本発明は、たとえば、操作履歴を用いることで従来よりも詳細にウイルスの感染経路をバックトレースできるようにすることを目的とする。
【課題を解決するための手段】
【００１０】
本発明は、たとえば、
端末装置へのウイルスの侵入経路をバックトレースするウイルス侵入経路特定装置であって、
端末装置において実行された操作の履歴である操作履歴を記憶した操作履歴記憶手段と、
前記端末装置においてウイルスが検出されると、前記操作履歴記憶手段に記憶されている当該操作履歴から当該ウイルスが前記端末装置に最初に保存された日時を特定し、当該特定した日時に実行された操作の内容から前記ウイルスの侵入経路を特定する特定手段と
を有することを特徴とするウイルス侵入経路特定装置を提供する。
【発明の効果】
【００１１】
本発明によれば、操作履歴を用いることで従来よりも詳細にウイルスの感染経路をバックトレースできるようになる。
【００１２】
本発明のその他の特徴及び利点は、添付図面を参照とした以下の説明により明らかになるであろう。なお、添付図面においては、同じ若しくは同様の構成には、同じ参照番号を付す。
【図面の簡単な説明】
【００１３】
添付図面は明細書に含まれ、その一部を構成し、本発明の実施の形態を示し、その記述と共に本発明の原理を説明するために用いられる。
【図１】ウイルス侵入経路検索システムの一例を示す図である。
【図２】各種プログラムを実行することでＣＰＵなどによって実現される機能を示したブロック図である。
【図３】ウイルスの侵入経路検索処理を示すフローチャートである。
【図４】ウイルスの侵入経路検索処理の他の例を示すフローチャートである。
【図５】ウイルスの侵入経路検索処理の例を示すフローチャートである。
【図６】ウェブ閲覧によってウイルスに感染したときのバックトレースの一例を示す図である。
【図７】リムーバブルデバイスによってウイルスに感染したときのバックトレースの一例を示す図である。
【図８】ファイル共有プロトコルによってウイルスに感染したときのバックトレースの一例を示す図である。
【図９】メーラーによってウイルスに感染したときのバックトレースの一例を示す図である。
【図１０】ウイルス侵入経路検索処理（バックトレース）の一例を示すフローチャートである。
【図１１】ウイルスの感染経路の一例を示す図である。
【図１２】操作履歴に基づいたバックトレースの一例を示す図である。
【図１３】ウイルスの感染経路の一例を示す図である。
【図１４】操作履歴に基づいたバックトレースの一例を示す図である。
【図１５】バックトレースの一例を示すフローチャートである。
【図１６】ウイルスの感染経路の一例を示す図である。
【図１７】操作履歴に基づいたバックトレースの一例を示す図である。
【図１８】バックトレースの一例を示すフローチャートである。
【図１９】ウイルスの感染経路の一例を示す図である。
【図２０】操作履歴に基づいたバックトレースの一例を示す図である。
【図２１】バックトレースの一例を示すフローチャートである。
【図２２】複数のバックトレース結果が生じる例を示す図である。
【図２３】重みづけ処理を示すフローチャートである。
【図２４】重みづけ処理を示す詳細なフローチャートである。
【図２５】操作履歴に基づいたバックトレースの一例を示す図である。
【発明を実施するための形態】
【００１４】
＜基本的な考え方＞
コンピュータウイルスの侵入経路としては、一般的に、次の経路が考えられる。
【００１５】
（Ｉ）メールの添付ファイルからの感染（メール送信者の特定）
（ＩＩ）リムーバブルメディアからの感染（ＵＳＢメモリであれば、そのベンダーＩＤ
やシリアルＩＤの特定）
（ＩＩＩ）ウェブサイトからの感染（ウェブサイトのＵＲＬの特定）
（ＩＶ）ファイル共有ネットワークからの感染（ネットワークにおけるパス名等の特定）
なお、感染の要因としては、たとえば、次のようなものが考えられる。
【００１６】
（ａ）リムーバブルメディア
（ｂ）ファイル実行
（ｃ）ファイルコピー／移動
（ｄ）ウェブサイトの閲覧
（ｅ）スクリプトの実行
（ｆ）ＯＬＥ（Ｏｂｊｅｃｔ  Ｌｉｎｋｉｎｇ  ａｎｄ  Ｅｍｂｅｄｄｉｎｇ）
（ｇ）脆弱性攻撃
（ｈ）メーラー
（ｉ）ＵＲＬクリック
（ｊ）ウェブメール
（ｋ）ウイルス感染
（ｌ）ファイルダウンロード
（ｍ）ファイルの保存
（ｎ）名前を付けて保存
（ｏ）フラッシュ実行
（ｐ）ＺＩＰ（圧縮ファイル）の解凍処理
などがある。さらに、これらの感染要因の組み合わせによる侵入経路は次のように細分化できる。
【００１７】
（１）リムーバブルメディアに記憶されているファイルを実行すること（ａ＝＞ｂ）
（２）リムーバブルメディアに記憶されているファイルをコピーすること（ａ＝＞ｃ）
（３）リムーバブルメディアに記憶されているＺＩＰファイルを解凍すること(ａ＝＞ｐ)
（４）ローカルでファイルをコピーしてそれを実行すること（ｃ＝＞ｂ）
（５）ローカルでＺＩＰファイルを解凍して作成されたファイルを実行（ｐ＝＞ｂ）
（６）ローカルでＺＩＰファイルを解凍して作成されたファイルをコピーすること（ｐ＝＞ｃ）
（７）ファイルを実行することによるウェブサイトの閲覧（ｂ＝＞ｄ）
（８）ウェブサイトを閲覧してスクリプトを実行（ｄ＝＞ｅ）
（９）ファイルを実行してＯＬＥの呼出し（ｂ＝＞ｆ）
（１０）ＯＬＥによるファイルの実行（ｆ＝＞ｂ）
（１１）スクリプトの実行による脆弱性攻撃（ｅ＝＞ｇ）
（１２）ファイル実行による脆弱性攻撃（ｂ＝＞ｈ）
（１３）ウェブ閲覧によるファイルダウンロード（ｄ＝＞ｌ）
（１４）メーラーの実行による添付ＵＲＬのクリック（ｈ＝＞ｉ）
（１５）ウェブメールによるファイルのダウンロード（ｊ＝＞ｌ）
（１６）ウェブメールによる添付ＵＲＬのクリック（ｊ＝＞ｉ）
（１７）メーラーによるファイルのダウンロード（ｈ＝＞ｌ）
（１８）脆弱性攻撃によるウイルス感染（ｇ＝＞ｋ）
（１９）添付ＵＲＬクリックによるウェブサイトの閲覧（ｉ＝＞ｄ）
（２０）ファイルを保存してそれを実行（ｍ＝＞ｂ）
（２１）ファイルに名前を付けて保存し、それを実行（ｎ＝＞ｂ）
（２２）ファイルをダウンロードしてそれを実行（ｌ＝＞ｂ）
（２３）ファイルをダウンロードしてそれを保存（ｌ＝＞ｍ）
（２４）ファイルをダウンロードしてそれに名前を付けて保存（ｌ＝＞ｎ）
（２５）ウェブ閲覧によるフラッシュの実行（ｄ＝＞ｏ）
（２６）フラッシュの実行による脆弱性攻撃（ｏ＝＞ｇ）
（２７）メール転送（ｈ＝＞ｈ）
実際の侵入経路はさらにこれらの複合的な組み合わせとなる。たとえば、ウェブサイトの閲覧、ファイル(ＺＩＰ)をダウンロード、ダウンロードしたファイル(ＺＩＰ)を保存、保存したファイル（ＺＩＰ）を解凍、解凍されたファイルを実行、脆弱性攻撃、そしてウイルス感染（ｄ＝＞ｌ＝＞ｍ＝＞ｐ＝＞ｂ＝＞ｇ＝＞ｋ）といった経路となる。また、メールを起点とした完成経路としては、たとえば、メーラーの実行、添付ファイルのダウンロード、添付ファイルを保存、保存したファイルを実行、脆弱性攻撃、そしてウイルス感染（ｈ＝＞ｌ＝＞ｍ＝＞ｂ＝＞ｇ＝＞ｋ）といった経路となる。ＵＳＢメモリなどのリムーバブルメディアからの侵入経路は、たとえば、リムーバブルメディア、ファイルコピー、ファイル実行、脆弱性攻撃、そしてウイルス感染（ａ＝＞ｃ＝＞ｂ＝＞ｇ＝＞ｋ）といった経路となる。ファイル共有ネットワークからの感染の場合、ファイルのコピー、ファイルを実行、脆弱性攻撃、そしてウイルス感染（ｃ＝＞ｂ＝＞ｇ＝＞ｋ）といった経路となる。ウイルス検知ソフトウエアは、ウイルス特有のコードを探索することで、ウイルスに感染しているファイルを発見し、そのファイルを実行しようとしたプロセスのプロセス名（プロセスパス名）とプロセスＩＤを特定する。よって、プロセスパス名とプロセスＩＤを検索キーとして操作履歴を探索することで、感染ファイルがどのような経路で端末に作成されたのか、すなわち侵入経路を特定できるようになる。
【００１８】
操作履歴は、ユーザが端末装置に対して実行した操作の内容、操作日時などを記録する。操作内容としては、ウェブ閲覧に関するものとして、ウェブサイトのＵＲＬ、ダウンロードしたファイルのパス名、アップロードしたファイルのパス名などを記録する。ファイル操作に関する操作内容としては、操作対象となったファイルのパス名（コピー元のパス名、コピー先のパス名）、操作の種類（ファイルオープン、名前変更、削除、新規作成、上書き保存、名前を付けて保存）などである。リムーバブルメディアに関する操作内容としては、リムーバブルデバイスの接続、取り外し、デバイス名、デバイスＩＤ、ベンダーＩＤ、シリアルＩＤ、などである。メーラーに関する操作内容としては、送信・受信の区別、添付ファイルの有無、送信先、送信元のメールアドレス、件名、ＭｅｓｓａｇｅＩＤなどである。ＦＴＰに関する
操作内容としては、ファイルアップロード、ファイルダウンロード、ファイル削除などである。アクティブウインドウに関する操作内容としては、ＵＲＬアクセス、アクティブウインドウ、ウインドウタイトル変更、名前を付けて保存ダイアログなどである。
【００１９】
操作履歴から侵入経路を探索するには、たとえば、パス名、プロセス名、プロセスＩＤなどが検査キーの中心となる。たとえば、あるファイルを実行しようとしたときにウイルスが検知されたと仮定する。この場合、ファイルのパス名、そのファイルを実行しようとしたプロセス名、プロセスＩＤなどがウイルス検知ソフトウエアによって特定される。ウイルスの侵入経路を検索する侵入経路検索部は、これらを検索キーとして操作履歴を検索し、検索キーにマッチしたレコードを見つける。侵入経路検索部は、見つかったレコードの作成日時に沿ってレコードを並べたときに、ウイルスの検出されたファイルを最初に保存したプロセス名やそのときのファイルのパス名を特定する。例えば、そのファイルが最初に端末装置に保存されたときにその保存に関与したプロセスが、メーラーであれば、メール経由でウイルスに感染したことがわかる。また、そのプロセスがウェブブラウザであれば、ウェブ経由でウイルスに感染したことがわかる。また、そのプロセスがファイルマネージャであり、コピー元のパス名がリムーバブルデバイスであれば、リムーバブルデバイス経由でウイルスに感染したことがわかる。また、パス名に￥￥がついていればファイル共有プロトコルによって共有されているファイルサーバからウイルスに感染したことがわかる。また、ここで「保存」とはファイルの新規作成や上書き保存を含む概念である。
【００２０】
なお、ＯＬＥが関与している場合、ＯＬＥによってプロセスを呼び出した親プロセスを操作履歴から特定することで、さらに詳細なウイルスの侵入経路を特定できるようになろう。
【００２１】
ところで、操作履歴の一部またはすべてをネットワーク上のサーバに転送してしまい、端末装置には、十分な操作履歴が残されていないことも考えられる。この場合、ウイルスの侵入経路を十分に特定できないおそれもある。そこで、この場合は、端末装置がサーバに侵入経路のバックトレースの依頼をリクエストする。サーバ装置も端末装置と同様の侵入経路検索部を備えているとともに、複数の端末装置の操作履歴をデータベース化して保持している。このように、端末装置がサーバ装置と連携することで、より過去の操作履歴まで辿ってウイルスの侵入経路を特定してもよい。また、サーバ装置には複数の端末装置の操作履歴が保存されていることを応用して、複数の端末装置にまたがった侵入経路を特定してもよい。
【００２２】
＜実施例＞
図１は、クライアント装置１０ａ、１０ｂ（以下、単にクライアント装置１０と称す。）と操作履歴を収集するサーバ装置２０とを含むウイルス侵入経路検索システムの一例を示す図である。本発明にとってサーバ装置２０は必須ではないが、一部の実施例ではサーバ装置２０が必要となるため、図１に示されている。クライアント装置１０は、たとえば、企業、学校、行政機関または家庭などに設置され、ユーザの業務履歴（操作履歴ないしは閲覧履歴）を取得するコンピュータの一例である。なお、クライアント装置１０は、パーソナルコンピュータに限定されず、スキャナ装置、複合機、デジタルカメラ、携帯端末装置でもよい。サーバ装置２０は、複数のクライアント装置１０から操作履歴を取得して、データベース化したり、ウイルス侵入経路を検索したりするコンピュータである。なお、サーバ装置２０は、オプションであり、必ずしも必要ではない。クライアント装置１０は、インターネットやイントラネットなどのネットワーク１００を介してサーバ装置２０やＷｅｂサーバ、ＦＴＰサーバ、メールサーバなどと接続されている。
【００２３】
クライアント装置１０は、オフィス（企業、学校および行政機関）や家庭などに配置されるパーソナルコンピュータなどの情報処理装置（端末装置）である。クライアント装置１０では、記憶装置１５に記憶されているソフトウエアにしたがってＣＰＵ１１が各種手段として機能する。記憶装置１５は、ハードディスクドライブ（ＨＤＤ）やＳＳＤなどである。メモリ１３は、ＲＡＭやＲＯＭなどを含む。ＲＯＭには、ＢＩＯＳなどのブートプログラムが記憶されている。ブートプログラムにしたがって、オペレーティングシステム（ＯＳ）が起動され、さらにＯＳにしたがって、各種の常駐プログラム（エージェントサービスやウイルス検知プログラム、ウイルス侵入経路検索プログラムなど）が起動される。ＲＡＭは、ワークエリアとして機能する。ネットワークインターフェース１４は、ネットワーク１００を通じて他のコンピュータと通信するための通信回路である。ＣＰＵ１１およびネットワークインターフェース１４は、情報をサーバ装置から受信する受信手段や情報をサーバ装置に送信する送信手段として機能する。記憶装置１５は、Ｗｅｂブラウザやメーラーだけでなく、ＯＳや、エージェントサービスやウイルス検知プログラム、ウイルス侵入経路検索プログラム、操作履歴データベースなどを記憶する。エージェントサービスは、操作履歴の監視と記録を担当するプログラムである。ＯＳとしては、一例として、Ｗｉｎｄｏｗｓ（登録商標）について説明するが、ＭａｃＯＳ、Ｌｉｎｕｘ（登録商標）、ｉＯＳ、Ａｎｄｒｏｉｄなどであってもよい。入力部１６は、ポインティングデバイス（マウスやタッチパネル）やキーボードなどである。キーボードはソフトウエアキーボードであってもよい。また、入力部１６は、入力された操作者の音声を音声認識機能により認識してＣＰＵ１１へ指示を入力する音声認識入力部であってもよい。表示装置１２は、情報を表示するためのユーザインタフェースである。外部インタフェース１７は、ＵＳＢインタフェースなどであり、リムーバブルデバイス１８を接続する。リムーバブルデバイス１８は、たとえば、ストレージクラスとして認識されるＵＳＢメモリなどである。
【００２４】
サーバ装置２０の記憶装置２５は、ハードディスクドライブ（ＨＤＤ）やＳＳＤなどであり、サーバプログラムを記憶している。メモリ２３は、ＲＡＭやＲＯＭなどを含む。ＣＰＵ２１は、サーバプログラムをＲＡＭにロードし、複数のクライアント装置１０から操作履歴データを取得して、データベース化したり、ウイルス侵入経路を検索したりする。ネットワークインターフェース２４は、ネットワーク１００を通じて他のコンピュータと通信するための通信回路である。表示装置１２は、情報を表示するためのユーザインタフェースである。
【００２５】
図２は、各種プログラムを実行することでＣＰＵなどによって実現される機能を示したブロック図である。クライアント装置１０のエージェントサービス２０１は、サーバ装置２０の管理部２２５から設定される設定情報をウイルス侵入経路検索部２０２に設定したり、ユーザの操作を監視して操作履歴をデータベース２０４に記録したり、ウイルス侵入経路検索部２０２の検索結果を取得したり、サーバ装置２０に対してウイルス侵入経路の検索を依頼するためのリクエストを送信したりする。ウイルス侵入経路検索部２０２は、ウイルス検知部２０３からウイルス情報（感染ファイルのパス名、ウイルス名、ウイルスに関連したプロセスパス名など）を取得すると、そのウイルスの侵入経路を操作履歴に基づいてバックトレースする。ウイルス検知部２０３は、ウイルス定義ファイルに基づいて既知のウイルスや未知のウイルスを検知する。操作履歴データベース２０４には、ユーザがクライアント装置１０において実行した各種の操作内容と操作日時などが操作履歴として記録されている。エージェントサービス２０１は、所定のタイミングになると操作履歴の一部またはすべてをサーバ装置２０に転送し、転送済みの操作履歴を削除してもよい。また、クライアント装置１０のエージェントサービス２０１、ウイルス侵入経路検索部２０２、ウイルス検知部２０３、データベース２０４の一部、または全てをシンクライアント（たとえば、ターミナルサービス）により実現してもよい。ターミナルサービスとは、クライアントコンピュータがサーバコンピュータにリモート接続し、サーバコンピュータ上に生成された仮想デスクトップ環境を利用してサーバコンピュータ上でアプリケーションプログラムを実行できるようにするサービスである。このとき、複数のユーザが同時並行的にそれぞれのユーザアカウントを用いて、サーバコンピュータが提供するサービスにログインし、仮想デスクトップ環境を利用することができる。
【００２６】
サーバ装置２０は、クライアント装置１０のウイルス侵入経路検索部２０２と同様の機能を有したウイルス侵入経路検索部２２２を有している。ウイルス侵入経路検索部２２２は、情報取得部２２３を通じてウイルス侵入経路の検索リクエストを受信すると、そのクライアント装置の操作履歴を検索対象として検索し、ウイルスの侵入経路を特定する。この検索結果はビューワ２１１によって表示装置２２に表示されたり、クライアント装置１０に送信されたりする。ログ処理部２２１は、エージェントサービス２０１により転送されてきた操作履歴を操作履歴データベース２２４に書き込む。サーバ装置２０の操作履歴データベース２２４は、クライアント装置１０の操作履歴データベース２０４と比較して、長期間にわたる操作履歴のデータが記憶されている。情報取得部２２３は、クライアント装置１０との間でのデータの送受信などを担当する。情報取得部２２３は、エージェントサービス２０１から検索リクエストを受信すると、リクエストをウイルス侵入経路検索部２２２に渡す。また、情報取得部２２３は、エージェントサービス２０１から操作履歴を受信すると、ログ処理部２２１に渡す。例えばこれらの通信処理はＨＴＴＰ通信で行われる。情報取得部２２３は、ウイルス侵入経路検索部２２２からバックトレースの結果を受信すると、リクエストを送信してきたクライアント装置１０に結果を送信する。ログ処理部２２１は、クライアント装置１０から受信した操作履歴を操作履歴データベース２２４に書き込む。ビューワ２１１は、ウイルス侵入経路検索部２２２から受信したバックトレースの結果を表示装置２２に表示させる。管理部２２５は、エージェントサービス２０１に対して各種の設定（操作履歴の記録対象、操作履歴の保持期間の設定など）を行う。
【００２７】
図３は、クライアント装置１０のＣＰＵ１１が実行するウイルスの侵入経路検索処理を示すフローチャートである。
【００２８】
Ｓ３０１で、ＣＰＵ１１は、ＯＳにしたがってエージェントサービスプログラム、ウイルス検知プログラムおよび侵入経路検索プログラムなどを起動する。これにより、エージェントサービス２０１、ウイルス侵入経路検索部２０２およびウイルス検知部２０３などが動作を開始する。
【００２９】
Ｓ３０２で、ＣＰＵ１１は、ウイルス検知部２０３がウイルスを検知したかどうかを判定する。ウイルス検知部２０３がウイルスを検知したことをＣＰＵ１１（ウイルス侵入経路検索部２０２）に通知してくると、Ｓ３０３に進む。ウイルス検知部２０３は、ウイルスに関連したプロセスのプロセスパス名、検出日時、プロセスＩＤなどの情報（これをウイルス検知情報と称す。）をＣＰＵ１１（ウイルス侵入経路検索部２０２）に通知する。なお、ＣＰＵ１１（ウイルス侵入経路検索部２０２）は、ウイルス検知部２０３が作成するウイルス検知ログをサーチすることで、ウイルスが検知されたことを認識してもよい。この場合、侵入経路検索プログラムと連携することを想定していないウイルス検知プログラムであっても、本発明を適用できる利点がある。
【００３０】
Ｓ３０３で、ＣＰＵ１１（ウイルス侵入経路検索部２０２）は、ウイルス検知情報に含まれている検索キーにしたがって操作履歴データベース２０４を検索する。これにより、ウイルスに関連したファイルやプロセスが最初にクライアント装置１０に作成された日時や侵入経路を特定できるようになる。このようなバックトレースの詳細については後述する。
【００３１】
Ｓ３０４で、ＣＰＵ１１（ウイルス侵入経路検索部２０２）は、エージェントサービス２０１を通じて、バックトレースの結果をサーバ装置２０に送信する。サーバ装置２０は、情報取得部２２３を通じてバックトレースの結果を受信すると、ビューワ２１１によって表示装置２２に通じてバックトレースの結果を表示する。これにより、システム管理者はウイルスの侵入経路を容易に把握できるようになる。
【００３２】
上述したように、クライアント装置１０に操作履歴が全くなかったり、一部の操作履歴しか残っていなかったりすると、バックトレースに失敗してしまうことがある。そこで、本発明では、サーバ装置２０にバックトレースを依頼することで、クライアント装置１０とサーバ装置２０とが連携してバックトレースを実行する例について説明する。
【００３３】
図４は、クライアント装置１０のＣＰＵ１１が実行するウイルスの侵入経路検索処理の他の例を示すフローチャートである。すでに説明した処理には同一の参照符号を付与することで、説明を省略する。ここでは、Ｓ３０１ないしＳ３０３を実行した後で、Ｓ４０１に進む。
【００３４】
Ｓ４０１で、ＣＰＵ１１（ウイルス侵入経路検索部２０２）は、バックトレースに失敗したかどうかを判定する。たとえば、ウイルスに関連したプロセスのパス名を記録したレコードが１つも見つからなかったり、レコードは見つかったとしてもそのレコードからは侵入経路を特定できなかったりしたときに、ＣＰＵ１１は、バックトレースに失敗したと判定する。バックトレースに失敗すると、Ｓ４０２に進む。
【００３５】
Ｓ４０２で、ＣＰＵ１１（ウイルス侵入経路検索部２０２）は、エージェントサービス２０１を通じて、サーバ装置２０に対してバックトレースを依頼するためのリクエストを送信する。この際にＣＰＵ１１は、バックトレースを実行するために必要なウイルス検出情報と、当該クライアント装置１０を特定するための識別情報（ネットワークアドレスやコンピュータ名）などもサーバ装置２０に送信する。
【００３６】
Ｓ４０３で、ＣＰＵ１１（ウイルス侵入経路検索部２０２）は、エージェントサービス２０１を通じて、バックトレースの実行結果をサーバ装置２０から受信する。ＣＰＵ１１は、バックトレースの実行結果を表示装置１２に表示してもよい。これによりユーザは、ウイルスの侵入経路を把握できるようになる。
【００３７】
一方で、Ｓ４０１で、バックトレースに成功したと判定すると、Ｓ４０４に進む。Ｓ４０４で、ＣＰＵ１１（ウイルス侵入経路検索部２０２）は、エージェントサービス２０１を通じて、バックトレースの結果をサーバ装置２０に送信する。サーバ装置２０は、情報取得部２２３を通じてバックトレースの結果を受信すると、ビューワ２１１によって表示装置２２に通じてバックトレースの結果を表示する。
【００３８】
図５は、サーバ装置２０のＣＰＵ２１が実行するウイルスの侵入経路検索処理の例を示すフローチャートである。
【００３９】
Ｓ５０１で、ＣＰＵ２１（ウイルス侵入経路検索部２２２）は、情報取得部２２３を通じて、バックトレースの実行を依頼するリクエストを受信したかどうかを判定する。当該リクエストを受信すると、Ｓ５０２に進む。
【００４０】
Ｓ５０２で、ＣＰＵ２１（ウイルス侵入経路検索部２２２）は、バックトレースを実行する。たとえば、ＣＰＵ２１は、クライアント装置１０から受信したウイルス検出情報と、当該クライアント装置１０を特定するための識別情報とを検索キーとして、操作履歴データベース２２４にアクセスして検索を実行する。そして見つかったレコードから最初にウイルスに関連したファイルがクライアント装置１０に作成された日時と侵入経路（たとえば、ウェブ閲覧、メーラー、リムーバブルデバイス、ファイル共有プロトコル）を特定する。
【００４１】
Ｓ５０３で、ＣＰＵ２１（ウイルス侵入経路検索部２２２）は、バックトレースの結果をビューワ２１１に表示させたり、クライアント装置１０に送信したりする。
【００４２】
＜バックトレースの詳細＞
図６は、ウェブ閲覧によってウイルスに感染したときのバックトレースの一例を示す。ここでは、操作履歴６００に記憶されている操作の内容からバックトレースを実行する例を説明する。操作履歴６００は、たとえば、操作名６０１、ファイル名６０２、プロセス名６０３、添付ファイル名６０４、ＵＲＬ６０５、操作日時６０６などを含んでいる。ＵＲＬ６０５はネットワークのアクセスログから特定されてもよいし、対象のプロセスのアクティブウインドウのウィンドウ名（タイトル名）／アドレスバー名から判断されてもよい。なお、プロセスによっては、あるプロセス（親プログラム）が元になって何らかのプログラム（子プログラム）を生成する場合がある。その場合は、親プログラム／子プログラムのウィンドウ名（タイトル名）／アドレスバー名からＵＲＬ６０５が判断されてもよい。ウイルス検知部２０３がウイルスを検出すると、そのプロセス名（例：Ｍａｌｗａｒｅ．ｅｘｅ）やプロセスＩＤなどがウイルス検知部２０３からウイルス侵入経路検索部２０２に渡される。ウイルス侵入経路検索部２０２は、プロセス名（例：Ｍａｌｗａｒｅ．ｅｘｅ）やプロセスＩＤを検索キーとして操作履歴６００を検索し、日時の新しい操作内容から順番に経路をバックトレースして行く。この例では、ウイルス（Ｍａｌｗａｒｅ．ｅｘｅ）がウェブアクセスを実行していることがわかる。さらに、ウイルス侵入経路検索部２０２は、過去の操作履歴を遡ってゆく。この例では、２０１２年１１月２０日１３時５分３０秒にウイルス（Ｍａｌｗａｒｅ．ｅｘｅ）が保存されたことがわかる。なお、プロセス名６０３やファイル名６０２はパスを含むパス名としてもよい。これにより、さらに正確にバックトレースを実行できるからである。さらに、ウイルス侵入経路検索部２０２は、過去の操作履歴を遡り、ウイルス（Ｍａｌｗａｒｅ．ｅｘｅ）がｗｅｂｂｒｏｗｓｅｒ．ｅｘｅによって、あるサイト（ｈｔｔｐ：／／ｗｗｗ．ｊｐ）からダウンロードされたことを突き止める。ファイルダウンロードは、ウイルス（Ｍａｌｗａｒｅ．ｅｘｅ）が最初にクライアント装置１０に侵入した動作の一例である。このように、ウイルス（Ｍａｌｗａｒｅ．ｅｘｅ）が最初にクライアント装置１０に侵入したタイミングが操作名６０１から判断できる。
【００４３】
図７は、リムーバブルデバイスによってウイルスに感染したときのバックトレースの一例を示す。この例では、操作履歴６００にファイルのコピー元を示すコピー元情報７０１が追加されている。上述したように、ウイルス侵入経路検索部２０２は、プロセス名に従って過去の操作履歴を遡り、操作名として最初の侵入に関与した操作である「ファイルコピー」を見つける。見つかったレコードにおけるコピー元情報７０１は、リムーバブルデバイスがコピー元であったことを示している。よって、ウイルス侵入経路検索部２０２は、ウイルス（Ｍａｌｗａｒｅ．ｅｘｅ）の侵入経路は、リムーバブルデバイスであると特定する。なお、操作履歴６００の当該レコードにリムーバブルデバイスのプロダクトＩＤやベンダーＩＤやシリアルＩＤなどを記録しておけば、具体的にどのリムーバブルデバイスであったかを特定できるようになる。
【００４４】
図８は、ファイル共有プロトコルによってウイルスに感染したときのバックトレースの一例を示す。上述したように、ウイルス侵入経路検索部２０２は、プロセス名に従って過去の操作履歴を遡り、操作名として最初の侵入に関与した操作である「ファイルコピー」を見つける。見つかったレコードにおけるコピー元情報７０１には、コピー元を示すパス名が記録されており、しかしそのパス名にはネットワークドライブからのコピーを示す“￥￥”が含まれている。よって、ウイルス侵入経路検索部２０２は、ウイルス（Ｍａｌｗａｒｅ．ｅｘｅ）の侵入経路がネットワークドライブ（ファイル共有プロトコル）であると特定する。
【００４５】
図９は、メーラーによってウイルスに感染したときのバックトレースの一例を示す。ウイルス侵入経路検索部２０２は、プロセス名に従って過去の操作履歴を遡り、操作名として最初の侵入に関与した疑いのある操作である「新規作成」を見つける。しかし、ウイルス（Ｍａｌｗａｒｅ．ｅｘｅ）のファイルを新規に作成したプロセスは、ＯＬＥ関連のプロセス（例：Ｒｅａｄｅｒ．ｅｘｅ）であり、このプロセスは他のプロセス（親プロセス）から呼び出された可能性がある。そこで、ウイルス侵入経路検索部２０２は、この他のプロセスによる日時の近い操作内容を検索し、「ファイルオープン」といった操作内容を見つける。つまり、ウイルス（Ｍａｌｗａｒｅ．ｅｘｅ）は、ＡＢＣＤ．ｐｄｆをＲｅａｄｅｒ．ｅｘｅが開いたときに、Ｒｅａｄｅｒ．ｅｘｅの脆弱性を突かれて生成されたウイルスであることがわかる。ウイルス侵入経路検索部２０２は、あらたに、ファイル名（ＡＢＣＤ．ｐｄｆ）が最初に保存された日時とその操作内容を探索する。その結果、ウイルス侵入経路検索部２０２は、メーラー（Ｍａｉｌｅｒ．ｅｘｅ）によって、あるメールアドレス（ａ＠ｂ．ｃ．ｊｐ）から受信したメールに添付されていたファイル（ＡＢＣＤ．ｐｄｆ）が侵入経路であったと特定できる。
【００４６】
このようにファイルをオープンするために使用されたプロセスがＯＬＥによって親プロセスから呼び出されることがあるプロセスについては、予めテーブルにそのプロセス名を登録しておき、そのプロセス名が操作履歴から検索により見つかったときは、そのプロセスを呼び出した親プロセスを操作履歴から検索することで、本当の侵入口を見つけることが可能となる。
【００４７】
図１０は、ウイルス侵入経路検索処理（バックトレース）の一例を示すフローチャートである。
【００４８】
Ｓ１００１で、ウイルス侵入経路検索部２０２は、ウイルス検知部２０３から受け取ったウイルス情報（例：プロセス名など）に基づいて操作履歴を検索する。
【００４９】
Ｓ１００２で、ウイルス侵入経路検索部２０２は、検索により見つかったレコードをそこに記録されている操作日時順にソートする。なお、ソート処理は省略されてもよい。
【００５０】
Ｓ１００３で、ウイルス侵入経路検索部２０２は、新しいレコードから順番に古いレコードを調査し、レコードに記録されているファイル名が侵入関連操作（例：メール受信、ウェブ閲覧、ダウンロード、ファイル新規作成、リムーバブルデバイスからのファイルのコピー・移動、ファイル共有プロトコルによるファイルのコピー・移動など）かどうかを判定する。操作名が侵入関連操作でなければ、Ｓ１００４に進む。操作名が侵入関連操作であれば、Ｓ１００６に進む。Ｓ１００６で、ウイルス侵入経路検索部２０２は、発見したウイルス侵入に関与したレコードから必要な情報を抽出し、検索結果を作成する。
【００５１】
Ｓ１００４で、ウイルス侵入経路検索部２０２は、検索により見つかった複数のレコードのうち、今調査を終了したレコードより次に新しいレコードを検索して調査する。
【００５２】
Ｓ１００５で、ウイルス侵入経路検索部２０２は、次に新しいレコードが存在しなければ、そこでバックトレースを打ち切って、Ｓ１００６に進む。Ｓ１００６で、ウイルス侵入経路検索部２０２はバックトレースを打ち切るまでに見つかったウイルスの移動経路（ファイルコピーや移動など）を検索結果としてまとめる。一方で、次に新しいレコードが存在すれば、Ｓ１００３に戻り、ウイルス侵入経路検索部２０２は、次に新しいレコードに記録されているファイル名などを調査する。
【００５３】
なお、Ｓ１００３の侵入関連操作の判定処理では、図９に示したように親子プロセスの関連性やファイルのリネームなども考慮して、バックトレースを継続して行く。
【００５４】
なお、サーバ装置２０において実行されるバックトレースも基本的に図１０に示した手順となる。なお、サーバ装置２０のウイルス侵入経路検索部２２２が検索結果を作成するときは、クライアント装置１０から受け取った検索結果も反映して全体としての検索結果を作成する。たとえば、クライアント装置１０が２０１３年１０月１１日から２０１３年９月１１日まで検索し、サーバ装置２０が２０１３年９月１０日から２０１２年９月１１日まで検索した場合、サーバ装置２０は、２０１３年１０月１１日から２０１２年９月１１日までのバックトレース結果を検索結果として作成する。
【００５５】
以上説明したように、本実施例によれば、予め操作履歴を記憶しておくことで、操作履歴を検索することで、ウイルスの侵入経路や移動経路をバックトレースすることが可能となる。なお、ウイルス侵入経路検索部は、端末装置だけに存在してもよいし、サーバ装置だけに存在してもよいし、双方に存在してもよい。端末装置だけにウイルス侵入経路検索部を設ければ、比較的に簡易にウイルス侵入経路を検索できるようになる。サーバ装置だけにウイルス侵入経路検索部を設ければ、端末装置の検索負荷を軽減できる利点がある。さらに、端末装置とサーバ装置に双方にウイルス侵入経路検索部を設ければ、端末装置で途中までしか侵入経路を特定できなかったとしても、サーバ装置において最初の侵入口まで特定できるようになろう。また、ウイルスの侵入口はいくつかの種類に分類できる。よって、侵入操作といえる特定の操作内容が現れるまでバックトレースを実行することで、侵入口を特定してもよい。つまり、バックトレースを実行して操作履歴を遡っても特定の操作内容が見つからなければ、検索に失敗したと判定できる。また、その結果、サーバ装置への検索を依頼してもよい。
【００５６】
なお、一見すると侵入口が見つかったようなケースでもその操作が子プロセスによって実行された操作であれば、さらに親プロセスを特定することで真の侵入口を見つけられるようになろう。
【００５７】
＜その他＞
上述した実施例によれば、あるクライアント装置１０についてウイルスが侵入してきた侵入口を特定することが可能となる。ところで、ネットワークでファイル共有プロトコルによってファイルサーバからファイルをコピーすることでウイルスに感染した場合、そのファイルはだれがアップロードしたかが問題となる。一方で、サーバ装置２０は、自己の配下にある複数のクライアント装置１０のそれぞれの操作履歴を保持している。よって、ウイルスに感染したファイル名（パス名）と操作日時がわかれば、そのファイルをファイルサーバにアップロード（コピー）した他のクライアント装置１０をサーバ装置２０は特定できる。さらに、他のクライアント装置１０において当該ファイルがどのように操作（コピー、リネーム、ダウンロード、保存）されたかもサーバ装置２０は、操作履歴から特定できる。よって、ファイル共有プロトコルによってファイルを共有しているドメイン内へのウイルスの侵入経路もサーバ装置２０のウイルス侵入経路検索部２２２は特定することができる。
【００５８】
なお、上述した実施例では、クライアント装置１０にウイルス侵入経路検索部２０２が存在することを前提としたが、サーバ装置２０にだけウイルス侵入経路検索部２２２が存在してもよい。この場合、エージェントサービス２０１は、操作履歴をすべてサーバ装置２０に転送しておき、さらにウイルス検知部２０３からのウイルス検知情報も検索リクエストともにサーバ装置２０に送信してもよい。
【００５９】
また、ウイルス検知部２０３は、スクリプト型のウイルスやレジストリに保存されるウイルス、メモリ上に展開されたウイルスを検知できる。よって、ウイルス侵入経路検索部２０２は、スクリプトを実行したプロセス、レジストリへのウイルスコードを書き込んだプロセス、メモリ上へのウイルスを展開したプロセスを操作履歴から特定し、スクリプトをダウンロードさせたサイトのＵＲＬや、レジストリへ書き込まれたウイルスコードを含んでいたファイルの入手先、メモリ上へのウイルスを展開したプロセスの侵入経路を特定してもよい。
【００６０】
●［ネットワーク経由でファイルまたはプログラムを実行した場合のバックトレース］
図１１が示すように、インターネットやイントラネットなどではネットワーク１００に対して複数のクライアント装置１０ａ、１０ｂ、１０ｃ、１０ｄが接続されている。クライアント装置１０ａは、例えばＳＭＢなどでアクセスが許可されているフォルダ１１０１がある。フォルダ１１０１のパス名は、たとえば、￥￥ＣｌｅｉｅｎｔＡである。フォルダ１１０１には、任意のファイル（ここでは、Ｍａｌｗａｒｅ．ｐｄｆ）が記憶されている。クライアント装置１０ｂ、１０ｃからはこのフォルダにアクセスして、当該ファイルを開いたり、コピーしたりするなど、ファイル操作が許可されている。このような前提の下、クライアント装置１０ｂ、１０ｃがフォルダ１１０１のファイルをプロセス（Ｖｉｅｗｅｒ．ｅｘｅ）により操作したところ、ウイルス検知部２０３がウイルスを検知した。このような場合において、ウイルスの侵入経路が他の端末装置であることを特定する。なお、以降の説明では、クライアント装置１０aの識別情報の一例として「ＣｌｉｅｎｔＡ」、クライアント装置１０ｂの識別情報の一例として「ＣｌｉｅｎｔＢ」、クライアント装置１０ｃの識別情報の一例として「ＣｌｉｅｎｔＣ」として説明する。
【００６１】
図１２は、バックトレースの一例を示している。操作履歴６００には、操作を実行したクライアント装置の識別情報であるＰＣ名１２００やプロセス識別情報であるプロセスＩＤが含まれている。
【００６２】
（ｉ）ウイルス検知部２０３がウイルスを検知すると、ウイルス侵入経路検索部２０２は、ウイルス検知情報からウイルスとの関連性が指摘されたプロセスのプロセス識別情報（プロセス名６０３とプロセスＩＤ１２０１）を取得する。さらに、ウイルス侵入経路検索部２０２は、プロセス識別情報にしたがって操作履歴６００を検索し、そのプロセスが起動した操作履歴のレコードを発見する。
【００６３】
（ｉｉ）ウイルス侵入経路検索部２０２は、プロセス識別情報が共通するレコードのうち、プロセスがスタートした時刻からウイルスが検知された時刻までに当該プロセスが何らかのファイルをオープンしたことを示す操作履歴のレコードを特定する。
【００６４】
（ｉｉｉ）ウイルス侵入経路検索部２０２は、発見したレコードに含まれてファイルのパス名を取得する。ウイルス侵入経路検索部２０２は、取得したパス名に「￥￥」が含まれていることから、ネットワークで共有されているファイルであることを認識し、さらに、パス名に「ＣｌｉｅｎｔＡ」というクライアント装置１０ａの識別情報が含まれていることから、クライアント装置１０ａをクライアント装置１０ｂへのウイルスの侵入経路と特定する。
【００６５】
なお、ウイルス侵入経路検索部２０２は、見つかったパス名をサーバ装置のウイルス侵入経路検索部２２２に渡すことで、サーバ装置のウイルス侵入経路検索部２２２がさらに侵入経路を特定してもよい。サーバ装置２０の操作履歴データベース２２４には、複数の端末の操作履歴が記録されている。よって、ウイルス侵入経路検索部２２２は、複数のクライアント装置間でのファイルの移動をトレースできる。ウイルス侵入経路検索部２２２は、ウイルス侵入経路検索部２０２からのリクエストを受信すると、そのリクエスト（パス名）にしたがってフォルダ１１０１にファイルが書き込まれた経緯をバックトレースする。これにより、クライアント装置１０ａへのウイルスの侵入経路も特定できる。
【００６６】
このように、サーバ装置２０に設けられた操作履歴データベース２２４は、複数の端末装置において取得された操作履歴を記憶しており、サーバ装置２０に設けられたウイルス侵入経路検索部２２２は、複数の端末装置のうちの１つの端末装置においてウイルスが見つかると、そのウイルスに関連したパス名またはプロセスの識別情報をもとに複数の端末装置の操作履歴を検索して、当該ウイルスの侵入経路を特定する。
【００６７】
図１３は、ネットワークフォルダに記憶されているファイルを実行することでクライアント装置においてウイルスが検知された事例を示している。ここでは、クライアント装置１０ａのフォルダ１１０１に問題のファイル「Ｍａｌｗａｒｅ．ｅｘｅ」が記憶されており、他のクライアント装置１０ｂ、１０ｃがそれを実行したと仮定している。
【００６８】
図１４は、バックトレースの一例を示している。
【００６９】
（ｉ）クライアント装置１０ｂのウイルス検知部２０３がウイルスを検知すると、ウイルス侵入経路検索部２０２は、ウイルス検知情報からウイルスとの関連性が指摘されたプロセスのプロセス識別情報（プロセス名６０３とプロセスＩＤ１２０１）を取得する。図１４において、プロセス名６０３には、「￥￥ＣｌｉｅｎｔＡ￥￥Ｍａｌｗａｒｅ．ｅｘｅ」というパス名が保存されている。さらに、ウイルス侵入経路検索部２０２は、プロセス識別情報にしたがって操作履歴６００を検索し、そのプロセスが起動した操作履歴のレコードを発見する。
【００７０】
（ｉｉ）ウイルス侵入経路検索部２０２は、プロセス識別情報が共通するレコードのうち、プロセスがスタートした時刻からウイルスが検知された時刻までに当該プロセスが何らかのファイルをオープンしたことを示す操作履歴のレコードを特定する。図１４に示した事例では、別のプロセスがテキストファイルを開いたことを示すレコードが存在するものの、ウイルスに関連したプロセス（￥￥ＣｌｉｅｎｔＡ￥￥Ｍａｌｗａｒｅ．ｅｘｅ）は何のファイル操作も実行していない。よって、ウイルス侵入経路検索部２０２は、プロセス（￥￥ＣｌｉｅｎｔＡ￥￥Ｍａｌｗａｒｅ．ｅｘｅ）自体がウイルスであり、そのパス名からクライアント装置１０ａが侵入口であると特定する。
【００７１】
ここでは、クライアント装置１０で侵入経路を特定するものとして説明したが、すでに言及したように、サーバ装置２０だけで侵入経路を特定してもよいし、クライアント装置１０のウイルス侵入経路検索部２０２とサーバ装置２０のウイルス侵入経路検索部２２２とが連携してウイルス侵入経路特定処理を実行してもよい。サーバ装置２０に設けられた操作履歴記憶手段には、クライアント装置１０に設けられた操作履歴記憶手段に記憶されている操作履歴の期間よりも長期間にわたる操作履歴が記憶されている。よって、クライアント装置１０は、自己が記憶している操作履歴だけでは侵入経路を途中までしか特定できなかったときに、さらに過去の操作履歴についてのバックトレースをサーバ装置２０に依頼してもよい。サーバ装置２０は、クライアント装置１０から受けとったリクエストにしたがって、過去の操作履歴をサーチする。
【００７２】
図１５は、サーバ装置が実行するバックトレースの手順を示したフローチャートである。バックトレースは、クライアント装置１０で実行されるものとして説明するが、一部またはすべてをサーバ装置２０で実行してもよい。
【００７３】
Ｓ１５０１で、ウイルス侵入経路検索部２０２は、クライアント装置１０のウイルス検知部２０３がウイルスを検知したかどうかを判定する。（サーバ装置２０のウイルス侵入経路検索部２２２がバックトレースを実行するときは、ウイルス検知部２０３がウイルスを検知すると、ウイルスを検知したことをクライアント装置１０のエージェントサービス２０１がウイルス侵入経路検索部２２２に通知する。）ウイルスが検知されると、Ｓ１５０２に進む。
【００７４】
Ｓ１５０２で、ウイルス侵入経路検索部２０２は、クライアント装置１０のウイルス検知部２０３から上述したウイルス検知情報を取得する。
【００７５】
Ｓ１５０３で、ウイルス侵入経路検索部２０２は、ウイルス検知情報に含まれているプロセス識別情報によって特定されるプロセスがファイルをオープンしているかどうかを、操作履歴データベース２０４に記憶されている操作履歴６００にしたがって判定する。なお、サーバ装置２０がバックトレースを実行する場合、ウイルス侵入経路検索部２２２は、各クライアント装置１０に操作履歴をサーバ装置２０に転送するよう指示してもよい。これにより、最新の操作履歴を検索の対象とすることがきる。ファイルをオープンしていれば、Ｓ１５０４に進む。
【００７６】
Ｓ１５０４で、ウイルス侵入経路検索部２０２は、オープンされているファイルのファイルパスがネットワーク共有ファイルであることを示す特定の記号「￥」から始まっているかどうかを判定する。ファイルパスが記号「￥」から始まっていれば、Ｓ１５０５に進む。
【００７７】
Ｓ１５０５で、ウイルス侵入経路検索部２０２は、ウイルスに関連したファイルはネットワーク上に存在することを認識する。
【００７８】
Ｓ１５０６で、ウイルス侵入経路検索部２０２は、ウイルスに関連したファイルのパス名からウイルスを保持しているクライアント装置を特定する。
【００７９】
Ｓ１５０７で、ウイルス侵入経路検索部２０２は、ウイルスを保持しているクライアント装置の操作履歴をさらに検索するかどうかを判定する。たとえば、ウイルスを保持しているクライアント装置が自分自身であれば、ウイルス侵入経路検索部２０２は、データベース２０４をさらに過去にさかのぼって検索を実行する必要がある。この場合は、ウイルス侵入経路検索部２０２は、データベース２０４をさらに過去にさかのぼって検索を実行する。一方で、ウイルスを保持しているクライアント装置が他の端末であれば、ウイルス侵入経路検索部２０２は、さらなる検索を実行できないため、サーバ装置２０に検索を依頼する必要がある。また、ウイルス侵入経路検索部２０２は、データベース２０４をさらに過去にさかのぼって検索を実行したところ、操作履歴が不足していることもある。この場合は、Ｓ１５０８に進む。
【００８０】
Ｓ１５０８で、ウイルス侵入経路検索部２０２は、エージェントサービス２０１を通じてサーバ装置２０に検索を依頼する。この依頼には、検索の対象となる他のクライアント装置の識別情報や、ファイルのパス名などが含まれている。サーバ装置２０のウイルス侵入経路検索部２２２は、依頼にしたがって侵入経路を特定する。
【００８１】
●［メールにウイルスファイルが添付されており、メール受信者がファイルを開かずに他の人へ転送し、転送先でウイルスに感染したケースにおけるバックトレース］
図１６は、メールの転送によってウイルスに感染するケースを示している。ウイルスがメールに添付されている場合、添付ファイルを実行したときにそのウイルスがウイルス検知部２０３によって検知される。よって、メールを受信したとしても添付ファイルを操作せずにそのまま転送した場合にはウイルスが検知されないおそれがある。
【００８２】
図１６によれば、クライアント装置１０ｃが外部の送信者からメールを受信し、添付ファイルを操作することなくそのメールをクライアント装置１０ｂに転送したと仮定する。さらに、クライアント装置１０ｂも、添付ファイルを操作することなくそのメールをクライアント装置１０ａに転送したと仮定する。クライアント装置１０ａは、運悪くそのメールの添付ファイルを実行してしまい、ウイルスを検知したと仮定する。この場合、クライアント装置１０ａは、上述した手順により、クライアント装置１０ｂが侵入経路であると特定できるが、そこから先の侵入経路までを特定することができない。
【００８３】
一方で、サーバ装置２０は、複数のクライアント装置１０ａ〜１０ｄのメーラーの動作も操作履歴として記憶している。よって、サーバ装置２０のウイルス侵入経路検索部２２２であれば、データベース２２４を利用してさらに詳細な侵入経路をバックトレースできる。
【００８４】
図１７は、メールの転送が関与するウイルスの侵入経路についてのバックトレースの一例を示している。ここで、サーバ装置２０のウイルス侵入経路検索部２２２がバックトレースを実行するものと仮定する。
【００８５】
（ｉ）ウイルス検知部２０３がウイルスを検知し、ウイルスに関連するプロセス名６０３とプロセスＩＤ１２０１をウイルス侵入経路検索部２０２およびエージェントサービス２０１を介してウイルス侵入経路検索部２２２に渡す。エージェントサービス２０１は、ＰＣ名もウイルス侵入経路検索部２２２に渡す。ウイルス侵入経路検索部２２２は、ウイルス検知情報に含まれているウイルスに関連するプロセス名６０３、プロセスＩＤ１２０１およびＰＣ名を元に、そのプロセスがスタートしたときの操作履歴をデータベース２２４から見つける。
【００８６】
（ｉｉ）ウイルス侵入経路検索部２２２は、プロセスがスタートしたときの操作履歴を見つけると、さらにそのプロセスの実行ファイルのパス名からその実行ファイルを新規作成したときに記録された操作履歴をデータベース２２４から見つける。ここでは、メーラーによってウイルスに関連した実行ファイル（Ｍａｌｗａｒｅ．ｅｘｅ）が作成されたことがわかる。
【００８７】
（ｉｉｉ）ウイルス侵入経路検索部２２２は、メーラーが実行ファイル（Ｍａｌｗａｒｅ．ｅｘｅ）を添付ファイルとして受信したときの操作履歴を検索して抽出する。さらに、ウイルス侵入経路検索部２２２は、見つかった操作履歴のレコードに記録されている差出人メールアドレス１７０１を抽出することで、メールを送信してきた他のクライアント装置１０ｂを特定する。
【００８８】
なお、（ｉ）から（ｉｉｉ）までは、ウイルスを検出したクライアント装置１０ａにおいて実行されてもよい。
【００８９】
（ｉｖ）ウイルス侵入経路検索部２２２は、差出人メールアドレス１７０１および添付ファイル名６０４に基づいて、問題の添付ファイルを受信したことを示す操作履歴のレコードをデータベース２２４から検索して抽出する。ウイルス侵入経路検索部２２２は、そのレコードに含まれている差出人メールアドレス１７０１を抽出することで、メールを送信してきた他のクライアント装置１０ｃを特定する。
【００９０】
（ｖ）ウイルス侵入経路検索部２２２は、差出人メールアドレス１７０１および添付ファイル名６０４に基づいて、問題の添付ファイルを受信したことを示す操作履歴のレコードをデータベース２２４から検索して抽出する。ウイルス侵入経路検索部２２２は、そのレコードに含まれている差出人メールアドレス１７０１を抽出することで、メールを送信してきた外部の差出人（ｕｎｋｎｏｗｎ＠ｍａｉｗａｒｅ．ｊｐ）を特定する。なお、サーバ装置２０の管理下への最初の侵入口はクライアント装置１０ｃであることが特定される。
【００９１】
また、ウイルス侵入経路検索部２２２は、メーラーが実行ファイル（Ｍａｌｗａｒｅ．ｅｘｅ）を添付ファイルとして受信したときの操作履歴に基づいてメールの送信元を特定するのみならず、メーラーが実行ファイルを新規作成した直前にメーラーが開いていたメール情報(メールのオープンログ)に基づいてメールの送信元を特定してもよい。
【００９２】
図２５は、メールの転送が関与するウイルスの侵入経路についてのバックトレースの他の一例を示している。ここで、サーバ装置２０のウイルス侵入経路検索部２２２がバックトレースを実行するものと仮定する。
【００９３】
（ｉ）ウイルス検知部２０３がウイルスを検知し、ウイルスに関連するプロセス名６０３とプロセスＩＤ１２０１をウイルス侵入経路検索部２０２およびエージェントサービス２０１を介してウイルス侵入経路検索部２２２に渡す。エージェントサービス２０１は、これらの情報に加えＰＣ名もウイルス検知情報としてウイルス侵入経路検索部２２２に渡す。ウイルス侵入経路検索部２２２は、ウイルス検知情報に含まれているウイルスに関連するプロセス名６０３、プロセスＩＤ１２０１およびＰＣ名を元に、そのプロセスがスタートしたときの操作履歴をデータベース２２４から見つける。
【００９４】
（ｉｉ）ウイルス侵入経路検索部２２２は、プロセスがスタートしたときの操作履歴を見つけると、さらにそのプロセスの実行ファイルのパス名からその実行ファイルを新規作成したときに記録された操作履歴をデータベース２２４から見つける。ここでは、メーラーによってウイルスに関連した実行ファイル（Ｍａｌｗａｒｅ．ｅｘｅ）が作成されたことがわかる。
【００９５】
（ｉｉｉ−ｉ）ウイルス侵入経路検索部２２２は、メーラーが実行ファイル（Ｍａｌｗａｒｅ．ｅｘｅ）を添付ファイルとして受信したときの操作履歴を検索して抽出する。さらに、ウイルス侵入経路検索部２２２は、見つかった操作履歴のレコードに記録されている差出人メールアドレス１７０１を抽出することで、メールを送信してきた他のクライアント装置１０ｂを特定する。
【００９６】
また、（ｉｉｉ−ｉ）でなく、（ｉｉｉ−ｉｉ）の経路で対象のメールを送信してきた他のクライアント装置１０ｂを特定してもよい。
【００９７】
（ｉｉｉ−ｉｉ）ウイルス侵入経路検索部２２２は、メーラーが実行ファイル（Ｍａｌｗａｒｅ．ｅｘｅ）を新規作成した直前に対象のメーラーが開いていたメールのメール情報(メールのオープンログ)を抽出し、そのメールのオープンログに記載されているＭｅｓｓａｇｅＩＤが一致する、メールの受信ログを抽出する。さらに、ウイルス侵入経路検索部２２２は、見つかった操作履歴のレコードに記録されている差出人メールアドレス１７０１を抽出することで、メールを送信してきた他のクライアント装置１０ｂを特定する。
【００９８】
またウイルス侵入経路検索部２２２は、（ｉｉｉ−ｉ）と（ｉｉｉ−ｉｉ）の両方を複合して使用して対象のメールを送信してきた他のクライアント装置１０ｂを特定してもよい。
【００９９】
なお、（ｉ）から（ｉｉｉ−ｉｉ）までは、ウイルスを検出したクライアント装置１０ａにおいて実行されてもよい。
【０１００】
（ｉｖ）ウイルス侵入経路検索部２２２は、差出人メールアドレス１７０１および添付ファイル名６０４に基づいて、問題の添付ファイルを受信したことを示す操作履歴のレコードをデータベース２２４から検索して抽出する。ウイルス侵入経路検索部２２２は、そのレコードに含まれている差出人メールアドレス１７０１を抽出することで、メールを送信してきた他のクライアント装置１０ｃを特定する。
【０１０１】
（ｖ）ウイルス侵入経路検索部２２２は、差出人メールアドレス１７０１および添付ファイル名６０４に基づいて、問題の添付ファイルを受信したことを示す操作履歴のレコードをデータベース２２４から検索して抽出する。ウイルス侵入経路検索部２２２は、そのレコードに含まれている差出人メールアドレス１７０１を抽出することで、メールを送信してきた外部の差出人（ｕｎｋｎｏｗｎ＠ｍａｌｗａｒｅ．ｊｐ）を特定する。なお、サーバ装置２０の管理下への最初の侵入口はクライアント装置１０ｃであることが特定される。
【０１０２】
図１８は、バックトレースの手順を示したフローチャートである。Ｓ１８０１〜Ｓ１８０３はウイルスを検知したクライアント装置が実行し、Ｓ１８０４〜Ｓ１８０７はサーバ装置２０が実行する。
【０１０３】
Ｓ１８０１で、ウイルス侵入経路検索部２０２は、ウイルス検知情報と操作履歴６００とに基づいてウイルスの実行ファイルを作成したプロセスがメーラーであることを特定する。
【０１０４】
Ｓ１８０２で、ウイルス侵入経路検索部２０２は、データベース２０４からメーラーに関する操作履歴を検索して抽出し、ウイルスに関連した添付ファイルを送信してきた送信者アドレスを特定する。
【０１０５】
Ｓ１８０３で、ウイルス侵入経路検索部２０２は、送信者アドレスが同一ドメイン内のアドレスか、それとも同一ドメイン外のアドレスかに基づいて、サーバ装置２０に検索を依頼するかどうかを判定する。送信者アドレスが同一ドメイン外であれば、そこで侵入口は特定されたことになるため、バックトレースを終了する。一方で、送信者アドレスが同一ドメイン内のアドレスであれば、サーバ装置２０のデータベース２２４からさらにバックトレースを継続できる。そこで、送信者アドレスが同一ドメイン内のアドレスであれば、Ｓ１８０４に進む。
【０１０６】
Ｓ１８０４で、サーバ装置２０のウイルス侵入経路検索部２２２は、クライアント装置１０からの検索依頼に付随した添付ファイル名に基づいてデータベース２２４を検索し、その添付ファイルを受信した操作履歴を抽出する。
【０１０７】
Ｓ１８０５で、ウイルス侵入経路検索部２２２は、見つかった操作履歴のメールアドレス情報（送信者アドレス１７０１）に基づいて、ウイルスを保持している可能性のある端末（添付ファイルを送信してきクライアント装置）を特定する。
【０１０８】
Ｓ１８０６で、ウイルス侵入経路検索部２２２は、ウイルスを保持している可能性のある端末のアドレス情報に基づいて、さらに他のクライアント装置の操作履歴をバックトレースするかどうかを判定する。ウイルスを保持している可能性のある端末のアドレスが同一ドメイン内のアドレスであれば、データベース２２４にはその操作履歴が保存されている。よって、ウイルス侵入経路検索部２２２は、さらに検索を実行するためにＳ１８０７に進む。Ｓ１８０７で、ウイルス侵入経路検索部２２２は、Ｓ１８０４ないしＳ１８０６を実行する。Ｓ１８０４ないしＳ１８０７を繰り返し実行することで、ウイルス侵入経路検索部２２２は、同一ドメイン内でウイルスに関連した添付ファイルを最初に送信した送信者（クライアント端末）を特定する。上述したように、外部から当該添付ファイル付きのメールを受信して同一ドメイン内の他のアドレスに転送したクライアント端末を特定する。一方で、ウイルスを保持している可能性のある端末のアドレスが同一ドメイン外のアドレスであれば、侵入口が特定できたため、バックトレースを終了する。
【０１０９】
●［リムーバブルデバイスによって複数のクライアント装置間でウイルスが移動したケース］
上述したようにＵＳＢメモリなどのリムーバブルデバイスは複数のクライアント装置間で使用することができる。よって、リムーバブルデバイスを経由して物理的にウイルスに関連したファイルが搬送されることがある。いずれかのクライアント装置でリムーバブルデバイスから読み出したファイルからウイルスが検知された場合に、どのクライアント装置によってどのリムーバブルデバイスにそのファイルが書き込まれてかを特定することは有意義であろう。
【０１１０】
図１９によれば、クライアント装置１０ｂにアタッチ（接続）されたリムーバブルデバイス１８に対してクライアント装置１０ｂがウイルス関連ファイル（Ｍａｌｗａｒｅ．ｄｏｃ）を書き込んだことを示している。さらに、リムーバブルデバイス１８は、別のクライアント装置１０ａに接続され、ウイルス関連ファイルがクライアント装置１０ａの記憶装置に１５にコピーされたり、ＣＰＵ１１によってオープンされたりする。その結果、ウイルス検知部２０３がウイルス関連ファイル（Ｍａｌｗａｒｅ．ｄｏｃ）にウイルスコードが含まれていることを検知する。
【０１１１】
図２０は、バックトレースの一例が示されている。
【０１１２】
（ｉ）ウイルス検知部２０３は、文書編集ソフトウエア（ｗｏｒｄｐｒｏｃ．ｅｘｅ）がウイルスコードを実行したことを検知する。ウイルス侵入経路検索部２０２は、ウイルスに関連したプロセスである文書編集ソフトウエア（ｗｏｒｄｐｒｏｃ．ｅｘｅ）が起動したことを示す操作履歴を探すために、ウイルス検知部２０３が受け取ったウイルス検知情報（プロセス名６０３、プロセスＩＤ１２０１）に基づいてデータベース２０４を検索する。その結果、ウイルス侵入経路検索部２０２は、ウイルスに関連したプロセスが起動したことを示す操作履歴のレコードを発見する。
【０１１３】
（ｉｉ）ウイルス侵入経路検索部２０２は、プロセスがスタートしたときの操作履歴を見つけると、プロセス識別情報が共通するレコードのうち、プロセスがスタートした時刻からウイルスが検知された時刻までに当該プロセスが何らかのファイルをオープンしたことを示す操作履歴のレコードを特定する。ウイルス侵入経路検索部２０２は、当該レコードを発見すると、そのレコードからオープンされたファイルのパス名（Ｍａｌｗａｒｅ．ｄｏｃ）を取得する。ウイルス侵入経路検索部２０２は、パス名に含まれているドライブレターがリムーバブルデバイスに割り当てられたドライブレターであることを認識する。
【０１１４】
（ｉｉｉ）ウイルス侵入経路検索部２０２は、ドライブレター「Ｆ：」を割り当てられたリムーバブルデバイスがアタッチされたことを示す操作履歴のレコードをデータベース２０４から検索して抽出する。
【０１１５】
（ｉｖ）ウイルス侵入経路検索部２０２は、発見したレコードからリムーバブルデバイスの識別情報（たとえば、ベンダーＩＤ２００２、プロダクトＩＤ２００３、シリアルＩＤ）を抽出する。さらに、ウイルス侵入経路検索部２０２は、抽出したリムーバブルデバイスの識別情報とウイルス関連ファイルのパス名（Ｍａｌｗａｒｅ．ｄｏｃ）とを検索依頼に付随してサーバ装置２０に送信する。
【０１１６】
（ｖ）サーバ装置２０のウイルス侵入経路検索部２２２は、検索依頼を受信すると、リムーバブルデバイス１８の識別情報を元にデータベース２２４を検索し、リムーバブルデバイス１８がアタッチされた操作履歴のレコードを特定する。この段階で、どのクライアント装置にリムーバブルデバイス１８が接続されていたかがわかる。さらに、ウイルス侵入経路検索部２２２は、そのレコードからリムーバブルデバイス１８に割り当てられたドライブレターを特定し、ウイルス関連ファイルのパス名（Ｍａｌｗａｒｅ．ｄｏｃ）にドライブレターを加えてパス名（Ｄ：￥Ｍａｌｗａｒｅ．ｄｏｃ）を作成し、作成したパス名を含む操作履歴のレコードを検索して抽出する。この例では、クライアント装置１０ｂにおいてファイル管理ソフト（ｆｉｌｅｍａｎａｇｅｒ．ｅｘｅ）によって問題のファイルがリムーバブルデバイスに書き込まれたことが判明する。
【０１１７】
なお、これ以降の侵入経路の検索処理はすでに説明したとおりである。
【０１１８】
図２１は、バックトレースの手順を示したフローチャートである。
【０１１９】
Ｓ２１０１で、ウイルス侵入経路検索部２０２は、操作履歴６００に記録されたファイルのパス名からウイルスがリムーバブルデバイス１８を経由してきたことを特定する。
【０１２０】
Ｓ２１０２で、ウイルス侵入経路検索部２０２は、操作履歴６００からリムーバブルデバイス１８の識別情報（たとえば、ベンダーＩＤ２００２、プロダクトＩＤ２００３、シリアルＩＤ）を抽出する。
【０１２１】
Ｓ２１０３で、ウイルス侵入経路検索部２０２は、サーバ装置２０で検索を行うかどうかを判定する。たとえば、サーバ装置２０が複数の端末装置の操作履歴を保持しているときは、サーバで検索を実行すると判定する。サーバ装置２０で実行しないと判定したときはバックトレースを終了し、サーバ装置２０で実行すべき判定したときは、サーバ装置２０に検索依頼を送信し、Ｓ２１０４に進む。
【０１２２】
Ｓ２１０４で、サーバ装置２０のウイルス侵入経路検索部２２２は、受信した検索依頼に付随したリムーバブルデバイスの識別情報とウイルスファイルのパス名とからリムーバブルデバイスにウイルスファイルを格納した操作履歴のレコードを操作履歴データベース２２４から特定する。
【０１２３】
Ｓ２１０５で、ウイルス侵入経路検索部２２２は、発見した操作履歴のレコードに含まれているＰＣ名からウイルスを保持しているクライアント装置を特定する。
【０１２４】
Ｓ２１０６で、ウイルス侵入経路検索部２２２は、ウイルスを保持しているクライアント装置の操作履歴をさらに特定するかどうかを判定する。たとえば、サーバ装置２０の管理者が実行を指示すると、Ｓ２１０７に進み、ウイルス侵入経路検索部２２２は、さらに侵入経路を特定する。これにより、ウイルスファイルがメールやウェブサイトのいずれか来たものであるかを特定できるようになる。
【０１２５】
●［バックトレースによって２つ以上の侵入経路が見つかった場合の絞り込み］
上述したようにバックトレースを実行すると、プロセスが起動してからウイルスが検知されるまでに、当該プロセスが複数のファイルを開いていることが多々ある。この場合、バックトレースの結果が複数となってしまい、どちらのファイルがウイルスに関連したファイルであるかを特定することができない。
【０１２６】
そこで、本実施例では、ウイルス侵入経路検索部２０２が、ウイルスが検知されたプロセスのプロセス識別情報に基づいて当該プロセスが起動してから当該ウイルスが検知されるまでに操作したファイルを特定し、複数のファイルが特定されたときに、当該複数のファイルに対して重みづけを実行することで、前記ウイルスの侵入経路に関連した１つのファイルを絞り込む。
【０１２７】
重みづけは、たとえば、ファイルが操作された日時、当該ファイルの実行結果、当該ファイルに対してウイルス検知を実行した結果、ネットワーク上で提供されるウイルス情報、および、ユーザにより入力された情報のうちの少なくとも１つにしたがって実行されてもよい。また重みづけを決定する処理は、外部のシステムからの情報提供を元に行っても良い。
【０１２８】
図２３は、バックトレースの手順を示したフローチャートである。このフローチャートは、クライアント装置１０で実行されてもよいし、サーバ装置２０で実行されてもよい。ここでは、クライアント装置１０が実行するものとして説明する。
【０１２９】
Ｓ２３０１で、ウイルス侵入経路検索部２０２は、バックトレースを実行する。
【０１３０】
Ｓ２３０２で、ウイルス侵入経路検索部２０２は、バックトレースの実行結果が２つ以上であるかどうかを判定する。複数の実行結果が得られたときはＳ２３０３に進み、１つの実行結果が得られたときは、Ｓ２３０５に進み、実行結果をサーバ装置２０に送信する。
【０１３１】
Ｓ２３０３で、ウイルス侵入経路検索部２０２は、重みづけを行うかどうかを判定する。たとえば、管理者がキーボードやポインティングデバイスによって重みづけの可否を入力する。重みづけを行わない場合は、Ｓ２３０５に進み、複数の実行結果をサーバ装置２０に通知する。一方で、重みづけを実行するときは、Ｓ２３０４に進む。
【０１３２】
Ｓ２３０４で、ウイルス侵入経路検索部２０２は、複数の実行結果に対して重みづけを実行することで、ウイルスの侵入経路に関連した１つの実行結果に絞り込む。重みづけは、たとえば、ファイルが操作された日時、当該ファイルの実行結果、当該ファイルに対してウイルス検知を実行した結果、および、ユーザにより入力された情報のうちの少なくとも１つにしたがって実行されてもよい。
【０１３３】
図２４は、サーバ装置２０で実行する重みづけ処理を示したフローチャートである。
【０１３４】
Ｓ２４０１で、ウイルス侵入経路検索部２２２は、バックトレースの結果をクライアント装置１０から取得する。
【０１３５】
Ｓ２４０２で、ウイルス侵入経路検索部２２２は、取得したバックトレース結果から検索対象数Ｎを決定する。Ｎには、最初にバックトレース結果の数が代入される。
【０１３６】
Ｓ２４０３で、ウイルス侵入経路検索部２２２は、検索対象数Ｎがゼロになったかどうかを判定する。ゼロでなければ、Ｓ２４０４に進む。
【０１３７】
Ｓ２４０４で、ウイルス侵入経路検索部２２２は、Ｎ個の検索対象から１つの検索対象を任意に抽出する。
【０１３８】
Ｓ２４０５で、ウイルス侵入経路検索部２２２は、抽出した検索対象について操作履歴データベース２２４を用いてバックトレースを実行する。
【０１３９】
Ｓ２４０６で、ウイルス侵入経路検索部２２２は、バックトレースの結果を記憶装置２５に書き込む。
【０１４０】
Ｓ２４０７で、ウイルス侵入経路検索部２２２は、Ｎ個の検索対象から今回検索した検索対象を削除し、さらにＮを１つ減算する。その後、Ｓ２４０１に戻る。
【０１４１】
Ｓ２４０３で、Ｎがゼロになると、Ｓ２４０８に進む。
【０１４２】
Ｓ２４０８で、ウイルス侵入経路検索部２２２は、記録した結果を分析し、重みづけを実行する。
【０１４３】
Ｓ２４０９で、重みづけによって特定されたバックトレースの結果をクライアント装置１０に通知する。
【０１４４】
以上説明したように本実施例によれば、端末装置へのウイルスの侵入経路をバックトレースするウイルス侵入経路特定装置が提供される。操作履歴データベース２０４、２２４は、端末装置において実行された操作の履歴である操作履歴を記憶した操作履歴記憶手段として機能する。ウイルス侵入経路検索部２０２、２２２は、端末装置においてウイルスが検出されると、操作履歴記憶手段に記憶されている当該操作履歴から当該ウイルスが端末装置に最初に保存された日時を特定し、当該特定した日時に実行された操作の内容からウイルスの侵入経路を特定する特定手段として機能する。本発明によれば、操作履歴を用いることで従来よりも詳細にウイルスの感染経路をバックトレースできるようになる。
【０１４５】
また、本実施例によれば、ウイルス侵入経路特定装置は、クライアント装置１０に設けられてもよいし、サーバ装置２０に設けられてもよい。クライアント装置１０に設ければ、スタンドアローン環境でも侵入経路を特定できるようになる。サーバ装置２０に設ければ、クライアント装置１０の特定処理による負荷を軽減できる。
【０１４６】
また、クライアント装置１０は、ウイルスを検出するウイルス検出手段として機能するウイルス検知部２０３と、ウイルス検出手段が検出したウイルスの侵入経路を特定するよう依頼するためのリクエストをサーバ装置に対して送信するリクエスト送信手段として機能するエージェントサービス２０１やウイルス侵入経路検索部２０２を備えていてもよい。クライアント装置１０の負荷を軽減できるだけでなく、サーバ装置においてさらに詳細に経路を特定できるようになろう。
【０１４７】
ウイルス侵入経路特定装置がクライアント装置１０に設けられているとともに、クライアント装置１０置に接続されたサーバ装置２０にも設けられていてもよい。クライアント装置１０に設けられたウイルス侵入経路特定装置と、サーバ装置２０に設けられたウイルス侵入経路特定装置とが連携して端末装置へのウイルスの侵入経路を特定してもよい。これにより、負荷を分散できる。また、クライアント装置１０に記憶する操作履歴を削減できる。
【０１４８】
クライアント装置１０は、クライアント装置１０の操作履歴記憶手段に記憶されている操作履歴をサーバ装置に記憶させるために転送し、転送した操作履歴のすべてまたは一部を削除する操作履歴管理手段と、特定手段が、操作履歴記憶手段に記憶されている操作履歴からウイルスの侵入経路を特定できなかったときに、サーバ装置に記憶されている操作履歴からウイルスの侵入経路を特定するよう依頼するためのリクエストをサーバ装置に対して送信するリクエスト送信手段として機能するエージェントサービス２０１やウイルス侵入経路検索部２０２をさらに有していてもよい。
【０１４９】
また、ウイルス侵入経路検索部２０２、２２２は、操作履歴を構成する各レコードに含まれている操作の内容が、ウイルスが侵入する際に実行される特定の操作内容かどうかを判定することで、ウイルスが端末装置に侵入した侵入口を特定してもよい。
【０１５０】
また、ウイルス侵入経路検索部２０２、２２２は、ウイルスの保存に関与した子プロセスを呼び出した親プロセスについても操作履歴から検索することで、当該ウイルスの侵入経路を特定してもよい。
【０１５１】
サーバ装置２０に設けられた操作履歴記憶手段（データベース２２４）には、クライアント装置１０に設けられた操作履歴記憶手段（データベース２０４）に記憶されている操作履歴の期間よりも長期間にわたる操作履歴が記憶されていてもよい。
【０１５２】
また、サーバ装置２０に設けられた特定手段（ウイルス侵入経路検索部２２２）は、端末装置に設けられた特定手段（ウイルス侵入経路検索部２０２）が調査した期間よりもさらに過去の期間に取得された操作履歴についてウイルスの侵入経路を特定してもよい。
【０１５３】
また、サーバ装置２０に設けられた操作履歴記憶手段は、複数の端末装置において取得された操作履歴を記憶しており、サーバ装置２０に設けられた特定手段は、複数の端末装置のうちの１つの端末装置においてウイルスが見つかると、そのウイルスに関連したパス名またはプロセスの識別情報をもとに複数の端末装置の操作履歴を検索して、当該ウイルスの侵入経路を特定してもよい。
【０１５４】
また、ウイルス侵入経路検索部２０２、２２２は、ウイルスが検知されたプロセスのプロセス識別情報に基づいて当該プロセスが起動してから当該ウイルスが検知されるまでに操作したファイルのパス名を操作履歴記憶手段から検索し、検索により発見されたパス名に基づいてファイルを提供した端末装置を特定してもよい。
【０１５５】
また、ウイルス侵入経路検索部２０２、２２２は、ウイルスが検知されたプロセスのプロセス識別情報に基づいて当該プロセスが起動してから当該ウイルスが検知されるまでに操作したファイルのパス名を操作履歴記憶手段から検索し、当該プロセスが起動してから当該ウイルスが検知されるまでに操作したファイルが発見されなかったときは、当該プロセスそれ自体をウイルスと認定してもよい。
【０１５６】
また、ウイルス侵入経路検索部２０２、２２２は、ウイルスが検知されたプロセスのプロセス識別情報に基づいて当該プロセスの実行ファイルを作成した他のプロセスを特定し、当該他のプロセスがメーラーかどうかを判定し、当該メーラーが当該プロセスの実行ファイルを添付したメールを受信したことを示す操作履歴を特定し、当該操作履歴に基づいて当該メールの差出人を特定し、当該差出人が当該メールを転送したことを示す操作履歴を特定し、当該メールを転送した差出人が当該メールをさらに他の差出人から受信したことを示す操作履歴を特定し、当該操作履歴に基づいて当該ウイルスの侵入経路を特定してもよい。
【０１５７】
また、ウイルス侵入経路検索部２０２、２２２は、ウイルスが検知されたプロセスのプロセス識別情報に基づいて当該プロセスが操作したファイルのパス名を特定し、当該ファイルのパス名に基づいて当該ファイルがリムーバブルデバイスに記憶されていたことを示す操作履歴を特定し、当該操作履歴から当該リムーバブルデバイスの識別情報を特定し、当該リムーバブルデバイスの識別情報から、当該リムーバブルデバイスを接続したことのある他の端末装置を特定し、当該他の端末装置の操作履歴からウイルスの侵入経路を特定してもよい。
【０１５８】
また、ウイルス侵入経路検索部２０２、２２２は、検知されたウイルスがすでにウェブサイトにアップロードされていた場合、当該ウイルスを参照してアップロードしたプロセスに基づき当該ウェブサイトのＵＲＬを特定し、ウイルスの侵入経路および拡散経路を特定してもよい。
【０１５９】
また、ウイルス侵入経路検索部２０２、２２２は、検知されたウイルスがメールに添付されて送信されていた場合、当該ウイルスを参照して添付したプロセスから当該メールのＭｅｓｓａｇｅＩＤ、Ｆｒｏｍ、Ｔｏなどメール情報を特定し、ウイルスの拡散経路や侵入経路を特定してもよい。
【０１６０】
また、ウイルス侵入経路検索部２０２、２２２を保持する端末装置で検知されたウイルスが、ファイル共有により他の端末装置から当該端末装置内に作成されたファイルであることもある。この場合、当該端末装置の操作履歴だけではどの端末装置によって当該ウイルスが作成されたのかを特定できないことがある。その場合、ウイルス侵入経路検索部２０２、２２２は、ファイル共有に関与ないしは参加している他の端末装置の操作履歴を取得してその操作履歴からウイルスの侵入経路を特定してもよい。
【０１６１】
また、ウイルス侵入経路検索部２０２、２２２は、検知されたウイルスを作成したプロセスがＺＩＰファイルを参照していた場合、当該ＺＩＰファイルから解凍されて作成されたファイルと、ウイルス侵入検知部２０２、２２２が検知したウイルスを紐付けすることで、ウイルスの侵入経路を特定してもよい。
【０１６２】
なお、検知されたウイルスに関与したプロセスが複数のＺＩＰファイルを参照していた場合、ウイルス侵入経路検索部２０２、２２２は、当該複数のＺＩＰファイルに対して重みづけを実行することで、ウイルスの侵入経路に関連した一つのファイルを絞り込むように構成されてもよい。
【０１６３】
なお、重みづけとしての一例として、ウイルスファイルが新規作成された時間の直前に参照されたＺＩＰファイルに大きな重みを付与する方法が採用されてもよいし、またそれ以外の重みづけが（例えば、ファイルが操作された日時、当該ファイルの実行結果、当該ファイルに対してウイルス検知を実行した結果、および、ユーザにより入力された情報など）が実行されてもよい。これにより、ウイルスの侵入経路に関連した一つのファイルが絞り込まれる。このように、ウイルスファイルが新規作成された時刻に最も近い時刻に参照されたＺＩＰファイルには最も大きな重みが付与されることになろう。
【０１６４】
また、ウイルス侵入経路検索部２０２、２２２は、対象のウイルスファイルがＺＩＰ圧縮されていた場合も同様に、該当ウイルスファイルが含まれたＺＩＰファイルを特定し、ウイルスの経路を特定してもよい。
【０１６５】
また、ウイルス侵入経路検索部２０２、２２２は、ウイルスが検知されたプロセスのプロセス識別情報に基づいて当該プロセスが起動してから当該ウイルスが検知されるまでに操作したファイルを特定し、複数のファイルが特定されたときに、当該複数のファイルに対して重みづけを実行することで、ウイルスの侵入経路に関連した１つのファイルを絞り込むように構成されていてもよい。
【０１６６】
なお、重みづけは、ファイルが操作された日時、当該ファイルの実行結果、当該ファイルに対してウイルス検知を実行した結果、および、ユーザにより入力された情報のうちの少なくとも１つにしたがって実行されてもよい。
【０１６７】
ウイルス侵入経路検索部２０２、２２２によって１つまたは複数の結果（侵入経路）が特定された場合、ウイルス侵入経路検索部２０２、２２２は、その結果単体を考慮したり、または組み合わせを考慮したりして、結果に対して重みを設定してもよい。
【０１６８】
またアンチウイルスソフト（ウイルス検知部２０３）がウイルスを検知した際に、その結果をウイルス侵入経路検索部２０２に自動で通知する、通知しないに関らず、手動でウイルスが検知されたクライアント装置、または、そのクライアント装置を管理しているサーバ上に存在するウイルス侵入経路検索部２２２にウイルス情報を通知して、任意のタイミングでバックトレースを行ってもよい。
【０１６９】
上述した各種の手段は、コンピュータがプログラムを実行することで実現されてもよい。また、バックトレースの結果に基づいて、クライアント装置やサーバ装置の操作を制限してもよい。例えば、バックトレース結果から、ウイルスは特定のウェブサイトを閲覧したときにダウンロードされたものである事が判明した場合、エージェントサービス２０１や管理部２２５は、そのウェブサイトへのアクセスを禁止し、そのウイルスに対しても動作を制限または禁止する。これにより、ウイルスからの攻撃を未然に防止することも可能となる。
【０１７０】
またエージェントサービス２０１や管理部２２５は、ウイルスと判断されたファイルを隔離したり、削除したりしてもよい。
【０１７１】
またウイルス検知部２０３は、ウイルスと判断したファイルを管理部２２５に送信し、そのファイルを管理部２２５が収集してもよいし、管理部２２５の外部に設けられたサーバが収集してもよい。
【０１７２】
本発明は上記実施の形態に制限されるものではなく、本発明の精神及び範囲から離脱することなく、様々な変更及び変形が可能である。従って、本発明の範囲を公にするために、以下の請求項を添付する。
【０１７３】
本願は、２０１２年１２月０７日提出の日本国特許出願特願２０１２−２６８７８５号を基礎として優先権を主張するものであり、その記載内容の全てを、ここに援用する。
【図１】
2018185860.tif 000003
【図２】
2018185860.tif 000004
【図３】
2018185860.tif 000005
【図４】
2018185860.tif 000006
【図５】
2018185860.tif 000007
【図６】
2018185860.tif 000008
【図７】
2018185860.tif 000009
【図８】
2018185860.tif 000010
【図９】
2018185860.tif 000011
【図１０】
2018185860.tif 000012
【図１１】
2018185860.tif 000013
【図１２】
2018185860.tif 000014
【図１３】
2018185860.tif 000015
【図１４】
2018185860.tif 000016
【図１５】
2018185860.tif 000017
【図１６】
2018185860.tif 000018
【図１７】
2018185860.tif 000019
【図１８】
2018185860.tif 000020
【図１９】
2018185860.tif 000021
【図２０】
2018185860.tif 000022
【図２１】
2018185860.tif 000023
【図２２】
2018185860.tif 000024
【図２３】
2018185860.tif 000025
【図２４】
2018185860.tif 000026
【図２５】
2018185860.tif 000027
【手続補正書】
【提出日】平成30年7月23日(2018.7.23)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
端末装置へのウイルスの侵入経路をバックトレースするウイルス侵入経路特定装置であって、
前記端末装置において実行された操作の履歴である操作履歴を記憶した操作履歴記憶手段と、
前記端末装置においてウイルスが検出されると、前記操作履歴記憶手段に記憶されている当該操作履歴から前記ウイルスの侵入経路を特定する特定手段と
を有し、
前記ウイルス侵入経路特定装置が前記端末装置に設けられているとともに、前記端末装置に接続されたサーバ装置にも設けられており、前記端末装置に設けられた前記ウイルス侵入経路特定装置と、前記サーバ装置に設けられた前記ウイルス侵入経路特定装置とが連携して前記端末装置へのウイルスの侵入経路を特定し、
前記端末装置に設けられるウイルス侵入経路特定装置は、
前記特定手段が前記端末装置の前記操作履歴記憶手段に記憶されている操作履歴からウイルスの侵入経路を特定できなかったときに、前記サーバ装置に記憶されている操作履歴から前記ウイルスの侵入経路を特定するよう依頼するためのリクエストを前記サーバ装置に対して送信するリクエスト送信手段をさらに有する
ことを特徴とするウイルス侵入経路特定装置。
【請求項２】
端末装置へのウイルスの侵入経路をバックトレースするウイルス侵入経路特定装置であって、
前記端末装置において実行された操作の履歴である操作履歴を記憶した操作履歴記憶手段と、
前記端末装置においてウイルスが検出されると、前記操作履歴記憶手段に記憶されている当該操作履歴から前記ウイルスの侵入経路を特定する特定手段とを有し、
前記ウイルス侵入経路特定装置が前記端末装置に設けられているとともに、前記端末装置に接続されたサーバ装置にも設けられており、前記サーバ装置に設けられた前記特定手段は、前記端末装置に設けられた前記特定手段が調査した期間よりもさらに過去の期間に取得された操作履歴について前記ウイルスの侵入経路を特定することを特徴とするウイルス侵入経路特定装置。
【請求項３】
端末装置へのウイルスの侵入経路をバックトレースするウイルス侵入経路特定装置であって、
前記端末装置において実行された操作の履歴である操作履歴を記憶した操作履歴記憶手段と、
前記端末装置においてウイルスが検出されると、前記操作履歴記憶手段に記憶されている当該操作履歴から前記ウイルスの侵入経路を特定する特定手段とを有し、
前記特定手段は、ウイルスが検知されたプロセスのプロセス識別情報に基づいて当該プロセスが起動してから当該ウイルスが検知されるまでに操作したファイルを特定し、複数のファイルが特定されたときに、当該複数のファイルに対して重みづけを実行することで、前記ウイルスの侵入経路に関連した１つのファイルを絞り込むことを特徴とするウイルス侵入経路特定装置。
【請求項４】
端末装置へのウイルスの侵入経路をバックトレースするウイルス侵入経路特定装置において実行される方法であって、
前記端末装置において実行された操作の履歴である操作履歴を操作履歴記憶手段に記憶する工程と、
前記端末装置においてウイルスが検出されると、前記操作履歴記憶手段に記憶されている当該操作履歴から前記ウイルスの侵入経路を特定する工程と
を有し、
前記ウイルス侵入経路特定装置が前記端末装置に設けられているとともに、前記端末装置に接続されたサーバ装置にも設けられており、
前記ウイルスの侵入経路を特定する工程は、
前記端末装置に設けられた前記ウイルス侵入経路特定装置が前記端末装置の前記操作履歴記憶手段に記憶されている操作履歴からウイルスの侵入経路を特定できなかったときに、前記サーバ装置に記憶されている操作履歴から前記ウイルスの侵入経路を特定するよう依頼するためのリクエストを前記サーバ装置に対して送信することで、前記端末装置に設けられた前記ウイルス侵入経路特定装置と、前記サーバ装置に設けられた前記ウイルス侵入経路特定装置とが連携して前記端末装置へのウイルスの侵入経路を特定する工程を含む
ことを特徴とする方法。
【請求項５】
端末装置へのウイルスの侵入経路をバックトレースするウイルス侵入経路特定装置としてコンピュータを機能させるプログラムであって、前記プログラムは、前記コンピュータに、
前記端末装置において実行された操作の履歴である操作履歴を記憶した操作履歴記憶手段と、
前記端末装置においてウイルスが検出されると、前記操作履歴記憶手段に記憶されている当該操作履歴から前記ウイルスの侵入経路を特定する特定手段と、
前記特定手段が、前記端末装置の前記操作履歴記憶手段に記憶されている操作履歴からウイルスの侵入経路を特定できなかったときに、前記端末装置に接続されたサーバ装置に記憶されている操作履歴から前記ウイルスの侵入経路を特定するよう依頼するためのリクエストを、前記サーバ装置に対して送信するリクエスト送信手段
として機能させ、
前記ウイルス侵入経路特定装置が前記端末装置に設けられているとともに、前記サーバ装置にも設けられており、前記端末装置に設けられた前記ウイルス侵入経路特定装置と、前記サーバ装置に設けられた前記ウイルス侵入経路特定装置とが連携して前記端末装置へのウイルスの侵入経路を特定することを特徴とするプログラム。
【請求項６】
端末装置へのウイルスの侵入経路をバックトレースするウイルス侵入経路特定装置において実行される方法であって、
前記端末装置において実行された操作の履歴である操作履歴を操作履歴記憶手段に記憶する工程と、
前記端末装置においてウイルスが検出されると、前記操作履歴記憶手段に記憶されている当該操作履歴から前記ウイルスの侵入経路を特定する工程とを有し、
前記ウイルス侵入経路特定装置が前記端末装置に設けられているとともに、前記端末装置に接続されたサーバ装置にも設けられており、前記サーバ装置に設けられた前記ウイルス侵入経路特定装置は、前記端末装置に設けられた前記ウイルス侵入経路特定装置が調査した期間よりもさらに過去の期間に取得された操作履歴について前記ウイルスの侵入経路を特定することを特徴とする方法。
【請求項７】
端末装置へのウイルスの侵入経路をバックトレースするウイルス侵入経路特定装置としてコンピュータを機能させるプログラムであって、前記コンピュータを、
前記端末装置において実行された操作の履歴である操作履歴を記憶した操作履歴記憶手段と、
前記端末装置においてウイルスが検出されると、前記操作履歴記憶手段に記憶されている当該操作履歴から前記ウイルスの侵入経路を特定する特定手段として機能させ、
前記ウイルス侵入経路特定装置が前記端末装置に設けられているとともに、前記端末装置に接続されたサーバ装置にも設けられており、前記サーバ装置に設けられた前記特定手段は、前記端末装置に設けられた前記特定手段が調査した期間よりもさらに過去の期間に取得された操作履歴について前記ウイルスの侵入経路を特定することを特徴とするプログラム。
【請求項８】
端末装置へのウイルスの侵入経路をバックトレースするウイルス侵入経路特定装置において実行される方法であって、
前記端末装置において実行された操作の履歴である操作履歴を操作履歴記憶手段に記憶する記憶工程と、
前記端末装置においてウイルスが検出されると、前記操作履歴記憶手段に記憶されている当該操作履歴から前記ウイルスの侵入経路を特定する特定工程とを有し、
前記特定工程は、ウイルスが検知されたプロセスのプロセス識別情報に基づいて当該プロセスが起動してから当該ウイルスが検知されるまでに操作したファイルを特定する工程と、複数のファイルが特定されたときに、当該複数のファイルに対して重みづけを実行することで、前記ウイルスの侵入経路に関連した１つのファイルを絞り込む工程とを含むことを特徴とする方法。
【請求項９】
端末装置へのウイルスの侵入経路をバックトレースするウイルス侵入経路特定装置としてコンピュータを機能させるプログラムであって、前記コンピュータを、
前記端末装置において実行された操作の履歴である操作履歴を記憶した操作履歴記憶手段と、
前記端末装置においてウイルスが検出されると、前記操作履歴記憶手段に記憶されている当該操作履歴から前記ウイルスの侵入経路を特定する特定手段として機能させ、
前記特定手段は、ウイルスが検知されたプロセスのプロセス識別情報に基づいて当該プロセスが起動してから当該ウイルスが検知されるまでに操作したファイルを特定し、複数のファイルが特定されたときに、当該複数のファイルに対して重みづけを実行することで、前記ウイルスの侵入経路に関連した１つのファイルを絞り込むことを特徴とするプログラム。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００１０
【補正方法】変更
【補正の内容】
【００１０】
本発明は、たとえば、
端末装置へのウイルスの侵入経路をバックトレースするウイルス侵入経路特定装置であって、
前記端末装置において実行された操作の履歴である操作履歴を記憶した操作履歴記憶手段と、
前記端末装置においてウイルスが検出されると、前記操作履歴記憶手段に記憶されている当該操作履歴から前記ウイルスの侵入経路を特定する特定手段と
を有し、
前記ウイルス侵入経路特定装置が前記端末装置に設けられているとともに、前記端末装置に接続されたサーバ装置にも設けられており、前記端末装置に設けられた前記ウイルス侵入経路特定装置と、前記サーバ装置に設けられた前記ウイルス侵入経路特定装置とが連携して前記端末装置へのウイルスの侵入経路を特定し、
前記端末装置に設けられるウイルス侵入経路特定装置は、
前記特定手段が前記端末装置の前記操作履歴記憶手段に記憶されている操作履歴からウイルスの侵入経路を特定できなかったときに、前記サーバ装置に記憶されている操作履歴から前記ウイルスの侵入経路を特定するよう依頼するためのリクエストを前記サーバ装置に対して送信するリクエスト送信手段をさらに有する
ことを特徴とするウイルス侵入経路特定装置を提供する。