特開2019-207661(P2019-207661A)IP Force 特許公報掲載プロジェクト 2015.5.11 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ 日本電信電話株式会社の特許一覧
<>
  • 特開2019207661-保護装置及び保護方法 図000003
  • 特開2019207661-保護装置及び保護方法 図000004
  • 特開2019207661-保護装置及び保護方法 図000005
  • 特開2019207661-保護装置及び保護方法 図000006
  • 特開2019207661-保護装置及び保護方法 図000007
  • 特開2019207661-保護装置及び保護方法 図000008
  • 特開2019207661-保護装置及び保護方法 図000009
  • 特開2019207661-保護装置及び保護方法 図000010
  • 特開2019207661-保護装置及び保護方法 図000011
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】特開2019-207661(P2019-207661A)
(43)【公開日】2019年12月5日
(54)【発明の名称】保護装置及び保護方法
(51)【国際特許分類】
   G06F 21/62 20130101AFI20191108BHJP
   G06F 12/00 20060101ALI20191108BHJP
【FI】
   G06F21/62 318
   G06F12/00 537A
【審査請求】未請求
【請求項の数】6
【出願形態】OL
【全頁数】12
(21)【出願番号】特願2018-104038(P2018-104038)
(22)【出願日】2018年5月30日
(71)【出願人】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(74)【代理人】
【識別番号】110002147
【氏名又は名称】特許業務法人酒井国際特許事務所
(72)【発明者】
【氏名】木下 和巳
(72)【発明者】
【氏名】永吉 剛
(72)【発明者】
【氏名】山越 公洋
(57)【要約】
【課題】ファイルを効率良く保護する。
【解決手段】保護装置10は、システム起動時に保護対象ファイルのデータをオープンする。そして保護装置10は、OSに備えられた検知機能等を利用して、保護対象ファイルへのリンクが削除されたことを検知する。また、保護装置10は、あらかじめ作成された保護対象ファイルのリストを参照し、リンクが削除されたファイルへのファイルパスを基に、ファイルが保護対象のファイルであるか否かを判定する。また、保護装置10は、ファイルが保護対象のファイルであると判定した場合、ファイルへのリンクを再作成することをOSに要求することにより、リンクを復元する。
【選択図】図1
【特許請求の範囲】
【請求項1】
あらかじめ定められた保護対象のファイルのファイルパスのリストを取得する管理部と、
前記リストに含まれるファイルパスに該当するファイルのデータを保護する操作を行う操作部と、
を有することを特徴とする保護装置。
【請求項2】
前記操作部は、前記ファイルをオープンすることによって、前記ファイルのデータを保護することを特徴とする請求項1に記載の保護装置。
【請求項3】
前記管理部は、前記保護装置が起動したタイミングで前記リストを取得し、
前記操作部は、前記管理部によって前記リストが取得されたタイミングで前記データを保護する操作を行うことを特徴とする請求項1に記載の保護装置。
【請求項4】
ファイルへのリンクが削除されたことを検知する検知部と、
前記ファイルへのファイルパスを前記リストに照会し、前記ファイルが保護対象のファイルであるか否かを判定する判定部と、
前記判定部によって前記ファイルが保護対象のファイルであると判定された場合、前記ファイルへのリンクを復元する復元部と、
を有することを特徴とする請求項1に記載の保護装置。
【請求項5】
前記検知部は、ファイルへのアクセスが行われていることをさらに検知し、
前記判定部は、前記ファイルのファイルパス及び前記アクセスを行っているプロセスを基に、前記アクセスを許可するか否かをさらに判定し、
前記判定部によって前記アクセスを許可しないと判定された場合、前記アクセスを中止させる中止部をさらに有することを特徴とする請求項4に記載の保護装置。
【請求項6】
コンピュータによって実行される保護方法であって、
あらかじめ定められた保護対象のファイルのファイルパスのリストを取得する管理工程と、
前記リストに含まれるファイルパスに該当するファイルのデータを保護する操作を行う操作工程と、
を含むことを特徴とする保護方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、保護装置及び保護方法に関する。
【背景技術】
【0002】
従来、ファイルシステム上のファイルを、不正なプロセスやユーザの不注意による削除から保護するための手法が知られている。例えば、Linux(登録商標)では、ユーザのディレクトリ又はファイルに対する書き込み権限を設定することにより、当該ユーザによるファイルの削除等を禁止することができる。さらに、Linuxでは、ファイルに拡張属性としてi(immutable)属性を設定しておくことで、当該ファイルの削除等をできなくすることができる。
【0003】
また、OS(Operating System)からアクセスできない保護領域に保護対象のファイルを移動することで、当該ファイルの削除等を行えないようにする手法が知られている(例えば、特許文献1を参照)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2004−220400号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、従来の手法には、ファイルを効率良く保護することが困難な場合があるという問題がある。例えば、権限を設定する方法については、不正による権限の奪取や権限の設定ミスが発生した場合に、ファイルを十分に保護することができないことが考えられる。また、保護領域にファイルを移動する方法については、ファイルを利用のたびに移動しなければならず、手間がかかる上に、当該ファイルを利用するプログラムが制限されるという問題がある。
【課題を解決するための手段】
【0006】
上述した課題を解決し、目的を達成するために、保護装置は、あらかじめ定められた保護対象のファイルのファイルパスのリストを取得する管理部と、前記リストに含まれるファイルパスに該当するファイルのデータを保護する操作を行う操作部と、を有することを特徴とする。
【発明の効果】
【0007】
本発明によれば、ファイルを効率良く保護することができる。
【図面の簡単な説明】
【0008】
図1図1は、第1の実施形態に係る保護装置の構成の一例を示す図である。
図2図2は、第1の実施形態に係る保護対象ファイルリストの一例を示す図である。
図3図3は、第1の実施形態に係るプロセスホワイトリストの一例を示す図である。
図4図4は、第1の実施形態に係る保護装置のシステム起動時における処理の流れを示すフローチャートである。
図5図5は、第1の実施形態に係る保護装置の保護対象ファイル追加時の処理の流れを示すフローチャートである。
図6図6は、第1の実施形態に係る保護装置のファイル削除時における処理の流れを示すフローチャートである。
図7図7は、第1の実施形態に係る保護装置のアクセスを制御する際の処理の流れを示すフローチャートである。
図8図8は、第1の実施形態に係る保護装置のシステム終了時における処理の流れを示すフローチャートである。
図9図9は、保護プログラムを実行するコンピュータの一例を示す図である。
【発明を実施するための形態】
【0009】
以下に、本願に係る保護装置及び保護方法の実施形態を図面に基づいて詳細に説明する。なお、本発明は、以下に説明する実施形態により限定されるものではない。
【0010】
[第1の実施形態の構成]
まず、図1を用いて、第1の実施形態に係る保護装置の構成について説明する。図1は、第1の実施形態に係る保護装置の構成の一例を示す図である。図1に示すように、保護装置10は、入力部11、記憶部12及び制御部13を有する。
【0011】
入力部11は、ユーザからのデータの入力を受け付ける。入力部11は、例えば、マウスやキーボード等の入力装置である。また、入力部11は、他の装置からデータの入力を受け付けるインタフェースであってもよい。
【0012】
記憶部12は、HDD(Hard Disk Drive)、SSD(Solid State Drive)、光ディスク等の記憶装置である。なお、記憶部12は、RAM(Random Access Memory)、フラッシュメモリ、NVSRAM(Non Volatile Static Random Access Memory)等のデータを書き換え可能な半導体メモリであってもよい。記憶部12は、保護装置10で実行されるOSや各種プログラムを記憶する。さらに、記憶部12は、プログラムの実行で用いられる各種情報を記憶する。また、記憶部12は、ファイルデータ121、ファイルシステム122、保護対象ファイルリスト123、プロセスホワイトリスト124及び鍵情報125を記憶する。
【0013】
記憶部12は、ファイルの実体をファイルデータ121として記憶する。また、記憶部12は、ファイルシステム122を記憶する。ファイルシステム122は、ファイルデータ121に含まれるファイルの実体へアクセスするための情報である。ファイルシステム122は、ファイルデータ121の各ファイルのファイルパスを含む。なお、ファイルシステム122は、OSの基本的な機能として実装されているものであってよい。
【0014】
本実施形態におけるリンクの作成は、ファイルシステム122を介してファイルへのアクセスが可能な状態にすることを意味するものとする。また、リンクの削除は、作成済みのリンクを利用不可能な状態にすることを意味するものとする。例えば、保護装置10は、ファイルシステム122にファイルのファイルパスを追加することによりリンクを作成し、また、ファイルパスを削除することによりリンクを削除する。
【0015】
保護対象ファイルリスト123は、保護装置10によって保護されるファイルを識別するための情報である。保護対象ファイルリスト123は、あらかじめ定められた保護対象のファイルのファイルパスのリストの一例である。本実施形態において、保護対象ファイルリスト123は、保護対象のファイルのファイルパスの一覧である。図2は、第1の実施形態に係る保護対象ファイルリストの一例を示す図である。図2に示すように、例えば、保護対象ファイルリスト123には、保護対象のファイルのファイルパス「/a/b/f1」が含まれる。
【0016】
プロセスホワイトリスト124は、ファイルごとのアクセス可能なプロセスを示す情報である。本実施形態において、プロセスホワイトリスト124は、ファイルのファイルパスと、当該ファイルへのアクセスが許可されているプロセスのパスとの組み合わせの一覧である。
【0017】
図3は、第1の実施形態に係るプロセスホワイトリストの一例を示す図である。図3に示すように、アクセス可能なプロセスは、実行ファイルパスによって識別される。また、図3に示すように、ファイルパス「/c/f2」には、「/x/w」及び「/x/z」を実行ファイルとするプロセスが対応している。このように、プロセスホワイトリスト124においては、1つのファイルに複数のプロセスが対応していてもよい。
【0018】
鍵情報125は、保護対象ファイルリスト123及びプロセスホワイトリスト124をセキュアな状態で管理するための情報である。例えば、鍵情報125は、各リストの暗号化、又は、各リストへの署名の付加に用いられる。また、より堅牢性を高めるために、鍵情報125は耐タンパ領域に記憶されていてもよい。
【0019】
制御部13は、保護装置10全体を制御する。制御部13は、例えば、CPU(Central Processing Unit)、MPU(Micro Processing Unit)等の電子回路や、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)等の集積回路である。また、制御部13は、各種の処理手順を規定したプログラムや制御データを格納するための内部メモリを有し、内部メモリを用いて各処理を実行する。また、制御部13は、各種のプログラムが動作することにより各種の処理部として機能する。例えば、制御部13は、操作部131、作成部132、管理部133、検知部134、判定部135、復元部136及び中止部137を有する。
【0020】
なお、操作部131及び作成部132は、ファイルシステム122と同様に、OSの基本的な機能として実装されているものであってよい。一方、検知部134、判定部135、復元部136及び中止部137は、OSに対し処理の実行をリクエストすること、及びOSからのリクエストを受けて処理を実行することができる。このため、本実施形態は、Linux等のOSがインストールされたコンピュータに、管理部133、検知部134、判定部135、復元部136及び中止部137を実装することにより実現される。
【0021】
操作部131は、保護対象ファイルリスト123に含まれるファイルパスに該当するファイルのデータを保護する操作を行う。操作部131は、保護装置10が起動したタイミングで保護する操作を行うことができる。また、操作部131は、ファイルをオープンすることによって、ファイルのデータを保護することができる。また、操作部131は、ファイルのクローズを行うことができる。
【0022】
ファイルのオープンとは、ファイルを、読み取り、変更、削除等の各処理が可能な状態にすることである。一方で、ファイルがオープンされている場合、当該ファイルの実データは保護された状態になる。つまり、あるプロセスによってよってオープンされた状態のファイルは、他のプロセスからの削除が行われた場合であっても、リンクが削除されるに過ぎず、実データは削除されない。また、ファイルのクローズとは、ファイルを各処理が不可能な状態にすることである。
【0023】
また、作成部132は、ファイルのリンクを作成する。また、操作部131及び作成部132は、他の処理部からのリクエストに応じて処理を実行することができる。
【0024】
管理部133は、保護対象ファイルリスト123及びプロセスホワイトリスト124の管理を行う。管理部133は、保護対象ファイルリスト123及びプロセスホワイトリスト124へのデータの追加、削除等を行うことができる。
【0025】
また、管理部133は、保護装置10のシステムの起動時には、保護対象ファイルリスト123及びプロセスホワイトリスト124が改変されていないことを鍵情報125を用いて確認した上で、保護対象ファイルリスト123及びプロセスホワイトリスト124を、記憶部12の揮発性の領域(以降、メモリ)に展開する。また、保護装置10のシステムの終了時には、展開した保護対象ファイルリスト123及びプロセスホワイトリスト124を、鍵情報125を用いたセキュアな方法により、記憶部12の不揮発性の領域に格納する。なお、セキュアな方法とは、鍵を用いた暗号化及び署名の付加等である。
【0026】
検知部134は、ファイルへのリンクが削除されたことを検知する。例えば、検知部134は、LinuxのAPI(Application Programming Interface)であるinotifyを用いて削除を検知することができる。検知部134は、リンクの削除を検知した場合、削除されたリンクに対応するファイルのファイルパスを取得する。
【0027】
なお、保護装置10の起動時に、操作部131によってオープンされている保護対象のファイルのリンクが削除されたとしても、当該ファイルの実データは削除されない。このため、保護装置10は、削除された保護対象のファイルのリンクさえ復元できれば、当該ファイルを削除前の状態に戻すことができる。
【0028】
また、検知部134は、ファイルへのアクセスが行われていることをさらに検知する。例えば、検知部134は、LinuxのAPIであるfanotifyを用いてアクセスを検知することができる。検知部134は、ファイルへのアクセスを検知した場合、アクセス先のファイルパス及びアクセス元のプロセスの実行ファイルのファイルパスの組み合わせを取得する。
【0029】
ここで、アクセスとは、ファイルのオープン又はオープンを要求することである。検知部134は、ファイルのオープンの要求に関する情報を受け取ることでアクセスを検知することができる。
【0030】
判定部135は、ファイルのファイルパスを基に、ファイルが保護対象のファイルであるか否かを判定する。具体的には、判定部135は、検知部134によってリンクの削除が検知された場合、検知部134から削除されたリンクに対応するファイルのファイルパスを受け取り、当該ファイルパスが保護対象ファイルリスト123に存在するか否かを判定する。
【0031】
また、判定部135は、ファイルのファイルパス及びアクセスを行っているプロセスを基に、アクセスを許可するか否かをさらに判定する。具体的には、判定部135は、検知部134によってファイルへのアクセスが検知された場合、検知部134からアクセス先のファイルパス及びアクセス元のプロセスの実行ファイルのファイルパスの組み合わせを受け取り、当該組み合わせが以下の3つのケースのいずれに該当するかによってアクセスの可否を判定する。
【0032】
第1のケースは、組み合わせそのものがプロセスホワイトリスト124に存在するケースである。また、第2のケースは、アクセス先のファイルパスのみがプロセスホワイトリスト124に存在し、実行ファイルのファイルパスが存在しないケースである。第3のケースは、アクセス先のファイルパスがプロセスホワイトリスト124に存在しないケースである。なお、実行ファイルのファイルパスのみがプロセスホワイトリスト124に存在するケースは、第3のケースに含まれる。
【0033】
例えば、図3の例では、アクセス先のファイルパスが「/a/b/f1」であって、実行ファイルのファイルパスが「/x/y」である組み合わせは、第1のケースに該当する。また、例えば、図3の例では、アクセス先のファイルパスが「/a/b/f1」であって、実行ファイルのファイルパスが「/x/z」である組み合わせは、第2のケースに該当する。また、例えば、図3の例では、アクセス先のファイルパスが「/a/b/f0」である組み合わせは、実行ファイルのファイルパスにかかわらず、第3のケースに該当する。なお、ここでは、図3のプロセスホワイトリスト124の4行目以降は存在しないものとする。
【0034】
判定部135は、受け取った組み合わせが第1のケース及び第3のケースのいずれかに該当する場合、アクセスを許可すると判定する。一方、判定部135は、受け取った組み合わせが第2のケースに該当する場合、アクセスを許可しないと判定する。
【0035】
復元部136は、判定部135によってファイルが保護対象のファイルであると判定された場合、ファイルへのリンクを復元する。具体的には、判定部135によって、削除されたリンクに対応するファイルのファイルパスが保護対象ファイルリスト123に存在すると判定された場合、復元部136は、当該リンクを作成することを作成部132に要求する。
【0036】
中止部137は、判定部135によってアクセスを許可しないと判定された場合、アクセスを中止させる。具体的には、中止部137は、操作部131に、ファイルのオープンを行わないように要求することでアクセスを中止させることができる。
【0037】
[第1の実施形態の処理]
図4を用いて、保護装置10のシステム起動時における処理について説明する。図4は、第1の実施形態に係る保護装置のシステム起動時における処理の流れを示すフローチャートである。
【0038】
図4に示すように、システムが起動されると、管理部133は、保護対象ファイルリスト123及びプロセスホワイトリスト124が改変されていないことを鍵情報125を用いて確認し、各リストをメモリ上に展開する(ステップS101)。
【0039】
管理部133は、操作部131に対し、保護対象ファイルリスト123に含まれるファイルパスを受け渡すとともに、対応するファイルをオープンすることを要求する。そして、操作部131は、受け取ったファイルパスに対応するファイルをオープンする(ステップS102)。
【0040】
図5を用いて、保護装置10の保護対象ファイル追加時の処理について説明する。図5は、第1の実施形態に係る保護装置の保護対象ファイル追加時の処理の流れを示すフローチャートである。
【0041】
図5に示すように、管理部133は、保護対象ファイルを追加するリクエストを受領する(ステップS201)。例えば、リクエストは、入力部11を介してユーザによって入力されるものであってもよいし、ファイルシステム122に新たにファイルが追加された際に自動的に生成されるものであってもよい。また、リクエストには、保護対象に追加するファイルのファイルパス、又は、そのファイルのファイルパスとアクセス可能なプロセスのファイルパスとの組み合わせが含まれている。
【0042】
管理部133は、リクエストに含まれるファイルパスを、保護対象ファイルリスト123に追加する(ステップS202)。また、管理部133は、リクエストに含まれるファイルのファイルパスとプロセスのファイルパスとの組み合わせを、プロセスホワイトリスト124に追加する(ステップS203)。なお、リクエストにプロセスのファイルパスが含まれていない場合、管理部133はプロセスホワイトリスト124への追加は行わない。
【0043】
管理部133は、操作部131に対し、各リストに追加したファイルのファイルパスを受け渡すとともに、対応するファイルをオープンすることを要求する。そして、操作部131は、受け取ったファイルパスに対応するファイルをオープンする(ステップS204)。
【0044】
図6を用いて、保護装置10のファイル削除時における処理について説明する。図6は、第1の実施形態に係る保護装置のファイル削除時における処理の流れを示すフローチャートである。
【0045】
図6に示すように、検知部134は、リンクの削除を検知する(ステップS301)。そして、判定部135は、検知部134から受け取ったファイルパスを基に、削除が検知されたリンクに対応するファイルが保護対象のファイルであるか否かを判定する(ステップS302)。
【0046】
ここで、ファイルが保護対象のファイルであった場合(ステップS302、Yes)、復元部136は、リンクを復元する(ステップS303)。一方、ファイルが保護対象のファイルでなかった場合(ステップS302、No)、保護装置10は、リンクを復元しない。
【0047】
図7を用いて、保護装置10のアクセスを制御する処理について説明する。図7は、第1の実施形態に係る保護装置のアクセスを制御する際の処理の流れを示すフローチャートである。
【0048】
図7に示すように、検知部134は、ファイルへのアクセスを検知する(ステップS401)。ここで、検知部134は、操作部131へアクセス、すなわちファイルのオープンを中断するように要求する。そして、操作部131は、検知部134の要求に応じてアクセスを中断する(ステップS402)。
【0049】
そして、判定部135は、検知部134から受け取ったアクセス先のファイルのファイルパスとアクセス元のプロセスのファイルパスがプロセスホワイトリスト124に存在するか否かによって、プロセスのファイルへのアクセスが許可されているか否かを判定する(ステップS403)。
【0050】
ここで、アクセスが許可されている場合(ステップS403、Yes)、判定部135は、操作部131に対して中断していたアクセスを再開することを要求する。そして、操作部131は、判定部135の要求に応じてアクセスを再開する(ステップS404)。なお、判定部135は、アクセス先のファイルのファイルパスがそもそもプロセスホワイトリスト124に存在しない場合、すなわち受け取った組み合わせが前述の第3のケースに該当する場合、アクセスが許可されていると判定する。
【0051】
一方、アクセスが許可されていない場合(ステップS403、No)、中止部137は、操作部131に対して中断していたアクセスを中止することを要求する。そして、操作部131は、中止部137の要求に応じてアクセスを中止する(ステップS405)。
【0052】
図8を用いて、保護装置10のシステム終了時における処理について説明する。図8は、第1の実施形態に係る保護装置のシステム終了時における処理の流れを示すフローチャートである。
【0053】
図8に示すように、管理部133は、保護対象ファイルリスト123及びプロセスホワイトリスト124を更新する(ステップS501)。例えば、管理部133は、メモリ上に展開している保護対象ファイルリスト123及びプロセスホワイトリスト124で、元のデータを上書きする。このとき、メモリ上の保護対象ファイルリスト123及びプロセスホワイトリスト124は、保護対象ファイルの追加等により、メモリへ展開された時点から変更されている場合がある。
【0054】
管理部133は、操作部131に対し、保護対象ファイルリスト123に含まれるファイルパスを受け渡すとともに、対応するファイルをクローズすることを要求する。そして、操作部131は、受け取ったファイルパスに対応するファイルをクローズする(ステップS502)。そして、保護装置10はシステムを終了する(ステップS503)。
【0055】
[第1の実施形態の効果]
第1の実施形態では、保護装置10は、あらかじめ定められた保護対象のファイルのファイルパスのリストを取得する。また、保護装置10は、リストに含まれるファイルパスに該当するファイルのデータを保護する操作を行う。このように、本実施形態では、権限の設定や、保存領域の移動を行うことなくファイルを保護できる。このため、本実施形態によれば、ファイルを効率良く保護することができる。
【0056】
保護装置10は、ファイルをオープンすることによって、ファイルのデータを保護する。このように、本実施形態では、OSに備わっている基本的な機能を使用してファイルの保護を行うことができる。
【0057】
保護装置10は、保護装置10が起動したタイミングでリストを取得することができる。このとき、操作部131は、管理部133によってリストが取得されたタイミングでデータを保護する操作を行う。このように、起動時に保護対象のファイルをオープンしておくことで、当該ファイルをより確実に保護することができる。
【0058】
保護装置10は、ファイルへのリンクが削除されたことを検知する。また、保護装置10は、ファイルへのファイルパスを基に、ファイルが保護対象のファイルであるか否かを判定する。また、保護装置10は、ファイルが保護対象のファイルであると判定した場合、ファイルへのリンクを復元する。このように、本実施形態によれば、ファイルを削除から保護する際に、削除に関する権限を設定したり、ファイルの場所や内容に変更を加える必要がない。
【0059】
また、保護装置10は、検知部134は、ファイルへのアクセスが行われていることを検知することができる。このとき、保護装置10は、判定部135は、ファイルのファイルパス及びアクセスを行っているプロセスを基に、アクセスを許可するか否かを判定する。また、また、保護装置10は、アクセスを許可しないと判定した場合、アクセスを中止させる。このように、本実施形態によれば、プロセスごとにファイルへのアクセスを制御できるので、削除だけでなく改変からも保護することができる。
【0060】
[その他の実施形態]
上記の実施形態では、保護装置10のOSがLinuxである場合の例について説明したが、保護装置10のOSはLinuxに限られない。例えば、保護装置10のOSがLinux以外のものである場合であっても、inotifyやfanotifyと同等の監視機能を使ってファイルの削除やファイルへのアクセスを検知することで、上記の実施形態を実現することができる。
【0061】
[システム構成等]
また、図示した各装置の各構成要素は機能概念的なものであり、必ずしも物理的に図示のように構成されていることを要しない。すなわち、各装置の分散及び統合の具体的形態は図示のものに限られず、その全部又は一部を、各種の負荷や使用状況等に応じて、任意の単位で機能的又は物理的に分散又は統合して構成することができる。さらに、各装置にて行われる各処理機能は、その全部又は任意の一部が、CPU及び当該CPUにて解析実行されるプログラムにて実現され、あるいは、ワイヤードロジックによるハードウェアとして実現され得る。
【0062】
また、本実施形態において説明した各処理のうち、自動的に行われるものとして説明した処理の全部又は一部を手動的に行うこともでき、あるいは、手動的に行われるものとして説明した処理の全部又は一部を公知の方法で自動的に行うこともできる。この他、上記文書中や図面中で示した処理手順、制御手順、具体的名称、各種のデータやパラメータを含む情報については、特記する場合を除いて任意に変更することができる。
【0063】
[プログラム]
一実施形態として、保護装置10は、パッケージソフトウェアやオンラインソフトウェアとして上記の保護を実行する保護プログラムを所望のコンピュータにインストールさせることによって実装できる。例えば、上記の保護プログラムを情報処理装置に実行させることにより、情報処理装置を保護装置10として機能させることができる。ここで言う情報処理装置には、デスクトップ型又はノート型のパーソナルコンピュータが含まれる。また、その他にも、情報処理装置にはスマートフォン、携帯電話機やPHS(Personal Handyphone System)等の移動体通信端末、さらには、PDA(Personal Digital Assistant)等のスレート端末等がその範疇に含まれる。
【0064】
図9は、保護プログラムを実行するコンピュータの一例を示す図である。コンピュータ1000は、例えば、メモリ1010、CPU1020を有する。また、コンピュータ1000は、ハードディスクドライブインタフェース1030、ディスクドライブインタフェース1040、シリアルポートインタフェース1050、ビデオアダプタ1060、ネットワークインタフェース1070を有する。これらの各部は、バス1080によって接続される。
【0065】
メモリ1010は、ROM(Read Only Memory)1011及びRAM1012を含む。ROM1011は、例えば、BIOS(Basic Input Output System)等のブートプログラムを記憶する。ハードディスクドライブインタフェース1030は、ハードディスクドライブ1090に接続される。ディスクドライブインタフェース1040は、ディスクドライブ1100に接続される。例えば磁気ディスクや光ディスク等の着脱可能な記憶媒体が、ディスクドライブ1100に挿入される。シリアルポートインタフェース1050は、例えばマウス1110、キーボード1120に接続される。ビデオアダプタ1060は、例えばディスプレイ1130に接続される。
【0066】
ハードディスクドライブ1090は、例えば、OS1091、アプリケーションプログラム1092、プログラムモジュール1093、プログラムデータ1094を記憶する。すなわち、保護装置10の各処理を規定するプログラムは、コンピュータにより実行可能なコードが記述されたプログラムモジュール1093として実装される。プログラムモジュール1093は、例えばハードディスクドライブ1090に記憶される。例えば、保護装置10における機能構成と同様の処理を実行するためのプログラムモジュール1093が、ハードディスクドライブ1090に記憶される。なお、ハードディスクドライブ1090は、SSDにより代替されてもよい。
【0067】
また、上述した実施形態の処理で用いられる設定データは、プログラムデータ1094として、例えばメモリ1010やハードディスクドライブ1090に記憶される。そして、CPU1020は、メモリ1010やハードディスクドライブ1090に記憶されたプログラムモジュール1093やプログラムデータ1094を必要に応じてRAM1012に読み出して、上述した実施形態の処理を実行する。
【0068】
なお、プログラムモジュール1093やプログラムデータ1094は、ハードディスクドライブ1090に記憶される場合に限らず、例えば着脱可能な記憶媒体に記憶され、ディスクドライブ1100等を介してCPU1020によって読み出されてもよい。あるいは、プログラムモジュール1093及びプログラムデータ1094は、ネットワーク(LAN(Local Area Network)、WAN(Wide Area Network)等)を介して接続された他のコンピュータに記憶されてもよい。そして、プログラムモジュール1093及びプログラムデータ1094は、他のコンピュータから、ネットワークインタフェース1070を介してCPU1020によって読み出されてもよい。
【符号の説明】
【0069】
10 保護装置
11 入力部
12 記憶部
13 制御部
121 ファイルデータ
122 ファイルシステム
123 保護対象ファイルリスト
124 プロセスホワイトリスト
125 鍵情報
131 操作部
132 作成部
133 管理部
134 検知部
135 判定部
136 復元部
137 中止部
図1
図2
図3
図4
図5
図6
図7
図8
図9