(57)【特許請求の範囲】
【請求項１】
一般アプリケーションと、記憶装置に作成されたファイルシステムとの要求を受信するフィルタマネージャ、及び、当該フィルタマネージャと通信するミニフィルタとを有する情報処理装置であって、
前記ミニフィルタは、
前記一般アプリケーションと前記フィルタマネージャが標準でアクセスできる標準ファイルシステムとの要求を、前記フィルタマネージャを介して受信、ならびに、前記一般アプリケーションと前記フィルタマネージャが標準ではアクセスできない非標準ファイルシステムとの要求をダイレクトに受信する受信手段と、
前記要求が前記フィルタマネージャを介して受信されたのか、ダイレクトに受信したのかを判定する判定手段と、
該判定手段が、前記要求が前記フィルタマネージャを介して受信されたと判定した場合、前記要求を前記フィルタマネージャに返す第１の処理手段と、
前記非標準ファイルシステム、または前記一般アプリケーションに対してアクセスするアクセス手段と、
前記判定手段が、前記要求がダイレクトに受信したと判定した場合、前記アクセス手段により前記非標準ファイルシステムまたは前記一般アプリケーションにアクセスする第２の処理手段と
を有することを特徴とする情報処理装置。
【請求項２】
更に、前記ミニフィルタは、前記受信した標準ファイルシステムとの要求、及び非標準ファイルシステムとの要求を、予め設定された分析プログラムに通知する通知手段を備えることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
更に、前記ミニフィルタは、前記受信した標準ファイルシステムとの要求、及び非標準ファイルシステムとの要求を制御する制御手段を備えることを特徴とする請求項１に記載の情報処理装置。
【請求項４】
一般アプリケーションと、記憶装置に作成されたファイルシステムとの要求を受信するフィルタマネージャ、及び、当該フィルタマネージャと通信するミニフィルタとを有する情報処理装置の制御方法であって、
前記ミニフィルタが、前記一般アプリケーションと前記フィルタマネージャが標準でアクセスできる標準ファイルシステムとの要求を、前記フィルタマネージャを介して受信、ならびに、前記一般アプリケーションと前記フィルタマネージャが標準ではアクセスできない非標準ファイルシステムとの要求をダイレクトに受信する受信工程と、
前記ミニフィルタが、前記要求が前記フィルタマネージャを介して受信されたのか、ダイレクトに受信したのかを判定する判定工程と、
該判定工程で前記要求が前記フィルタマネージャを介して受信されたと判定された場合、前記ミニフィルタが、前記要求を前記フィルタマネージャに返す第１の処理工程と、
前記ミニフィルタが、前記非標準ファイルシステム、または前記一般アプリケーションに対してアクセスするアクセス工程と、
前記判定で前記要求がダイレクトに受信したと判定された場合、前記ミニフィルタが、前記アクセス手段により前記非標準ファイルシステムまたは前記一般アプリケーションにアクセスする第２の処理工程と
を有することを特徴とする情報処理装置の制御方法。
【請求項５】
プロセッサに読み込ませ実行させることで、前記プロセッサを、一般アプリケーションと、記憶装置に作成されたファイルシステムとの要求を受信するフィルタマネージャと通信するミニフィルタとして機能させるコンピュータプログラムであって、
前記プロセッサを、
前記一般アプリケーションと前記フィルタマネージャが標準でアクセスできる標準ファイルシステムとの要求を、前記フィルタマネージャを介して受信、ならびに、前記一般アプリケーションと前記フィルタマネージャが標準ではアクセスできない非標準ファイルシステムとの要求をダイレクトに受信する受信手段、
前記要求が前記フィルタマネージャを介して受信されたのか、ダイレクトに受信したのかを判定する判定手段、
該判定手段が、前記アクセスが前記フィルタマネージャを介して受信されたと判定した場合、前記要求を前記フィルタマネージャに返す第１の処理手段、
前記非標準ファイルシステム、または前記一般アプリケーションに対してアクセスするアクセス手段、
前記判定手段が、前記要求がダイレクトに受信したと判定した場合、前記アクセス手段により前記非標準ファイルシステムまたは前記一般アプリケーションにアクセスする第２の処理手段
として機能させることを特徴とするコンピュータプログラム。
【請求項６】
請求項５に記載のコンピュータプログラムを格納したことを特徴とするコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はファイルシステムフィルタドライバ用のミニフィルタに関するものである。
【背景技術】
【０００２】
米国マイクロソフト社が提供するＷｉｎｄｏｗｓ（登録商標）は、広く普及しているオペレーティングシステム（以下、ＯＳ）となっている。そのため、それを攻撃する悪意の或るプログラムも多く、且つ、そのための防御やセキュリティの維持するためのアプリケーションも非常に多い。
【０００３】
セキュリティ維持等の目的のため、各種アプリケーションを介して、ファイルシステムへのアクセス（例えば、ファイルの作成、削除、コピー等）を検出することは重要事項たる。通常、ファイルシステムへのアクセスを検出する場合、ファイルシステムフィルタドライバ（非特許文献１、非特許文献２、非特許文献３）を利用する。例えば、米国マイクロソフト社は、拡張を容易にしたフィルタマネージャというファイルシステムフィルタドライバを提供している。サードパーティは、このフィルタマネージャと通信する、「ミニフィルタ（ｍｉｎｉｆｉｌｔｅｒ）」を開発し、このミニフィルタを利用した分析アプリケーションを作成すれば、ユーザが操作する一般アプリケーションが、何時、どのようなファイルへアクセスしたか等のログ情報を作成することもできる。
【０００４】
図１は上記フィルタマネージャの周辺におけるプログラム構造の一例を示している。ここでのミニフィルタは、ファイルシステムのアクセスログを作成するためのものであることを前提にして説明する。一般アプリケーション１０１は、文書編集アプリケーション、表計算アプリケーション等であるが、場合によってはウイルスプログラムの場合もありえる。フィルタマネージャ２０１は、アプリケーションが標準ファイルシステムドライバ３０１へのアクセスを横取りし、それをミニフィルタ４０１に渡す。ミニフィルタ４０１は、どのアプリケーションからどのファイルシステムのどのファイルにアクセス要求があって、そのアクセスの種類を知ることができるので、それを分析プログラム５０１に通知する。分析プログラム５０１は、この通知を受け、ログ情報を作成する等の処理を行う。また、ミニフィルタ４０１は、フィルタマネージャ２０１から横取りした要求を、フィルタマネージャ２０１に返し、その要求に対する処理を継続させる。この結果、一般アプリケーション１０１からの要求は、当初の目的である低レベルの標準ファイルシステムドライバ３０１に渡され、標準ファイルシステムへのアクセスが行われる。
【０００５】
上記の通りであるが、因に、分析プログラム５０１がウイルス検出プログラムであった場合について若干説明する。一般アプリケーション１０１からファイルシステムに対する要求が読み取りであるとき、その読み取りまでは上記と同じである。そして、実際に読み取ったデータをフィルタマネージャ２０１が標準ファイルシステムドライバ３０１から受けとると、ミニフィルタ４０１がそれを横取りし、分析プログラム５０１にてウイルスの有無の解析を行うこととなる。そして、ウイルスが存在しないと判定結果を受けた場合、ミニフィルタ４０１は、そのデータをフィルタマネージャ２０１を介して、一般アプリケーション１０１にそのデータを渡すことになる。一方、ウイルスを発見した場合、ミニフィルタ４０１は、読出したデータが一般アプリケーションに渡されることを阻止し、警告を発したりすることとなる。この結果、ウイルスプログラムが実行されることを阻止する。
【０００６】
さて、米国マイクロソフト社が提供する上記のフィルタマネージャというファイルシステムフィルタドライバがアクセスできるのは、ＦＡＴ、ＦＡＴ３２、ＮＴＦＳ等、ＯＳが標準でサポートするファイルシステム（以下、標準ファイルシステムという）だけである。
【０００７】
換言すれば、図１の構成のままでは、標準ファイルシステム以外のファイルシステム（以下、非標準ファイルシステムという）へのアクセスログを得ることはできない。非標準ファイルシステムは、例えば、Citrix社のCdmRedirector等、シンクライアント環境に対応するファイルシステムを含む。
【先行技術文献】
【非特許文献】
【０００８】
【非特許文献１】Filter Driver Development Guide  ＜http://download.microsoft.com/download/e/b/a/eba1050f-a31d-436b-9281-92cdfeae4b45/filterdriverdeveloperguide.doc ＞
【非特許文献２】Filter Manager  ＜http://download.microsoft.com/download/f/0/5/f05a42ce-575b-4c60-82d6-208d3754b2d6/Filter_Manager.ppt＞
【非特許文献３】Filter Manager Overview  ＜http://download.microsoft.com/download/f/0/5/f05a42ce-575b-4c60-82d6-208d3754b2d6/Overview-May04.ppt＞
【発明の概要】
【発明が解決しようとする課題】
【０００９】
かかる問題を解決するため、米国マイクロソフト社が提供する「フィルタドライバ」とは別に、その非標準ファイルシステムにアクセスするための新たなファイルシステムフィルタドライバ（以下、非標準ファイルシステムフィルタドライバという）を開発することである。図２は、かかる非標準ファイルシステムフィルタドライバ（図示の２０２）を実装した場合の、プログラム構造を示している。確かに、図２のような非標準ファイルシステムフィルタドライバ２０２を実装することで、分析プログラム５０１は、一応は、低レベルの非標準ファイルシステムドライバ３０２へのアクセスログを作成することができる。
【００１０】
しかし、この構成では、個々の標準、非標準ファイルシステムのアクセスを検出することはできるものの、それらの因果関係を把握することは困難である。例えば、一般アプリケーション１０１（ファイルブラウザ等）が、標準ファイルシステム内の或るファイルを、非標準ファイルシステムにコピーする要求を行ったとき、分析プログラム５０１が生成把握できるのは、せいぜい、標準ファイルシステム３０１に対して読み込み要求があり、非標準ファイルシステムに対して書き込み要求があった点に留まり、その読み込みと書き込みがコピー目的であることは不明となる。これを別な言い方をすれば、標準ファイルシステムと非標準ファイルシステムとに跨がったアクセス要求については、同期を持たせることが困難であると言える。
【００１１】
本発明はかかる問題に鑑みてなされたものであり、標準ファイルシステム及び非標準ファイルシステムへのアクセスログ収集するのに都合が良く、且つ、それら異なるファイルシステム間のアクセスのログの同期も容易にする技術を提供しようとするものである。
【課題を解決するための手段】
【００１２】
この課題を解決するため、例えば本発明の情報処理装置は以下の構成を備える。すなわち、
一般アプリケーションと、記憶装置に作成されたファイルシステムとの要求を受信するフィルタマネージャ、及び、当該フィルタマネージャと通信するミニフィルタとを有する情報処理装置であって、
前記ミニフィルタは、
前記一般アプリケーションと前記フィルタマネージャが標準でアクセスできる標準ファイルシステムとの要求を、前記フィルタマネージャを介して受信、ならびに、前記一般アプリケーションと前記フィルタマネージャが標準ではアクセスできない非標準ファイルシステムとの要求をダイレクトに受信する受信手段と、
前記要求が前記フィルタマネージャを介して受信されたのか、ダイレクトに受信したのかを判定する判定手段と、
該判定手段が、前記要求が前記フィルタマネージャを介して受信されたと判定した場合、前記要求を前記フィルタマネージャに返す第１の処理手段と、
前記非標準ファイルシステム、または前記一般アプリケーションに対してアクセスするアクセス手段と、
前記判定手段が、前記要求がダイレクトに受信したと判定した場合、前記アクセス手段により前記非標準ファイルシステムまたは前記一般アプリケーションにアクセスする第２の処理手段とを有する。
【発明の効果】
【００１３】
本発明によれば、標準ファイルシステム及び非標準ファイルシステムへのアクセスログ収集するのに都合が良く、且つ、それら異なるファイルシステム間のアクセスのログの同期も容易にできる。
【図面の簡単な説明】
【００１４】
【図１】標準ファイルシステムへのアクセスログを検出するためのフィルタマネージャ周辺のプログラム構造を示す図である。
【図２】標準ファイルシステム及び非標準ファイルシステムへのアクセスログを検出するためのフィルタマネージャ周辺のプログラム構造とその問題点を説明するための図である。
【図３】実施形態における、標準ファイルシステム及び非標準ファイルシステムへのアクセスログを検出するためのフィルタマネージャ周辺のプログラム構造を示す図である。
【図４】実施形態におけるミニフィルタの処理内容を示すためのフローチャートである。
【図５】実施形態における情報処理装置のブロック構成図である。
【発明を実施するための形態】
【００１５】
以下、添付図面に従って本発明に係る実施形態を詳細に説明する。
【００１６】
＜第一実施形態＞
本実施形態における情報処理装置のブロック構成図を図５に示す。図示の如く、本装置は、装置全体の制御を司るＣＰＵ７０１、ＢＩＯＳやブートプログラムを格納しているＲＯＭ７０２、実行すべきＯＳやアプリケーションをロードしたり、ワークエリアとして使用するためのＲＡＭ７０３を有する。また、本装置は、ネットワークインタフェース７０４、キーボード７０５及びポインティングデバイス７０６を接続するインタフェース７０７、表示装置７０８に表示すべき画像の描画処理を行う表示制御部７０９、ならびに、記憶装置７１０及び７２０を有する。記憶装置７１０、７２０はハードディスク装置とするが、ＵＳＢメモリやＳＳＤ等でも良く、その種類は問わない。なお、記憶装置７１０には米国マクロソフト社が提供するＯＳ「Ｗｉｎｄｏｗｓ（登録商標）」が既にインストールされており、各種アプリケーション、データファイルも格納されているものとする。また、後述するミニフィルタや分析プログラムも既にインストールされているものとする。また、これらはＯＳが標準でサポートする標準ファイルシステム７１０で記憶管理されている。一方、記憶装置７２０には、非標準ファイルシステム７２０が確保されているものとする（この非標準ファイルシステム７２０へのアクセスについては後述する）。なお、１つの物理的な記憶装置の記憶可能な領域を、幾つも論理的に分割し、各論理領域毎に個別のファイルシステムを作成できることは周知の通りである。上記のように、物理的に独立した記憶装置に、個別のファイルシステム構築した説明と理解を容易にするためであって、かかる点で本願発明が限定されるものではない。
【００１７】
上記構成において、本装置の電源がＯＮになると、ＣＰＵ７０１はＲＯＭ７０２のブートプログラムに従って実行を開始し、記憶装置７１０をアクセスし、ＯＳをＲＡＭ７０３上にロードする。そして、各種設定を行うことで、キーボード７０５、ポインティングデバイス７０６、及び、表示装置７０８によるユーザインタフェースが機能し始め、本装置が情報処理装置として機能することとなる。なお、このとき、記憶装置７１０にインストールされた、後述するミニフィルタ、及び、分析プログラムも自動的に起動する。この結果、本装置のファイルシステムへのアクセスの監視とそのログの取得、ならびに、予め設定されたネットワーク上のサーバに対し、監視内容（アクセスログ）の通知が可能となる。
【００１８】
図３は、上記ミニフィルタ並びに分析プログラムが起動した場合の、フィルタマネージャ２０１の周囲のプログラム構造を示している。
【００１９】
図示の如く、実施形態における特徴点は、記憶装置７２０内の非標準ファイルシステム７２１への低レベル非標準ファイルシステムドライバ３０２を用いたアクセスは、それ専用のファイルシステムフィルタドライバを設けて実現するのでなく、ミニフィルタ６０１にて行う点にある。
【００２０】
ミニフィルタ６０１は、非標準ファイルシステム用のファイルシステムフィルタドライバとして機能するプロシージャを内包することにより、一般アプリケーション１０１からダイレクトに、非標準ファイルシステム７２１へのアクセス要求を受信する。また、非標準ファイルシステム７２１からのアクセス要求の結果を、ダイレクトに一般アプリケーション１０１に返す。
【００２１】
以下、このミニフィルタ６０１の処理内容、一般アプリケーション１０１が標準ファイルシステム７１１にアクセスする場合と、一般アプリケーション１０１が非標準ファイルシステム７２１にアクセスする場合とに分けて、それぞれ説明する。
【００２２】
［一般アプリケーションが標準ファイルシステムにアクセスする場合］
フィルタマネージャ２０１は、一般アプリケーション１０１からファイルシステムへのアクセスを横取りすると、それをミニフィルタ６０１に通知する。ミニフィルタ６０１は、フィルタマネージャ２０１から、ファイルシステムのアクセス要求を受けとると、標準ファイルシステムへのアクセスと判定する。そして、その要求の種類や時刻等の情報を分析プログラム５０１に通知すると共に、その要求をフィルタマネージャ２０１に返す（第１の処理手段）。フィルタマネージャ２０１は、この結果、標準ファイルシステムドライバ３０１にそれを渡すことで、標準ファイルシステム７１１に対するアクセスを行なわせる。標準ファイルシステム７１１によるアクセスの結果（特に読み取りの場合）は、上記と逆にたどっていき、一般アプリケーション１０１に渡される。
【００２３】
［一般アプリケーションが非標準ファイルシステムにアクセスする場合］
ミニフィルタ６０１は、自身に内包される、非標準ファイルシステム用のファイルシステムフィルタドライバとして機能するプロシージャを実行し、一般アプリケーション１０１からダイレクトにアクセス要求を受信すると、それが非標準ファイルシステムへのアクセスと判定する。この場合、ミニフィルタ６０１は、低レベル非標準ファイルシステムドライバ３０２を通じて、非標準ファイルシステム７２１にアクセスする（第２の処理手段）。また、このとき、ミニフィルタ６０１は、その要求の種類や時刻等の情報を分析プログラム５０１に通知する。また、アクセスが非標準ファイルシステム７２１に格納されたファイルの読み込みであった場合、自身に内包されたファイルシステムフィルタドライバを介して読出したデータをダイレクトに一般アプリケーション１０１に返す。
【００２４】
上記の通りであるが、要するに、本実施形態のミニフィルタ６０１は、フィルタマネージャ２０１から見ると通常のミニフィルタとして機能しているように見え、一般アプリケーション１０１から見るとファイルシステムフィルタドライバの１つとして見える。そして、ミニフィルタ６０１の内部では、ミニフィルタとしての機能だけではなく、非標準ファイルシステムフィルタドライバをも包含する構成を有する点を特徴としている。
【００２５】
上記の結果、一般アプリケーション１０１は、標準ファイルシステム７１１、非標準ファイルシステム７２１のいずれにアクセスする場合であっても、その要求は必ずミニフィルタ６０１を通過することが約束されることとなる。この結果、分析プログラム５０１は、ミニフィルタ６０１のみと通信すれば良くなり、１つの要求で標準ファイルシステム、非標準ファイルシステムの一方のファイルシステムに対して読み込み要求があり、もう一方のファイルシステムに対して書き込み要求があった場合、それを異なるファイルシステム間のファイルコピー要求であると判定でき、正確なログ情報が作成できるようになる。
【００２６】
なお、上述した構成に限定されず、分析プログラム５０１の機能の一部、または全てを、ミニフィルタ６０１によって実現されてもよい。
【００２７】
次に実施形態におけるＣＰＵ７０１が実行するミニフィルタ６０１の処理内容を図４のフローチャートに従って説明する。なお、ミニフィルター６０１は、情報処理装置のＯＳが起動した初期段階で記憶装置７１０から読み込まれて実行され、ＲＡＭ７０３に常駐し続けるものである。
【００２８】
先ず、ステップＳ１００にて、一般アプリケーション１０１、フィルタマネージャ２０１、分析プログラム５０１との通信を可能にするための処理を含む初期化処理を実行する。初期化処理は、例えば、各IRPへのディスパッチルーチンの記述を追加し実行する。
【００２９】
次いで、ステップＳ１１０にて、ファイルシステムに対するアクセス要求を受けつけるのを待つ。ファイルシステムへの要求があった場合、ステップＳ１２０にて、どの要求をいずれから受信したのかを判定する。
【００３０】
その要求がフィルタマネージャ２０１を介して受信したと判定した場合、その要求は標準ファイルシステム７１１に対するアクセスと判定し、通常のミニフィルタとして機能する。すなわち、ステップＳ１３０にて、フィルタマネージャ２０１に要求を継続するように指示し、標準ファイルシステムドライバ３０１を利用して標準ファイルシステム７１１にアクセスを行なわせる。そして、ステップＳ１４０にて、アクセスの種類、アクセスのあったファイル名、及び時刻等の情報を分析プログラム５０１に通知し、Ｓ１１０の処理に戻る。
【００３１】
一方、ステップＳ１２０にて、アクセス要求が、一般アプリケーション１０１からダイレクトに受信されたと判定した場合、処理はステップＳ１５０に進み、非標準ファイルシステム７２１用のファイルシステムフィルタドライバとして機能させ、非標準ファイルシステムドライバ３０２を介して、非標準ファイルシステム７２１にアクセスする。そして、書き込みの場合には、その要求に応じたデータの書き込みを行い、読み込みの場合には読み込んだデータをダイレクトに一般アプリケーション１０１に返す処理を行う。このとき、ステップＳ１６０にて、アクセスの種類、アクセスのあったファイル名、及び時刻等の情報を分析プログラム５０１に通知し、Ｓ１１０の処理に戻る。
【００３２】
以上説明したように本実施形態のミニフィルタ６０１は、フィルタマネージャ２０１との通信では通常のミニフィルタとして振る舞い、非標準ファイルシステムに対するアクセス要求があった場合には、内部的に、その非標準ファイルシステムフィルタドライバとして機能して、非標準ファイルシステムにアクセスすることになる。従って、本実施形態のミニフィルタ６０１を利用する分析プログラム５０１は、標準ファイルシステム、非標準ファイルシステムへのアクセスを問わず、１つのミニフィルタと通信すれば良くなり、標準／非標準ファイルシステム間のファイルコピー等のようなアクセス要求があった場合であっても、それら２つのファイルシステムに対するアクセスが如何なるものであったのかを正確に検出できるようになる。
【００３３】
また、ミニフィルタ６０１の補間により、標準ファイルシステム、非標準ファイルシステムへのアクセスを問わず、アクセスログを収集できるので、フィルタマネージャ２０１を利用しない（標準／非標準）ファイルシステムフィルタドライバの開発に比べて開発工程を削減することができるようになる。
【００３４】
＜第二実施形態＞
第二実施形態は、上記第一実施形態のミニフィルタ６０１で収集されたアクセス要求を制御する処理について説明する。
【００３５】
なお、第二実施形態の動作の大部分は第一実施形態の動作と共通するため、第一実施形態と異なる動作についてのみ説明し、共通の動作については説明を省略する。
【００３６】
図４のＳ１２０にて、ミニフィルタ６０１は、アクセス要求がフィルタマネージャ２０１を介して受信されたと判定した場合、予め記憶装置７１０、７２０に設定されている設定情報（例えば、アクセスの種類に応じたアクセスの許可／禁止、アクセス先のファイル名に応じたアクセスの許可／不許可等）に基づいて、その要求を置き換える等により制御（許可／禁止）を行う。
【００３７】
許可と判定された場合、Ｓ１３０以降の処理を行う。禁止と判定された場合、フィルタマネージャ２０１に要求を禁止するよう指示し、標準ファイルシステム７１１へのアクセスを禁止する。そして、受信した要求と、アクセスを禁止した等の情報を分析プログラム５０１に通知し、Ｓ１１０の処理に戻る。
【００３８】
図４のS１２０にて、ミニフィルタ６０１は、アクセス要求が一般アプリケーション１０１からダイレクトに受信されたと判定した場合、予め記憶装置７１０、７２０に設定されている設定情報に基づいて、その要求の制御（許可／禁止）を行う。
【００３９】
許可と判定された場合、Ｓ１５０以降の処理を行う。禁止と判定された場合、非標準ファイルシステムドライバ３０２を介して、非標準ファイルシステム７２１へのアクセスを禁止する。そして、受信した要求と、アクセスを禁止した等の情報を分析プログラム５０１に通知し、Ｓ１１０の処理に戻る。
【００４０】
なお、これに限定されず、アクセス要求を制御するための判定は、分析プログラム５０１で行うようにしてもよい。
【００４１】
以上説明したように本実施形態では、標準ファイルシステム、非標準ファイルシステムへのアクセスを問わず、１つのミニフィルタで、アクセスの制御を行うことができるようになる。
＜第三実施形態＞
第三実施形態は、第一、第二実施形態のミニフィルタ６０１にて、ウイルスプログラムが実行されるのを制御する処理について説明する。
【００４２】
なお、第三実施形態の動作の大部分は第一、第二実施形態の動作と共通するため、第一、第二実施形態と異なる動作についてのみ説明し、共通の動作については説明を省略する。
【００４３】
ミニフィルタ６０１は、アクセス要求が読み取りであると判定した時、その読み取りまでは、上述したのと同じである。そして、実際に読み取ったデータをミニフィルタ６０１が受信すると、分析プログラム５０１にてウイルスの有無の解析を行うこととなる。ウイルスが存在しないと判定結果を受けた場合、ミニフィルタ６０１は、アクセス要求元（フィルタマネージャ２０１／一般アプリケーション１０１）にデータを渡す。
【００４４】
一方、ウイルスを発見した場合、ミニフィルタ６０１は、データがアクセス要求元（フィルタマネージャ２０１／一般アプリケーション１０１）に渡されることを禁止する（制御する）。
【００４５】
なお、これに限定されず、ウイルスの有無の解析をミニフィルタ６０１で行うようにしてもよい。
【００４６】
以上説明したように本実施形態では、標準ファイルシステム、非標準ファイルシステムへのアクセスを問わず、１つのミニフィルタで、ウイルスプログラムが実行されることを阻止することができるようになる。
【図１】
0005539833.tif 000002
【図２】
0005539833.tif 000003
【図３】
0005539833.tif 000004
【図４】
0005539833.tif 000005
【図５】
0005539833.tif 000006