JP6829168B2 - 情報処理装置、情報処理方法およびプログラム - Google Patents

情報処理装置、情報処理方法およびプログラム Download PDF

Info

Publication number
JP6829168B2
JP6829168B2 JP2017169831A JP2017169831A JP6829168B2 JP 6829168 B2 JP6829168 B2 JP 6829168B2 JP 2017169831 A JP2017169831 A JP 2017169831A JP 2017169831 A JP2017169831 A JP 2017169831A JP 6829168 B2 JP6829168 B2 JP 6829168B2
Authority
JP
Japan
Prior art keywords
file
unit
verification
processing
information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017169831A
Other languages
English (en)
Other versions
JP2019046266A (ja
Inventor
洋美 春木
洋美 春木
小池 正修
正修 小池
真也 内匠
真也 内匠
直樹 小椋
直樹 小椋
嘉一 花谷
嘉一 花谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2017169831A priority Critical patent/JP6829168B2/ja
Priority to US15/907,347 priority patent/US10915623B2/en
Publication of JP2019046266A publication Critical patent/JP2019046266A/ja
Application granted granted Critical
Publication of JP6829168B2 publication Critical patent/JP6829168B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/03Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
    • G06F2221/033Test or assess software

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Description

本発明の実施形態は、情報処理装置、情報処理方法およびプログラムに関する。
情報処理装置は、プロセッサ回路やメモリなどを含む計算機システムを基本ハードウェアとして備え、ハードウェアの管理などを行うOS(Operation System)上でアプリケーションプログラムを実行することにより、用途に応じた様々な機能を実現することができる。一般的に、アプリケーションプログラムは実行ファイルの形態で情報処理装置にインストールされ、例えばユーザ操作に応じて実行が開始される。なお、情報処理装置は、単一の装置として構成されるものに限らない。複数の計算機システムが連携して動作する形態であってもよい。
情報処理装置は想定外のプログラムが実行されると、意図しない挙動をしたり深刻なダメージを受けたりする場合がある。このため、情報処理装置は、想定外のプログラムの実行開始が要求されたときに、そのプログラムの実行を制限する仕組みを持つことが望まれる。こうした観点から、プログラムの実行開始時にプログラムの改竄を検知して実行を停止させたり、予め許可されたプログラムのみを実行させたりする技術が提案されているが、想定外のプログラムなどのファイルに対する処理を、より効率的に制限できる仕組みが望まれている。
特開2009−259160号公報 特開2014−48866号公報
本発明が解決しようとする課題は、想定外のプログラムなどのファイルに対する処理を効率よく制限できる情報処理装置、情報処理方法およびプログラムを提供することである。
実施形態の情報処理装置は、書き込み検出部と、第1処理制御部と、を備える。書き込み検出部は、ファイルに対する書き込みを検出し、該書き込みにより書き換えられた前記ファイルのファイル情報を制限対象記憶部に登録する。第1処理制御部は、ファイルに対する処理が要求されたときに、前記制限対象記憶部が記憶するファイル情報に、処理が要求されたファイルのファイル情報が含まれていれば、該ファイルに対する処理を制限する。
第1実施形態に係る情報処理装置の機能的な構成例を示すブロック図。 制限対象記憶部が記憶するファイル情報の一例を示す図。 第1実施形態に係る情報処理装置の動作例を説明するフローチャート。 第2実施形態に係る情報処理装置の機能的な構成例を示すブロック図。 第2実施形態に係る情報処理装置の動作例を説明するフローチャート。 制限対象記憶部が記憶するファイル情報の一例を示す図。 第2実施形態の変形例に係る情報処理装置の機能的な構成例を示すブロック図。 第3実施形態に係る情報処理装置の機能的な構成例を示すブロック図。 第3実施形態に係る情報処理装置の動作例を説明するフローチャート。 情報処理装置のハードウェア構成例を示すブロック図。
以下、添付図面を参照しながら、実施形態に係る情報処理装置、情報処理方法およびプログラムについて詳細に説明する。なお、以下では、実施形態の情報処理装置が備える様々な機能のうち、本発明に関わる機能のみを図示して説明するが、情報処理装置が備える機能は以下で説明するものに限らない。また、以下の説明において、同様の機能を持つ構成要素については同一の符号を付して、重複した説明を適宜省略する。
<第1実施形態>
図1は、第1実施形態に係る情報処理装置10の機能的な構成例を示すブロック図である。本実施形態の情報処理装置10は、例えば図1に示すように、書き込み検出部11と、制限対象記憶部12と、処理検出部13と、第1処理制御部14とを備える。
書き込み検出部11は、ファイルに対する書き込みを検出し、この書き込みによって書き換えられたファイルのファイル情報を、制限対象記憶部12に登録する。ファイル情報は、例えばそのファイルにアクセスする経路を示すファイルパスなどである。なお、制限対象記憶部12に登録されるファイル情報は、そのファイルを特定可能な情報であればよく、例えば、inode番号とデバイス番号の組み合わせなどを用いてもよい。
制限対象記憶部12は、後述の第1処理制御部14によって処理が制限される対象となるファイルのファイル情報を記憶する。このファイル情報が示すファイルは、上述のように、書き込み検出部11によって書き込みが検出されたファイルであり、本実施形態では、書き込みにより書き換えられたファイルを制限の対象としている。
図2は、制限対象記憶部12が記憶するファイル情報の一例を示す図である。例えば、制限対象記憶部12に「/bin/test」というファイルパス(ファイル情報の一例)が登録されている状態で、ファイルの新規作成やコピーなどの操作によって、「/usr/bin/sample」というファイルパスで示されるファイルへの書き込みが発生すると、書き込み検出部11はこれを検出し、制限対象記憶部12に「/usr/bin/sample」を登録する。図2は、この書き込みが発生した後の制限対象記憶部12に記憶されたファイル情報を示している。制限対象記憶部12は、例えば図2に示すように、処理が制限される対象となるファイルが検出されるたびに、書き込み検出部11により書き込みが検出されるたびにそのファイルのファイル情報が登録されるリスト形式で、制限対象となるファイルのファイル情報を記憶することができる。
処理検出部13は、ファイルに対する処理開始の要求を検出し、そのファイルのファイル情報を第1処理制御部14に渡す。例えば、ファイルに対する処理開始の要求がプログラムの実行開始の要求である場合、処理検出部13は、ユーザによる明示的な操作や他のプログラムからの呼び出しなどを検出することで、プログラムの実行開始の要求を検出することができる。
第1処理制御部14は、処理検出部13からファイル情報を受け取ると、制限対象記憶部12が記憶するファイル情報に、処理検出部13から受け取ったファイル情報が含まれているか否かを確認する。そして、処理検出部13から受け取ったファイル情報が制限対象記憶部12に記憶されている場合に、第1処理制御部14は、そのファイル情報で示されるファイルに対する処理を制限する。例えば、処理検出部13によって実行開始の要求が検出されたプログラムのファイルパスが制限対象記憶部12に記憶されている場合、第1処理制御部14は、そのプログラムの実行を停止させる。なお、処理の制限として、ここではプログラムの実行停止(プログラムを実行させない)を例示しているが、これに限らない。例えば制限対象のファイルがプログラムであれば、デバッカプログラム上、所定の仮想マシン上、サンドボックス内など、所定の環境においてのみそのプログラムの実行を許可するなど、制限付きで実行を許可するといった制限を行うようにしてもよい。
図3は、本実施形態の情報処理装置10の動作例を説明するフローチャートである。なお、図3のフローチャートは、プログラムの実行開始の要求を検出してからそのプログラムの実行を制御するまでの処理手順を示し、この図3のフローチャートで示す処理が実行される前に、書き込み検出部11によって書き込みが検出されたファイルのファイル情報が制限対象記憶部12に登録されているものとする。
例えばユーザによる明示的な操作や他のプログラムからの呼び出しなどによりプログラムの実行開始が要求されると、処理検出部13がそのプログラムの実行開始の要求を検出する(ステップS101)。そして、処理検出部13は、実行開始が要求されたプログラムのファイルパス(ファイル情報の一例)を抽出して(ステップS102)、第1処理制御部14に渡す。
次に、第1処理制御部14が、処理検出部13から受け取ったファイルパスが、制限対象記憶部12が記憶するファイル情報に含まれているか否かを判定する(ステップS103)。そして、制限対象記憶部12が記憶するファイル情報にそのファイルパスが含まれていれば(ステップS103:Yes)、第1処理制御部14は、そのプログラムの実行を停止させるように制御する(ステップS104)。一方、制限対象記憶部12が記憶するファイル情報にそのファイルパスが含まれていなければ(ステップS103:No)、第1処理制御部14は、そのプログラムの実行を開始させるように制御する(ステップS105)。
ここで、図2に例示したファイル情報が制限対象記憶部12に記憶されていることを想定し、具体例を例示しながら、プログラムの実行開始が要求されたときの本実施形態の情報処理装置10の動作をさらに説明する。
例えば、プログラム「ls」の実行開始が要求された場合、処理検出部13は、このプログラムの実行開始の要求を検出する。そして、処理検出部13は、プログラム「ls」のファイルパス「/bin/ls」を抽出し、それを第1処理制御部14に渡す。第1処理制御部14は、処理検出部13から受け取ったファイルパス「/bin/ls」を、制限対象記憶部12が記憶する図2に例示したファイル情報と照合する。この例では、処理検出部13から受け取ったファイルパスが、制限対象記憶部12が記憶するファイル情報に含まれていないため、第1処理制御部14は、プログラム「ls」の実行を開始させるように制御する。
別の例として、プログラム「/usr/bin/sample」の実行開始が要求された場合は、処理検出部13は、このプログラムの実行開始の要求を検知する。そして、処理検出部13は、このプログラムのファイルパス「/usr/bin/sample」を抽出し、それを第1処理制御部14に渡す。第1処理制御部14は、処理検出部13から受け取ったファイルパス「/usr/bin/sample」を、制限対象記憶部12が記憶する図2に例示したファイル情報と照合する。この例では、処理検出部13から受け取ったファイルパスが、制限対象記憶部12が記憶するファイル情報に含まれているため、第1処理制御部14は、プログラム「/usr/bin/sample」の実行を停止させるように制御する。つまり、本実施形態の情報処理装置10は、書き換えられていないプログラム「ls」の実行を開始させ、書き換えられたプログラム「/usr/bin/sample」の実行は停止させるように、実行開始が要求されたプログラムの実行を制御できる。
以上、具体的な例を挙げながら説明したように、本実施形態の情報処理装置10は、書き換えられたファイルのファイル情報を制限対象記憶部12に登録し、プログラムの実行開始の要求など、ファイルに対する処理が要求された場合に、そのファイルのファイル情報が、制限対象記憶部12が記憶するファイル情報に含まれていれば、そのファイルに対する処理を制限するようにしている。したがって、本実施形態の情報処理装置10によれば、想定外のプログラムなどのファイルに対する処理を効率よく制限し、情報処理装置10が意図しない挙動をしたり深刻なダメージを受けたりすることを有効に防止することができる。
なお、想定外のプログラムの実行を制限する技術として、ホワイトリスト技術がある。ホワイトリスト技術は、予めプログラムのファイルパスとそのハッシュ値を有するホワイトリストを作成し、プログラムの実行開始時にそのプログラムのハッシュ値がホワイトリストに格納されたハッシュ値と一致する場合にのみ、そのプログラムの実行を許可する方式である。また、プログラムのハッシュ値だけでなく、署名検証なども行うといった、より安全な方式も提案されている。しかし、ホワイトリスト技術は、実行を許可するプログラムに関する情報を持つホワイトリストを予め作成しなければならず、また、プログラムの実行開始時に署名検証やハッシュ値を計算するなど、処理負荷が大きい。これに対し本実施形態の情報処理装置10は、ファイルに対する書き込みを検出し、書き換えられたファイルに対する処理を制限する方式を採用するため、ホワイトリスト技術を用いる場合に必要とされるホワイトリストの作成、署名検証やハッシュ値計算などの処理が不要となり、ホワイトリスト技術を用いる場合と比較して、より効率的に、想定外のプログラムなどのファイルに対する処理を制限することができる。
(第1変形例)
上述の説明では、プログラムの実行開始の要求を検出し、制限対象記憶部12が記憶するファイル情報に、実行開始の要求があったプログラムのファイルパスが含まれている場合に、そのプログラムの実行を制限する例を説明した。しかし、本実施形態の情報処理装置10は、プログラムの実行開始に限らず、ファイルに対する様々な処理に対しても同様に制限を加えることができる。例えば、処理検出部13がファイルの読み込みの要求を検出し、読み込みが要求されたファイルのファイル情報が制限対象記憶部12に記憶されている場合に、第1処理制御部14がそのファイルを読み込まないように制御するといった例が挙げられる。
<第2実施形態>
次に、第2実施形態について説明する。本実施形態は、上述の第1実施形態に対し、ファイルの更新に対応する機能を付加したものである。すなわち、上述の第1実施形態では、書き換えられたファイルに対する処理を制限するため、更新によって書き換えられたファイルに対する処理も制限されてしまう。そこで、本実施形態では、ファイルの正当性を検証した結果、正当と判断されたファイルのファイル情報を制限対象記憶部12から削除することで、正当に更新されたファイルに対する処理が制限されることを防止する。
図4は、第2実施形態に係る情報処理装置10の機能的な構成例を示すブロック図である。本実施形態の情報処理装置10は、図4に示すように、上述の第1実施形態の構成(図1参照)に加えて、検証部15と、第1更新部16とをさらに備える。
検証部15は、ファイルが正当か否かを検証する。ファイルがプログラムである場合の検証部15の検証方法の具体例としては、ホワイトリスト技術による検証方法がある。この方法は、プログラムの実行開始時に、そのファイルパスとハッシュ値を計算し、それらがホワイトリストに含まれる場合には実行を許可し、そうでなければ実行を禁止する。なお、検証部15はファイルの正当性を検証するものであればよく、ホワイトリスト技術による検証方法とは異なる他の方法によりファイルの正当性を検証してもよい。
第1更新部16は、検証部15による検証完了を検知して検証結果を抽出し、検証部15によって正当と判断されたファイルのファイル情報が制限対象記憶部12に記憶されている場合に、そのファイル情報を制限対象記憶部12から削除する。例えば第1更新部16は、検証部15が正当性を検証したプログラムのファイルパスと、そのプログラムが正当か否かを示す検証結果を、検証部15による検証が行われるたびに抽出する。そして、検証結果が正当であることを示す場合に、そのプログラムのファイルパスが、制限対象記憶部12が記憶するファイル情報に含まれているか否かを確認し、含まれている場合にそのファイルパスを制限対象記憶部12から削除する。
図5は、本実施形態の情報処理装置10の動作例を説明するフローチャートである。なお、図5のフローチャートは、検証部15がプログラムの検証を行うたびに第1更新部16によって実行される処理手順を示している。処理検出部13と第1処理制御部14は、図5のフローチャートで示す処理とは別に、第1実施形態と同様の手順(図3参照)で処理を行う。
検証部15によるプログラムの検証が完了すると、第1更新部16は検証完了を検出し(ステップS201)、そのプログラムのファイルパスと検証結果を抽出する(ステップS202)。そして、第1更新部16は、抽出した検証結果に基づいて検証部15によるプログラムの検証が成功したか否かを判定し(ステップS203)、プログラムの検証が成功している場合は(ステップS203:Yes)、さらに、抽出したファイルパスが、制限対象記憶部12が記憶するファイル情報に含まれているか否かを判定する(ステップS204)。そして、制限対象記憶部12が記憶するファイル情報にそのファイルパスが含まれていれば(ステップS204:Yes)、第1更新部16は、そのファイルパスを制限対象記憶部12から削除する(ステップS205)。なお、検証部15によるプログラムの検証が失敗した場合や(ステップS203:No)、検証に成功したプログラムのファイルパスが制限対象記憶部12に記憶されていない場合は(ステップS204:No)、そのまま処理を終了する。
ここで、図2に例示したファイル情報が制限対象記憶部12に記憶されていることを想定し、具体例を例示しながら、検証部15によりプログラムの検証が行われたときの本実施形態の情報処理装置10の動作をさらに説明する。
例えば、検証部15がプログラム「/usr/bin/sample」の正当性を検証し、その結果がプログラム「/usr/bin/sample」が正当であることを示す検証成功であったとする。このとき、第1更新部16は、検証部15によるプログラムの検証完了を検出し、検証対象となったプログラムのファイルパス「/usr/bin/sample」と検証結果である「検証成功」を抽出する。次に、第1更新部16は、検証結果が検証成功であるので、ファイルパス「/usr/bin/sample」が制限対象記憶部12に記憶されているかを確認する。ここでは図2に示すように、ファイルパス「/usr/bin/sample」が制限対象記憶部12に記憶されているため、第1更新部16は、このファイルパス「/usr/bin/sample」を制限対象記憶部12から削除する。その結果、制限対象記憶部12が記憶するファイル情報が、図6に示すように更新される。
なお、ここでは検証部15がプログラムの正当性を検証するものとして説明したが、プログラム以外の様々なファイルについても同様に、検証部15が正当と判断したファイルのファイル情報が、制限対象記憶部12が記憶するファイル情報に含まれていれば、第1更新部16は、そのファイル情報を制限対象記憶部12から削除する。
以上、具体的な例を挙げながら説明したように、本実施形態の情報処理装置10は、検証部15により正当と判断されたファイルのファイル情報が、制限対象記憶部12が記憶するファイル情報に含まれている場合に、そのファイル情報を制限対象記憶部12から削除するようにしている。したがって、本実施形態の情報処理装置10によれば、不正に書き換えられたファイルに対する処理を制限しつつ、正常に書き換えられたファイルに対する処理は許可することができ、例えば、正当に更新されたプログラムに対する実行開始が制限されるといった不都合を有効に防止することができる。
(第2変形例)
上述の説明では、検証部15による検証結果に基づいて制限対象記憶部12が記憶するファイル情報を更新する例を説明した。しかし、制限対象記憶部12が記憶するファイル情報を、例えばコンソールやウェブインタフェースなどを経由して手動で更新できるように構成してもよい。
図7は、本変形例に係る情報処理装置10の機能的な構成例を示すブロック図である。本変形例に係る情報処理装置10は、図7に示すように、上述の第2実施形態の構成(図4参照)と比較して、検証部15と第1更新部16の代わりに、操作受付部17と第2更新部18を備える。
操作受付部17は、削除対象のファイル情報を指定する操作を受け付ける。ここでの操作は、例えば、制限対象記憶部12が記憶するファイル情報のリストを表示して、そのリストの中から削除対象のファイル情報をユーザが選択する操作であってもよいし、ユーザが任意にファイル情報を削除対象として指定する操作であってもよい。また、上述の第2実施形態と本変形例とを組み合わせ、検証部15により正当と判断されたファイルのファイル情報を削除するか否かをユーザに問い合わせ、そのファイル情報を削除することを指示する操作があった場合に、その操作を削除対象のファイル情報を指定する操作として、操作受付部17が受け付ける構成としてもよい。
第2更新部18は、操作受付部17が受け付けた操作により指定されたファイル情報が制限対象記憶部12に記憶されている場合に、そのファイル情報を制限対象記憶部12から削除する。例えば、プログラムの変更を伴うシステム更新を行う場合には、システム更新によって変更されたプログラムのファイルパスが制限対象記憶部12に登録される。この場合、変更されたプログラムのファイルパスを削除対象として指定する操作が操作受付部17によって受け付けられると、第2更新部18は、その変更されたプログラムのファイルパスを制限対象記憶部12から削除する。
なお、本変形例では、ユーザ操作に応じて制限対象記憶部12からファイル情報を削除することで制限対象記憶部12を更新しているが、本変形例を上述の第2実施形態と組み合わせ、ユーザ操作に応じて制限対象記憶部12を更新する機能と、検証部15の検証結果に応じて制限対象記憶部12を自動的に更新する機能との双方を、情報処理装置10に持たせるようにしてもよい。この場合、情報処理装置10は、上述の第2実施形態の構成に対し、操作受付部17と第2更新部18とを付加した構成となる。
<第3実施形態>
次に、第3実施形態について説明する。本実施形態は、制限対象記憶部12が記憶するファイル情報に基づく処理の制限を、ファイルに対する検証結果に基づく処理の制限と連携させることで、多重防御を実現する例である。
図8は、第3実施形態に係る情報処理装置10の機能的な構成例を示すブロック図である。本実施形態の情報処理装置10は、図8に示すように、上述の第2実施形態の構成(図4参照)に加えて、第2処理制御部19と、検証監視部20とをさらに備える。
第2処理制御部19は、検証部15による検証によって正当でないと判断されたファイルに対する処理を制限する。第2処理制御部19による処理の制限は、第1処理制御部14と同様である。すなわち、ファイルに対する処理がプログラムの実行開始であれば、第2処理制御部19は、そのプログラムの実行を停止させるといった制御を行う。
検証監視部20は、検証部15が正常に動作しているか否かを監視して、検証部15が正常に動作しているか否かに応じて、処理検出部13および第1処理制御部14の動作を制御する。例えば検証監視部20は、検証部15が正常に動作しているか否かを定期的に監視して、検証部15が正常に動作していないと判断すると、処理検出部13に検出開始を要求する。これにより、処理検出部13がファイル処理(ファイルに対する処理開始の要求)の検出を開始し、これに応じて第1処理制御部14が動作を開始する。一方、検証部15が正常に動作していると判断すると、検証監視部20は、処理検出部13に検出停止を要求する。これにより、処理検出部13がファイル処理の検出を停止し、第1処理制御部14も動作を停止する。
なお、検証部15が正常に動作しているか否かを監視する方法は特に限定されるものではなく、様々な方法を利用できる。例えば、現在稼働しているプロセスのリストを参照し、そのリストに検証部15のプロセスが含まれているかを確認する方法や、検証部15に対して所定のメッセージを送信し、そのメッセージの応答を受信できた場合に検証部15が正常に動作していると判断する方法などを用いることができる。
図9は、本実施形態の情報処理装置10の動作例を説明するフローチャートである。なお、図9のフローチャートは、検証監視部20によって定期的に実行される処理手順を示している。処理検出部13と第1処理制御部14は、検証監視部20が処理検出部13に検出開始を要求した後、第1実施形態と同様の手順(図3参照)で処理を行う。
検証監視部20は、定期的な監視によって、検証部15が正常に動作しているか否かを確認する(ステップS301)。そして、検証部15が正常に動作していないと判断すると(ステップS301:No)、検証監視部20は、処理検出部13に対して検出開始を要求し、処理検出部13によるファイル処理の検出を開始させる(ステップS302)。一方、検証部15が正常に動作いていると判断すると(ステップS301:Yes)、検証監視部20は、処理検出部13に対して検出停止を要求し、処理検出部13によるファイル処理の検出を停止させる(ステップS303)。
以上説明したように、本実施形態の情報処理装置10は、検証部15が正常に動作しているか否かを監視し、検証部15が正常に動作していないときに、第1処理制御部14による処理の制限、つまり、制限対象記憶部12が記憶するファイル情報に基づく処理の制限を実行するようにしている。したがって、本実施形態によれば、第1処理制御部14と第2処理制御部19とを同時に稼働させることによるパフォーマンス劣化を防止することができる。また、計算機システムの安全性を強化する方法として、多重防御と呼ばれる手法がある。本実施形態のように、第1処理制御部14と第2処理制御部19といった、異なる複数の処理制御部を設けることにより、1つの処理制御部が攻撃された場合であっても別の処理制御部によってこれを防止することができる。つまり、本実施形態のように情報処理装置10を構成することにより、より安全性を高めることが可能となる。
なお、情報処理装置10のパフォーマンスを維持するために、検証部15が正常に動作していないときに、検証監視部20が検証部15に対して検証停止を要求し、検証部15によるファイルの検証処理を停止させてもよい。
以上、第1実施形態、第1変形例、第2実施形態、第2変形例および第3実施形態を説明したが、上述の各実施形態および各変形例は、任意に組み合わせて実施することも可能である。
<補足説明>
上述の各実施形態および各変形例の情報処理装置10は、例えば、一般的なコンピュータを構成するハードウェアと、コンピュータで実行されるプログラム(ソフトウェア)との協働により実現することができる。上述の各実施形態および各変形例として説明した情報処理装置10の機能は、例えば、コンピュータが、ROM(Read Only Memory)などの不揮発メモリに予めファームウェアとして格納されたプログラムを実行することによって実現することができる。
図10は、情報処理装置10のハードウェア構成例を示すブロック図である。情報処理装置10は、例えば図10に示すように、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)などのプロセッサ回路101と、RAM(Random Access Memory)やROMなどのメモリ102と、HDD(Hard Disk Drive)やSDD(Solid State Drive)などのストレージデバイス103と、入力デバイス106やディスプレイ107などの周辺機器を接続するための入出力I/F104と、外部機器と通信を行う通信I/F105と、を備えた一般的なコンピュータ(計算機システム)としてのハードウェア構成を採用することができる。そして、例えば、プロセッサ回路101がメモリ102を利用してファームウェアのプログラムを実行することにより、上述の書き込み検出部11、処理検出部13、第1処理制御部14、検証部15、第1更新部16、操作受付部17、第2更新部18、第2処理制御部19、検証監視部20など、上述の各実施形態および各変形例の情報処理装置10の各部を実現することができる。また、制限対象記憶部12は、例えばストレージデバイス103を用いて実現することができる。
すなわち、上記の各部は、例えば、ファームウェアを構成するプログラムとしてROMなどに格納されてコンピュータに実装され、コンピュータが備える1以上のプロセッサがROMからプログラムをRAM上にロードして実行することにより、上記の各部をRAM上で生成することができる。
なお、上述の各実施形態および各変形例の情報処理装置10の各部を実現するためのプログラムは、ROMなどの不揮発メモリに予め格納して提供する形態のほか、例えば、インターネットなどのネットワークに接続された他のコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するようにしてもよい。また、上記プログラムを、インターネットなどのネットワーク経由で提供または配布するようにしてもよい。また、上記プログラムを、コンピュータ読み取り可能な記録媒体に格納して提供するようにしてもよい。
なお、上述の各実施形態および各変形例の情報処理装置10の各部は、その一部または全部が、ASIC(Application Specific Integrated Circuit)やFPGA(Field-Programmable Gate Array)などの専用のハードウェアにより実現される構成であってもよい。
また、上述の各実施形態および各変形例の情報処理装置10は、複数台のコンピュータを通信可能に接続したネットワークシステムとして構成し、上述の各部を複数台のコンピュータに分散して実現する構成であってもよい。また、上述の各実施形態および各変形例の情報処理装置10は、クラウドシステム上で動作する仮想マシンであってもよい。
以上、本発明の実施形態を説明したが、この実施形態は例として提示したものであり、発明の範囲を限定することは意図していない。この新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。これら実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
10 情報処理装置
11 書き込み検出部
12 制限対象記憶部
13 処理検出部
14 第1処理制御部
15 検証部
16 第1更新部
17 操作受付部
18 第2更新部
19 第2処理制御部
20 検証監視部

Claims (6)

  1. ファイルに対する書き込みを検出し、該書き込みにより書き換えられた前記ファイルのファイル情報を制限対象記憶部に登録する書き込み検出部と、
    ファイルに対する処理が要求されたときに、前記制限対象記憶部が記憶するファイル情報に、処理が要求されたファイルのファイル情報が含まれていれば、該ファイルに対する処理を制限する第1処理制御部と、
    ファイルが正当か否かを検証する検証部と、
    前記検証部により正当でないと判断されたファイルに対する処理を制限する第2処理制御部と、
    前記検証部が正常に動作しているか否かを監視する検証監視部と、を備え、
    前記第1処理制御部は、前記検証監視部により前記検証部が正常に動作していないと判断されると動作を開始し、前記検証監視部により前記検証部が正常に動作していると判断されると動作を停止する
    報処理装置。
  2. 前記ファイルはプログラムであって、
    前記第1処理制御部は、プログラムの実行開始が要求されたときに、前記制限対象記憶部が記憶するファイル情報に、実行開始が要求されたプログラムのファイル情報が含まれていれば、該プログラムの実行を制限する
    請求項1に記載の情報処理装置。
  3. ファイルが正当か否かを検証する検証部と、
    前記検証部により正当と判断されたファイルのファイル情報が前記制限対象記憶部に記憶されている場合に、該ファイル情報を前記制限対象記憶部から削除する第1更新部と、をさらに備える
    請求項1または2に記載の情報処理装置。
  4. 削除対象のファイル情報を指定する操作を受け付ける操作受付部と、
    前記操作により指定されたファイル情報が前記制限対象記憶部に記憶されている場合に、該ファイル情報を前記制限対象記憶部から削除する第2更新部と、をさらに備える
    請求項1乃至3のいずれか一項に記載の情報処理装置。
  5. 情報処理装置において実行される情報処理方法であって、
    書き込み検出部が、ファイルに対する書き込みを検出し、該書き込みにより書き換えられた前記ファイルのファイル情報を制限対象記憶部に登録するステップと、
    第1処理制御部が、ファイルに対する処理が要求されたときに、前記制限対象記憶部が記憶するファイル情報に、処理が要求されたファイルのファイル情報が含まれていれば、該ファイルに対する処理を制限するステップと、
    検証部が、ファイルが正当か否かを検証するステップと、
    第2処理制御部が、前記検証部により正当でないと判断されたファイルに対する処理を制限するステップと、
    検証監視部が、前記検証部が正常に動作しているか否かを監視するステップと、を含み、
    前記第1処理制御部は、前記検証監視部により前記検証部が正常に動作していないと判断されると動作を開始し、前記検証監視部により前記検証部が正常に動作していると判断されると動作を停止する
    報処理方法。
  6. コンピュータに、
    ファイルに対する書き込みを検出し、該書き込みにより書き換えられた前記ファイルのファイル情報を制限対象記憶部に登録する書き込み検出機能と、
    ファイルに対する処理が要求されたときに、前記制限対象記憶部が記憶するファイル情報に、処理が要求されたファイルのファイル情報が含まれていれば、該ファイルに対する処理を制限する第1処理制御機能と、
    ファイルが正当か否かを検証する検証機能と、
    前記検証機能により正当でないと判断されたファイルに対する処理を制限する第2処理制御機能と、
    前記検証機能が正常に動作しているか否かを監視する検証監視機能と、を実現させ、
    前記第1処理制御機能は、前記検証監視機能により前記検証機能が正常に動作していないと判断されると動作を開始し、前記検証監視機能により前記検証機能が正常に動作していると判断されると動作を停止する
    ログラム。
JP2017169831A 2017-09-04 2017-09-04 情報処理装置、情報処理方法およびプログラム Active JP6829168B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017169831A JP6829168B2 (ja) 2017-09-04 2017-09-04 情報処理装置、情報処理方法およびプログラム
US15/907,347 US10915623B2 (en) 2017-09-04 2018-02-28 Information processing apparatus, information processing method, and computer program product

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2017169831A JP6829168B2 (ja) 2017-09-04 2017-09-04 情報処理装置、情報処理方法およびプログラム

Publications (2)

Publication Number Publication Date
JP2019046266A JP2019046266A (ja) 2019-03-22
JP6829168B2 true JP6829168B2 (ja) 2021-02-10

Family

ID=65518146

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017169831A Active JP6829168B2 (ja) 2017-09-04 2017-09-04 情報処理装置、情報処理方法およびプログラム

Country Status (2)

Country Link
US (1) US10915623B2 (ja)
JP (1) JP6829168B2 (ja)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6783812B2 (ja) 2018-03-13 2020-11-11 株式会社東芝 情報処理装置、情報処理方法およびプログラム
JP6914899B2 (ja) 2018-09-18 2021-08-04 株式会社東芝 情報処理装置、情報処理方法およびプログラム
US11520876B2 (en) * 2020-02-03 2022-12-06 Dell Products L.P. Efficiently authenticating an application during I/O request handling

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6694434B1 (en) * 1998-12-23 2004-02-17 Entrust Technologies Limited Method and apparatus for controlling program execution and program distribution
US7487543B2 (en) * 2002-07-23 2009-02-03 International Business Machines Corporation Method and apparatus for the automatic determination of potentially worm-like behavior of a program
JP4226556B2 (ja) 2002-12-12 2009-02-18 富士通株式会社 プログラム実行制御装置、os、クライアント端末、サーバ、プログラム実行制御システム、プログラム実行制御方法、プログラム実行制御プログラム
US7694328B2 (en) * 2003-10-21 2010-04-06 Google Inc. Systems and methods for secure client applications
US8819639B2 (en) * 2004-09-15 2014-08-26 Lakeside Software, Inc. System for selectively blocking execution of applications on a computer system
WO2006101549A2 (en) 2004-12-03 2006-09-28 Whitecell Software, Inc. Secure system for allowing the execution of authorized computer program code
JP4547306B2 (ja) * 2005-06-03 2010-09-22 株式会社エヌ・ティ・ティ・ドコモ 識別情報管理装置及び識別情報管理方法
US20070028291A1 (en) * 2005-07-29 2007-02-01 Bit 9, Inc. Parametric content control in a network security system
JP4288292B2 (ja) * 2006-10-31 2009-07-01 株式会社エヌ・ティ・ティ・ドコモ オペレーティングシステム監視設定情報生成装置及びオペレーティングシステム監視装置
JP4542544B2 (ja) * 2006-12-28 2010-09-15 キヤノンItソリューションズ株式会社 通信データ監視装置および通信データ監視方法およびプログラム
US8214895B2 (en) * 2007-09-26 2012-07-03 Microsoft Corporation Whitelist and blacklist identification data
US8950007B1 (en) 2008-04-07 2015-02-03 Lumension Security, Inc. Policy-based whitelisting with system change management based on trust framework
JP5191043B2 (ja) 2008-04-21 2013-04-24 学校法人東京電機大学 プログラムの不正起動防止システム及び方法
US8769685B1 (en) * 2010-02-03 2014-07-01 Symantec Corporation Systems and methods for using file paths to identify potentially malicious computer files
JP5389740B2 (ja) * 2010-06-08 2014-01-15 日本電信電話株式会社 更新方法、更新装置及び更新システム
US20130055369A1 (en) * 2011-08-24 2013-02-28 Mcafee, Inc. System and method for day-zero authentication of activex controls
JP5126447B1 (ja) 2012-08-31 2013-01-23 大日本印刷株式会社 アプリケーションプログラムの実行方法
US9767280B2 (en) * 2012-10-09 2017-09-19 Canon Denshi Kabushiki Kaisha Information processing apparatus, method of controlling the same, information processing system, and information processing method
JP6254414B2 (ja) * 2012-10-09 2017-12-27 キヤノン電子株式会社 情報処理装置、情報処理システムおよび情報処理方法
KR101554633B1 (ko) * 2014-03-04 2015-09-21 한국전자통신연구원 악성 코드 검출 장치 및 그 방법
CN104484599B (zh) * 2014-12-16 2017-12-12 北京奇虎科技有限公司 一种基于应用程序的行为处理方法和装置
JP2016177554A (ja) * 2015-03-20 2016-10-06 セイコーエプソン株式会社 電子部品搬送装置および電子部品検査装置
JP2016181208A (ja) * 2015-03-25 2016-10-13 三菱電機株式会社 不正監視装置および不正監視プログラム
US10176438B2 (en) * 2015-06-19 2019-01-08 Arizona Board Of Regents On Behalf Of Arizona State University Systems and methods for data driven malware task identification
ES2701702T3 (es) * 2016-02-09 2019-02-25 Siemens Ag Procedimiento y entorno de ejecución para la ejecución asegurada de instrucciones de programa
AU2017223566B2 (en) * 2016-02-23 2021-10-21 Carbon Black, Inc. Cybersecurity systems and techniques
WO2017147441A1 (en) * 2016-02-26 2017-08-31 Cylance Inc. Sub-execution environment controller
GB2553836B (en) * 2016-09-16 2021-05-19 1E Ltd File execution
JP6728113B2 (ja) 2017-08-22 2020-07-22 株式会社東芝 情報処理装置、情報処理方法、および情報処理プログラム
JP6759169B2 (ja) 2017-09-11 2020-09-23 株式会社東芝 情報処理装置、情報処理方法、および情報処理プログラム
JP6903529B2 (ja) 2017-09-11 2021-07-14 株式会社東芝 情報処理装置、情報処理方法およびプログラム

Also Published As

Publication number Publication date
US20190073471A1 (en) 2019-03-07
US10915623B2 (en) 2021-02-09
JP2019046266A (ja) 2019-03-22

Similar Documents

Publication Publication Date Title
US9246992B2 (en) Virtual desktop implementation method, apparatus, and system
JP6783812B2 (ja) 情報処理装置、情報処理方法およびプログラム
JP6914899B2 (ja) 情報処理装置、情報処理方法およびプログラム
US9576132B2 (en) Information processing apparatus and information processing method
US20130160126A1 (en) Malware remediation system and method for modern applications
US8930894B2 (en) Method and system for executing an executable file
JP6829168B2 (ja) 情報処理装置、情報処理方法およびプログラム
US20060265756A1 (en) Disk protection using enhanced write filter
JP5621912B2 (ja) 情報処理装置及び情報処理装置の制御方法
US9448888B2 (en) Preventing a rollback attack in a computing system that includes a primary memory bank and a backup memory bank
US20160259944A1 (en) Information processing apparatus and method for controlling the same
US20170329969A1 (en) Information processing device and computer program product
JP2007148805A (ja) 情報処理装置、情報処理方法およびプログラム
WO2007022687A1 (fr) Système et procédé de contrôle de sécurité de système d’exploitation
JP5402169B2 (ja) 実行制御プログラムおよび情報処理システム
KR20130002692A (ko) 백신과 컴퓨터 최적화 기능을 구비한 컴퓨터 최적화 방법, 최적화 서버 및 컴퓨터 판독 가능한 기록매체
JP6258001B2 (ja) 電子機器および方法
WO2009048158A1 (ja) ファイルチェック装置、ファイルチェックプログラムおよびファイルチェック方法
JP7431776B2 (ja) 情報処理装置、情報処理方法、およびプログラム
JP7255681B2 (ja) 実行制御システム、実行制御方法、及びプログラム
US11972245B2 (en) Proactive prevention of data unavailability and data loss
JP7476140B2 (ja) 情報処理装置、情報処理方法、およびプログラム
US11586723B2 (en) Information processing apparatus, control method for information processing apparatus, and storage medium
JP2014099082A (ja) 情報処理システム、情報処理装置、情報処理プログラム、アプリケーションの実行方法、および、記憶媒体
JP7341376B2 (ja) 情報処理装置、情報処理方法、及び、情報処理プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190816

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200416

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200602

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200715

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20201222

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210121

R151 Written notification of patent or utility model registration

Ref document number: 6829168

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151