JP2008135004A - オペレーティングシステム監視設定情報生成装置及びオペレーティングシステム監視装置 - Google Patents

オペレーティングシステム監視設定情報生成装置及びオペレーティングシステム監視装置 Download PDF

Info

Publication number
JP2008135004A
JP2008135004A JP2007248044A JP2007248044A JP2008135004A JP 2008135004 A JP2008135004 A JP 2008135004A JP 2007248044 A JP2007248044 A JP 2007248044A JP 2007248044 A JP2007248044 A JP 2007248044A JP 2008135004 A JP2008135004 A JP 2008135004A
Authority
JP
Japan
Prior art keywords
monitoring
setting information
unit
operating system
software
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.)
Granted
Application number
JP2007248044A
Other languages
English (en)
Other versions
JP4288292B2 (ja
Inventor
Masaru Ota
賢 太田
Takeshi Inamura
雄 稲村
Hisashi Oguma
寿 小熊
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.)
NTT Docomo Inc
Original Assignee
NTT Docomo Inc
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 NTT Docomo Inc filed Critical NTT Docomo Inc
Priority to JP2007248044A priority Critical patent/JP4288292B2/ja
Priority to EP07021250A priority patent/EP1918841A2/en
Priority to CN2007101670829A priority patent/CN101187867B/zh
Priority to US11/931,676 priority patent/US8151249B2/en
Publication of JP2008135004A publication Critical patent/JP2008135004A/ja
Application granted granted Critical
Publication of JP4288292B2 publication Critical patent/JP4288292B2/ja
Expired - Fee Related 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
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/572Secure firmware programming, e.g. of basic input output system [BIOS]

Landscapes

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

Abstract

【課題】更新時と動作時の双方において、デバイス内のOSの完全性や健全性を安全かつ効率的に監視して正常動作を維持する。
【解決手段】OS監視設定情報生成装置10は、OS監視装置30による監視で用いられる監視設定情報を保持する監視設定情報管理部12と、監視設定情報管理部12により保持されている監視設定情報と、バージョン情報と、監視対象ソフトウェアとの対応関係を示すバインド情報とを含む監視設定情報ファイルを生成して出力する監視設定情報出力部13と、監視設定情報ファイルのデジタル署名を生成して付与するデジタル署名部14とを備える。
【選択図】図1

Description

本発明は、携帯電話やPDA(Personal Digital Assistant)やPC(Personal Computer)や情報家電等のデバイス内に配置するオペレーティングシステム監視装置(以下、OS監視装置)と、オペレーティングシステム(以下、OS)を監視するための監視設定情報を生成するオペレーティングシステム監視設定情報生成装置(以下、OS監視設定情報生成装置)に関する。
従来、携帯電話やPC等のデバイスにおいて、監視対象のOSから隔離された環境に配置されたOS監視装置によって、該監視対象のOSのメモリやファイルの完全性を監視して、異常時に対処する技術が知られている(特許文献1参照)。
かかるOS監視装置は、メモリやファイルを監視するための監視設定情報(ソフトウェアのバイナリのハッシュ値やアドレスやサイズ等を含む)をポリシーとして保持する。
このように、かかる技術によれば、かかるOS監視装置を、監視対象のOSから隔離された環境に配置することで、障害や攻撃から監視対象のOSを保護することができる。
一方、パッチ適用や機能追加のために、監視対象ソフトウェアを更新する際、かかる監視対象ソフトウェアに対応する監視設定情報も整合をとって更新する必要がある。
かかる必要性を考慮して、ソフトウェア更新パッケージの署名検証や、デバイス識別情報に基づいてソフトウェア更新パッケージと当該デバイスのソフトウェア構成との適合性を検査する技術が開発されている(特許文献2参照)。
US 20050132122 A1 US 6832373 US 20010018717 A1
しかしながら、デバイス内のOSの完全性や健全性を安全かつ効率的に監視し、正常動作を維持するにあたり、更新時と動作時(いわゆる、ランタイム)の双方において、以下のような課題がある。
(更新時の課題)
更新時の課題としては、不正な監視設定情報への更新、或いは、更新されたソフトウェアと整合しない監視設定情報への更新を防止することが挙げられる。前者の不正な監視設定情報への更新は、デジタル署名等によって検証できるが、後者を解決するには、以下のような課題がある。
第1の課題は、監視設定情報の更新の失敗による不整合の防止である。
すなわち、ソフトウェアの更新完了後に、当該ソフトウェアに対応する監視設定情報の更新に失敗すると、当該更新後のソフトウェアと当該更新に失敗した監視設定情報との間に不整合が起きるが、当該更新後のソフトウェアを元に戻すのは、ストレージ容量の制約により困難である。
そして、デバイスが、このような不整合状態のまま動作すると、OS監視装置によって異常が検知され、リセットによって利用不可になったり、機能制限が課されたりする等、ユーザの利便性が低下するという問題点があった。
第2の課題は、デバイス内のソフトウェア環境との不整合の防止である。
すなわち、監視設定情報の生成時に、当該監視設定情報とソフトウェア更新パッケージとの不整合が紛れ込む場合、監視設定情報の更新は成功しても、当該監視設定情報とソフトウェアと間に不整合が起きてしまい、OS監視装置による監視が失敗するという問題点があった。
また、監視設定情報のみを独立して更新する場合、デバイス内のソフトウェア環境と適合しているかの確認が必要である。そして、デバイス内のソフトウェア環境に適合していないにも関わらず監視設定情報を更新した場合、当該監視設定情報とソフトウェアと間に不整合が起きてしまうという問題点があった。
第3の課題は、古い監視設定情報への置き換え防止である。
すなわち、既に新しい監視設定情報が存在するにも関わらず、当該監視設定情報を古い監視設定情報に置き換えるような攻撃がされた場合、署名検証では、かかる攻撃を検知できず、古いセキュリティポリシーで動作する脅威が存在するという問題点があった。
(動作時の課題)
動作時の課題としては、監視設定情報の更新と効率化の観点から、以下のような課題がある。
第1の課題は、動作時に配置アドレスが決まるソフトウェアの対応である。
すなわち、利用時に動的にロードされるデバイスドライバ等について、OS監視装置は、当該デバイストライバ等の配置アドレスをOSから動作時に通知してもらう必要があるが、危殆化されたOSは、偽装する(嘘をつく)可能性があるという問題点があった。
第2の課題は、オーバヘッドの削減である。
すなわち、上述の監視に係るオーバヘッドを削減するに際して、上述の監視による応答性低下やバッテリ消費増への対策と、安全性維持とのトレードオフの関係を考慮する必要がある。
そこで、本発明は、上述の課題に鑑みてなされたものであり、更新時と動作時の双方において、デバイス内のOSの完全性や健全性を安全かつ効率的に監視して正常動作を維持することができるOS監視設定情報生成装置及びOS監視装置を提供することを目的とする。
本発明の第1の特徴は、オペレーティングシステム監視設定情報生成装置であって、オペレーティングシステム監視装置による監視で用いられる監視設定情報を保持する監視設定情報管理部と、前記監視設定情報管理部により保持されている前記監視設定情報と、バージョン情報と、監視対象ソフトウェアとの対応関係を示すバインド情報とを含む監視設定情報ファイルを生成して出力する監視設定情報出力部と、前記監視設定情報ファイルのデジタル署名を生成して付与するデジタル署名部とを備えることを要旨とする。
かかる発明によれば、監視設定情報ファイルに対して、監視対象ソフトウェアとの対応関係を示すバインド情報を付加することで、ソフトウェア更新パッケージ又は監視対象ソフトウェアと監視設定情報との間の不整合を防止することができる。
また、かかる発明によれば、監視設定情報ファイルのバージョン情報を付加することで、古い監視設定情報ファイルへの置き換えを防止することができる。
また、かかる発明によれば、デジタル署名を付与することにより、監視設定情報の改竄を防ぎ、OS監視装置による安全な監視を行うことができる。
さらに、かかる発明によれば、最新の監視設定情報ファイルのバージョンをチェックすることで、古い監視設定情報ファイルへの置き換え攻撃を防止することができる。
本発明の第1の特徴において、前記監視設定情報は、前記監視対象ソフトウェアのハッシュ値と、該監視対象ソフトウェアが保持されるアドレスと、該監視対象ソフトウェアのサイズとを含んでいてもよい。
かかる発明によれば、OS監視設定情報生成装置は、上述の監視設定情報を、OS監視装置に提供するため、かかるOS監視装置は、かかる監視設定情報を用いて、ソフトウェアの完全性を検証して異常時に対処を実行することで、デバイスの正常動作を維持することができる。
本発明の第1の特徴において、前記監視設定情報は、前記監視対象記憶領域のアドレスと、該監視対象記憶領域のサイズと、該監視対象記憶領域に保持される値が取り得る範囲とを含んでいてもよい。
かかる発明によれば、OS監視設定情報生成装置は、上述の監視設定情報を、OS監視装置に提供するため、OS監視装置は、かかる監視設定情報を用いて、監視対象パラメータ(監視対象記憶領域におけるパラメータ)が正常の値を取っているか或いは改竄されていないかについて検査することで、デバイスの正常動作を維持することができる。
本発明の第1の特徴において、前記監視設定情報は、前記監視のタイミング、該監視の頻度、該監視の周期の少なくとも1つを指定する監視スケジューリング情報を更に含んでいてもよい。
かかる発明によれば、OS監視装置は、上述の監視スケジューリング情報を用いて、上述の監視を適切にスケジューリングすることで、効率的かつ十分に安全な監視を実行することができる。
本発明の第1の特徴において、前記監視スケジューリング情報は、前記監視のタイミングとして、該監視対象ソフトウェアの監視を実行する契機となるイベント種別或いは前記オペレーティングシステム監視装置の起動時の少なくとも1つを指定していてもよい。
かかる発明によれば、OS監視装置は、上述の監視スケジューリング情報を用いて、特定のイベントが起きたときのみ、或いは、OS監視装置の起動時のみ、当該監視対象ソフトウェアを監視することにより、上述の監視によるオーバヘッドを削減し、効率的な監視を実行することができる。
本発明の第1の特徴において、前記監視スケジューリング情報は、前記監視の頻度として、該監視対象ソフトウェアの監視に関する優先度を指定していてもよい。
かかる発明によれば、OS監視装置は、重要な監視対象ソフトウェア或いは攻撃されやすい監視対象ソフトウェアに高い優先度を与えることで、このようなソフトウェアを高頻度で監視して、安全性を保証しつつ、優先度の低いソフトウェアの監視頻度を削減して、効率化を図ることができる。
本発明の第2の特徴は、オペレーティングシステム上の監視対象ソフトウェアの監視を行うオペレーティングシステム監視装置であって、オペレーティングシステム監視設定情報生成装置から入力された監視設定情報ファイルに含まれている監視設定情報を利用して、前記監視を行う監視部と、前記監視対象ソフトウェアが更新される前に、前記監視設定情報ファイルの更新の可否について判定する更新テスト部と、前記監視設定情報ファイルが更新可能であると判定された場合に、前記監視設定情報ファイルを更新する監視設定情報更新部と、所定回数以上、前記監視設定情報ファイルの更新に失敗した場合に、該監視設定情報ファイルに対する復旧処理を行う復旧部とを備えることを要旨とする。
かかる発明によれば、OS監視装置は、監視設定情報の更新可否を判定する事前テストを行った後に、監視対象ソフトウェア及び監視設定情報ファイルの更新を行うことにより、監視対象ソフトウェア及び監視設定情報の更新時の障害による不整合防止に対処することができる。
本発明の第2の特徴において、前記更新テスト部は、前記監視設定情報ファイルと前記監視対象ソフトウェアとの対応関係を示すバインド情報を検査してもよい。
かかる発明によれば、監視設定情報の更新可否を判定する事前テストの際には、ソフトウェア更新パッケージ又は監視対象ソフトウェアとのバインド情報を検査することで、監視設定情報とソフトウェアとの間の不整合が起きることを防止することができる。
また、かかる発明によれば、監視設定情報のみの更新の際も、デバイス側に保存されている監視対象ソフトウェアとの整合を検査して、監視設定情報とソフトウェアとの間の不整合が起きることを防止することができる。
本発明の第2の特徴において、前記監視設定情報に基づいて前記監視対象ソフトウェアのハッシュ値を算出し、算出した該監視対象ソフトウェアのハッシュ値と該監視設定情報に含まれる前記監視対象ソフトウェアのハッシュ値とを比較し、両者が一致しない場合に、該監視対象ソフトウェアに関する異常が発生したと判定する完全性監視部を備えていてもよい。
かかる発明によれば、悪意のソフトウェアによる監視対象ソフトウェアの改竄や消去を検知して対処することで、正常動作を維持することができる。
本発明の第2の特徴において、監視設定情報に含まれる監視スケジューリング情報に従って、前記監視を制御する監視制御部を備えていてもよい。
かかる発明によれば、上述の監視を適切にスケジューリングすることで、効率的かつ安全な監視を実行することができる。
本発明の第2の特徴において、入力されたイベント情報と、前記監視スケジューリング情報において前記監視のタイミングとして指定されているイベント種別とが一致した場合に、該監視を実行するように該監視を制御するイベントベース監視制御部を備えていてもよい。
かかる発明によれば、特定のイベントが起きたときのみ、監視対象ソフトウェアを監視することにより、上述の監視によるオーバヘッドを削減して、効率的な監視を実行することができる。
本発明の第2の特徴において、前記監視スケジューリング情報において指定されている優先度に従って、前記監視の順序や周期を調整する優先度ベース監視制御部を備えていてもよい。
かかる発明によれば、重要な監視対象ソフトウェア或いは攻撃されやすい監視対象ソフトウェアに高い優先度を与えることで、OS監視装置は、このようなソフトウェアを高頻度で監視して、安全性を保証しつつ、優先度の低いソフトウェアの監視頻度を削減して、効率化を図ることができる。
本発明の第2の特徴において、前記監視部は、前記監視の要否を示す監視フラグに応じて、該監視を行うか否かについて決定してもよい。
かかる発明によれば、監視部における監視機能に不具合があった場合に、遠隔から当該監視機能をオフにし、当該監視機能を修正した後、オンにする等の対応が可能となる。
また、かかる発明によれば、監視設定情報の更新に失敗した場合にも、当該監視機能をオフにて起動して、デバイスの利用可能性を確保することができる。
本発明の第2の特徴において、オペレーティングシステム監視装置自身のプログラム及びパラメータの改竄を検知する自己監視部を備えていてもよい。
かかる発明によれば、OS監視装置自身を攻撃から守り、安全な監視を行うことができる。
本発明の第2の特徴において、前記監視設定情報は、前記監視対象記憶領域のアドレスと、該監視対象記憶領域のサイズと、該監視対象記憶領域に保持される値が取り得る範囲を含み、前記監視設定情報に基づいて、前記監視対象記憶領域におけるパラメータの正常性を判定するパラメータ監視部を備えていてもよい。
かかる発明によれば、監視対象パラメータ(監視対象記憶領域におけるパラメータ)が正常の値を取っているか或いは改竄されていないかについて検査して、デバイスの正常動作を維持することができる。
以上説明したように、本発明によれば、更新時と動作時の双方において、デバイス内のOSの完全性や健全性を安全かつ効率的に監視して正常動作を維持することができるOS監視設定情報生成装置及びOS監視装置を提供することができる。
(本発明の第1の実施形態に係るOS監視設定情報生成装置及びOS監視装置の構成)
図1乃至図6を参照して、本発明の第1の実施形態に係るOS監視設定情報生成装置10及びOS監視装置30の構成について説明する。
図1に示すように、本実施形態に係るOS監視設定情報生成装置10は、監視設定情報入力部11と、監視設定情報管理部12と、監視設定情報出力部13と、デジタル署名部14とを具備する。
本実施形態では、OS監視設定情報生成装置10を、ソフトウェアにて実装することを想定しているが、その一部或いは全体をハードウェアにて実装してもよい。
OS監視設定情報生成装置10としては、デバイスのソフトウェア更新パッケージを生成するツールと共に利用されるツールを想定している。なお、OS監視設定情報生成装置10自身が、ソフトウェア更新パッケージを生成する機能を備えてもよい。
監視設定情報入力部11は、外部からの入力や計算によって、監視対象ソフトウェアに対応する監視設定情報を取得するように構成されている。
図2及び図3に、かかる監視設定情報の具体例を示す。
図2は、監視対象ソフトウェアの完全性を監視するための監視設定情報である。図2に示すように、かかる監視設定情報は、監視対象ソフトウェアの識別子と、当該監視対象ソフトウェアのハッシュ値と、当該監視対象ソフトウェアが保持されるアドレスと、当該監視対象ソフトウェアのサイズと、監視スケジューリング情報を含む。
ここで、監視対象ソフトウェアの識別子は、当該監視対象ソフトウェアの識別番号でもよいし、当該監視対象ソフトウェアを構成するファイルを識別するための文字列(例えば、ファイル名)でもよい。
また、監視対象ソフトウェアが保持されるアドレスとは、フラッシュROM(フラッシュメモリ)上で直接実行される場合は、かかるフラッシュROM上に格納されている監視対象ソフトウェアのバイナリのアドレスを示す。
なお、かかるアドレスは、監視対象ソフトウェアを監視するために用いられるアドレスであるため、監視対象ソフトウェア(プログラム)の先頭アドレス(実行のための開始アドレス)であってもよいし、プログラムの途中のアドレスであってもよい。
また、監視対象ソフトウェアのハッシュ値は、図2の例では、アドレス「0xa000」からサイズ「4KB」の範囲の監視対象ソフトウェア(プログラム)に対して、SHA1アルゴリズムを用いて160ビットの値として計算されるものである。
また、監視スケジューリング情報は、上述の監視のタイミング、当該監視の頻度、当該監視の周期の少なくとも1つを指定するものである。
例えば、監視スケジューリング情報は、当該監視のタイミングの指定として、当該監視対象ソフトウェアの監視を実行する契機となるイベント種別や、OS監視装置30の起動時等の指定を含んでもよい。
また、監視スケジューリング情報は、当該監視の頻度の指定として、当該監視対象ソフトウェアの監視に関する優先度の指定を含んでもよい。
なお、図2の例では、上述のイベント種別として、「電話発信時」が指定されている。
また、図3は、監視対象パラメータの正常性を監視するための監視設定情報である。図3に示すように、かかる監視設定情報は、監視対象記憶領域のアドレスと、当該監視対象記憶領域のサイズと、当該監視対象記憶領域に保持される値が取り得る範囲(正常値の範囲)を含む。
本実施形態において、かかる監視対象記憶領域としては、RAMやフラッシュROM等を想定する。
図3の例では、「0xa000」を始点とした4バイトのメモリ領域におけるパラメータは、「1〜100」の値が正常値であり、それ以外の値が設定されている場合、異常であると判定される。
なお、正常値の範囲は、「10、20、30」等といった離散的な値で指定されていてもよいし、「0でない」や「10〜15の範囲でない」等といった異常値を指定してそれ以外が正常値の範囲であるという形で指定されていてもよい。
監視設定情報入力部11は、所定の設定ファイルから当該監視設定情報を取得するように構成されていてもよいし、管理者やオペレータによるキーボードやマウス等を用いた入力を介して当該監視設定情報を取得するように構成されていてもよい。
さらに、監視設定情報入力部11は、監視対象ソフトウェアのファイルやソフトウェア更新パッケージを入力して、自身で、監視対象ソフトウェアのハッシュ値やサイズを計算して、かかる計算結果を監視設定情報として取得するように構成されていてもよい。
なお、監視対象ソフトウェアのハッシュ値は、SHA-1やSHA-256やMD5等の任意の一方向ハッシュ関数を用いて計算されてもよい。
監視設定情報管理部12は、複数の監視対象ソフトウェアに対応する監視設定情報を保持するように構成されている。
監視設定情報管理部12は、監視設定情報入力部11により取得された監視設定情報を、メモリやファイルシステムに、表形式やリスト形式等の任意の形式で保持するように構成されている。
なお、監視設定情報管理部12は、監視設定情報入力部11により取得された監視設定情報に含まれている監視対象ソフトウェアの識別子と同一の監視対象ソフトウェアの識別子を含む監視設定情報を既に保持している場合、新たに取得した監視設定情報への更新(上書き)を行うように構成されている。
また、監視設定情報管理部12は、監視設定情報入力部11を介して、所定の監視設定情報の削除要求を受け付けるように構成されていてもよい。
さらに、監視設定情報管理部12は、監視設定情報の種別として、図2及び図3に示す監視設定情報を混在して管理するように構成されていてもよい。
監視設定情報出力部13は、監視設定情報管理部12により保持されている1つ以上の監視設定情報と、バージョン情報と、監視対象ソフトウェアとの対応関係を示すバインド情報とを含む監視設定情報ファイルを生成して出力するように構成されている。
ここで、バージョン情報は、監視設定情報ファイルのバージョンを示すものであり、管理者やオペレータによる入力に基づいて決定されるものであってもよいし、監視設定情報出力部13によって以前の監視設定情報ファイルの次を示す番号として決定されてもよい。
例えば、バインド情報は、ソフトウェア更新パッケージのバージョン情報や、ソフトウェア更新パッケージの識別子や、監視対象ソフトウェアのバージョン情報である。
また、監視対象ソフトウェアのバージョン情報は、所定のパッチや機能追加等のソフトウェア更新パッケージが適用された後の監視対象ソフトウェア全体としてのバージョン情報である。
図4に、監視設定情報ファイルの構成を示し、図5に、かかる監視設定情報ファイルの具体例を示す。
図5の例では、監視設定情報ファイルのバージョン情報として「Ver. 1.03」が指定されており、バインド情報として当該監視設定情報ファイルに対応するソフトウェア更新パッケージのバージョン情報「2.12」が指定されている。
なお、監視設定情報ファイルは、バイナリ形式であってもよいし、アスキー形式であってもよい。また、監視設定情報ファイルは、容量削減のため、圧縮されていてもよい。
デジタル署名部14は、監視設定情報ファイルのデジタル署名を生成して付与するように構成されている。
ここで、デジタル署名は、監視設定情報ファイルと別ファイルであってもよいし、合体して1つのファイルとなっていてもよい。
図4に、デジタル署名付きの監視設定情報ファイルの構成を示す。
デジタル署名の方式は、RSA方式であってもよいし、ElGamel方式やDSA方式やRabin方式等の任意の方式であってもよい。
ただし、デジタル署名の有効性を維持するため、デジタル署名を実行する際の秘密鍵は、OS監視設定情報生成装置10の管理者(例えば、デバイスメーカ)が厳重に管理し、決して外部に漏らすことがないようにしなければならない。
図1に示すように、本実施形態に係るOS監視装置30は、OS上の監視対象ソフトウェアの監視を行うように構成されている。
具体的には、OS監視装置30は、更新テスト部31と、監視設定情報更新部32と、監視設定情報ファイル入力部33と、署名検証部34と、復旧部35と、監視設定情報管理部36と、監視部37と、異常時対処部38と、自己監視部39と、監視フラグ管理部40と、パラメータ監視部41と、完全性監視部42と、監視制御部43と、イベント入力部44と、イベントベース監視制御部45と、優先度ベース監視制御部46とを具備している。
本実施形態では、OS監視装置30の各部は、ハードウェア又はソフトウェアのいずれで実装されていてもよい。
図6に、本実施形態に係るOS監視装置30を含むデバイスの構成図を示す。本実施形態では、OS監視装置30は、監視対象のOSから隔離された領域(ドメイン)で実行されるソフトウェアを想定する。
ここで、同一のCPU上で、ドメインを隔離する手段として、図6(a)に示すように、Xen Virtual Machine Monitor(http://www.cl.cam.ac.uk/Research/SRG/netos/xen/)等の仮想マシンモニタ(Virtual Machine Monitor)に基づくドメイン分離技術を使ってもよいし、図6(b)に示すように、ARM社のTrustZoneのようなハードウェアレベルのドメイン分離技術を使ってもよい。
また、図6(c)に示すように、OSを実行するCPUと別のCPU上で、OS監視装置30を実行することで、ドメインを隔離してもよい。
OS監視装置30は、OSと並行して動作して、上述の監視を実行することができるものとする。
更新テスト部31は、監視対象ソフトウェアが更新される前に、当該監視対象ソフトウェアに対応する監視設定情報ファイルの更新の可否について判定する更新テストを行うように構成されている。
更新テストの例として、監視設定情報ファイルのデジタル署名の検証や、監視設定情報ファイルとソフトウェア更新パッケージ或いは監視対象ソフトウェアとのバインド情報の検査や、書き換え領域の空き容量の検査や、書き換え可否の検査等が挙げられる。
かかる更新テストが失敗した場合、監視対象ソフトウェアと同期して監視設定情報ファイルを更新することができないため、当該監視対象ソフトウェアの更新手順は中止される。
監視設定情報更新部32は、監視設定情報ファイルが更新可能であると判定された場合に、当該監視設定情報ファイルを更新するように構成されている。
この際、監視設定情報更新部32は、監視設定情報ファイルのバージョン情報を記録しておくことによって、監視設定情報ファイル入力部33が、当該バージョン情報を検査することができるようにする。
ここで、監視設定情報更新部32は、かかるバージョン情報を安全に保持するために、セキュアストレージ機能を利用してもよい。
例えば、TPM(Trusted Platform Module)等のハードウェアベースのセキュリティチップの多くが、かかるセキュアストレージ機能を提供している。
当該監視設定情報ファイルの更新が成功した場合は、監視設定情報更新部32は、かかる更新手順を完了する。
一方、当該監視設定情報ファイルの更新が失敗した場合、監視設定情報更新部32は、当該監視設定情報ファイルの更新について再試行(リトライ)し、所定回数(リトライ回数の上限)を超えて失敗した場合、復旧部35を呼び出す。
なお、上述の監視設定情報ファイルがダウンロードされるタイミングは、ソフトウェア更新パッケージのダウンロードと一緒であってもよいし、独立であってもよい。
また、上述の監視設定情報ファイルをダウンロードする主体は、監視設定情報更新部32であってもよいし、デバイス内のソフトウェア更新モジュール等のモジュールであってもよい。
ダウンロードされた後、監視設定情報ファイルは、フラッシュメモリやハードディスクやSDメモリカード等の外部ストレージ等といった任意のストレージ手段によってデバイス内に保存される。
以下に、監視設定情報ファイルのダウンロードの具体例について示す。
第1の例によれば、デバイスのソフトウェア更新モジュールが、無線ネットワークを通じて、監視設定情報ファイルやソフトウェア更新パッケージを保持するデバイス管理サーバから、ソフトウェア更新パッケージと一緒に、監視設定情報ファイルをデバイスにダウンロードしてフラッシュメモリに書き込む。
その後、デバイスのソフトウェア更新モジュールが、ソフトウェアの更新を行う前に、OS監視装置30を呼び出し、更新テスト部31による監視設定情報の更新テストを実行させた後、当該ソフトウェアの更新を行う。
第2の例によれば、デバイスのソフトウェア更新モジュールが、USB接続経由で、PCから、ソフトウェア更新パッケージをデバイスにダウンロードし、その後、監視設定情報ファイルをデバイスにダウンロードする。
その後、デバイスのソフトウェア更新モジュールが、ソフトウェアの更新を行う前に、OS監視装置30を呼び出し、更新テスト部31による監視設定情報の更新テストを実行させた後、当該ソフトウェアの更新を行う。
第3の例によれば、OS監視装置30の監視設定情報更新部32が、無線ネットワークを通じて、監視設定情報ファイルを保持するサーバから、監視設定情報ファイルをダウンロードして、監視設定情報ファイルのみを更新する。
なお、監視設定情報更新部32は、定期的に当該サーバに監視設定情報ファイルの更新の有無を照会してもよいし、当該サーバからプッシュ通信により監視設定情報ファイルの更新を通知してもらってもよい。
監視設定情報ファイル入力部33は、OS監視装置30の起動時に、監視設定情報ファイルの有無及びバージョン情報を検査し、上述のストレージ手段から、該当する監視設定情報ファイルを取得するように構成されている。
ここで、監視設定情報ファイルは、OS監視設定情報生成装置10によって生成されたファイルであり、ネットワーク経由やケーブル経由で、デバイスにダウンロードされ、監視設定情報更新部32によってフラッシュメモリ等のストレージ手段に書き込みされているものとする。
監視設定情報ファイル入力部33は、上述の検査によって、該当する監視設定情報ファイルが存在しないと判定した場合や、該当する監視設定情報ファイルのバージョン情報が想定のバージョン情報と異なる場合(古いバージョン情報等)、異常であると判定し、復旧部35を呼び出す。
このとき、監視設定情報ファイル入力部33は、上述のバインド情報を検査して、かかる監視設定情報ファイルが現状の監視対象ソフトウェアと整合しているか否かについて判定してもよい。ここで、整合していないと判定した場合、監視設定情報ファイル入力部33は、復旧部35を呼び出す。
署名検証部34は、監視設定情報ファイルに付与されたデジタル署名を検証するように構成されている。
署名検証部34は、かかるデジタル署名の検証に失敗した場合、当該監視設定情報ファイルは不正なものであると判断して、復旧部35を呼び出す。
ここで、デジタル署名は、予めセキュリティポリシーによって決められた信頼されたパーティによるものでなければならず、例えば、デバイスメーカや通信キャリア等によって署名がなされるものとする。
また、署名を検証する際の公開鍵は、安全に保存されているのが望ましく、例えば、書き換え不能なマスクROMやセキュアストレージに保存することで安全性を向上できる。
署名検証部34は、主に、OS監視装置30の起動時に実行されることを想定しているが、起動が完了した後の実行中に実行されてもよい。
復旧部35は、監視設定情報ファイルに関する異常発生時に、当該監視設定情報ファイルに対する復旧処理を行うように構成されている。
具体的には、復旧部35は、所定回数(リトライ回数の上限)以上、監視設定情報ファイルの更新に失敗した場合に、当該監視設定情報ファイルに対する復旧処理を行う。
かかる復旧処理として、デバイスを再起動してソフトウェア更新モジュールや監視設定情報更新部32に対して、再度、監視設定情報ファイルをダウンロードさせて、当該監視設定情報ファイルの更新を試みることが考えられる。
或いは、かかる復旧処理として、外部ストレージ等に退避された監視設定情報ファイルを利用することも考えられる。
復旧部35は、これらの復旧処理を用いても、当該監視設定情報ファイルの復旧が不可能であると判断した場合、監視フラグ管理部40を呼び出して、監視フラグをオフにする。
監視設定情報管理部36は、監視設定情報ファイルに含まれている監視設定情報を保持するように構成されている。
監視設定情報管理部36は、OS監視装置30の起動手順時に、監視部37による監視処理が行われ易いように、メモリに当該監視情報を展開したり、当該監視情報を構成するファイルが圧縮されている場合には当該ファイルの伸張を行ったりする。
監視部37は、上述の監視設定情報を利用して、監視対象ソフトウェアの監視を行い、異常の際には異常時対処部38を呼び出すように構成されている。
監視部37は、OS監視装置30の起動時に、監視設定情報管理部36から監視設定情報を読み出し、必要に応じて初期化を行った後、上述の監視を開始する。
なお、監視部37は、上述の監視の要否を示す監視フラグに応じて、当該監視を行うか否かについて決定する。すなわち、監視部37は、監視フラグ管理部40により管理されている監視フラグがオフの場合には、上述の監視を停止する。
監視部37は、サブシステムとして、完全性監視部42及びパラメータ監視部41を備えている。
本実施形態では、監視方法として、完全性監視部42による監視対象ソフトウェア(又は、監視対象データ)の完全性の監視や、パラメータ監視部41による監視対象パラメータの正常性の監視が実行されることを想定しているが、ペリフェラルの入出力の監視等といった別の監視方法が実行されてもよい。
監視部37は、OS監視装置30の実行時に、監視制御部43から、所定ソフトウェアの監視要求を受け付け、当該所定ソフトウェアの監視方法を、監視設定情報等を利用して選択し、必要に応じて完全性監視部42等を呼び出して当該監視を行う。
異常時対処部38は、監視部37により異常が検知された際に呼び出され、かかる異常への対処を行うように構成されている。
具体的には、異常時対処部38は、当該異常が発生したことをユーザに通知するための画面表示や、実行中のトランザクションの中止や、再起動の実行や、退避していたソフトウェアやデータによる復旧や、指定のサーバへの異常の通知や、ユーザの権限の制限等などを行う。
また、異常時対処部38は、異常種別(改竄や消去や不正アクセス)や監視対象ソフトウェアや監視対象パラメータに対応した対処法を保持し、異常種別等によって対処法を変えてもよい。
自己監視部39は、OS監視装置30自身のプログラム及びパラメータの改竄を検知するように構成されている。
自己監視部39を保護するために、OS監視装置30の各部とは隔離されたハードウェアによるセキュアな実行環境で自己監視部39を実行してもよい。
自己監視部39は、周期的に、OS監視装置30を監視してもよいし、監視対象ソフトウェアの監視の実行前や、デバイスがアイドル状態である場合等といった所定のイベントや状態を契機に、OS監視装置30を監視してもよい。
監視フラグ管理部40は、外部から監視の要否を設定する監視フラグの設定要求を受け取り保持するように構成されている。
例えば、監視フラグ管理部40は、無線ネットワークを通じて遠隔のデバイス管理サーバから監視フラグの設定要求を受け取ったり、ケーブル接続されたデバイス管理ツールから監視フラグの設定要求を受け取ったりすることが考えられる。
監視フラグ管理部40は、かかる監視フラグに関する情報を安全に保持するために、セキュアストレージ機能を利用してもよい。
パラメータ監視部41は、監視部37のサブシステムであり、上述の監視設定情報に基づいて、監視対象パラメータの正常性を検査して、異常発生の有無と判定するように構成されている。
具体的には、パラメータ監視部41は、監視設定情報に含まれる監視対象記憶領域のアドレスと監視対象記憶領域のサイズと監視対象記憶領域に保持される値が取り得る範囲(正常値の範囲)とに従って、監視対象パラメータの正常性を検査し、監視対象パラメータが正常値の範囲内にない場合に、異常発生と判定して、異常時対処部を呼び出す。
なお、監視対象パラメータは、監視対象ソフトウェアに関するパラメータであってもよいし、その他のパラメータであってもよい。
完全性監視部42は、監視部37のサブシステムであり、監視設定情報(監視対象ソフトウェアが保持されるアドレス及び監視対象ソフトウェアのサイズ)に従って、監視対象ソフトウェア(メモリ或いはファイル)のハッシュ値を計算し、算出した当該監視対象ソフトウェアのハッシュ値と当該監視設定情報に含まれる監視対象ソフトウェアのハッシュ値とを比較し、両者が一致しない場合に、当該監視対象ソフトウェアに関する異常が発生したと判定し、異常時対処部38を呼び出すように構成されている。
完全性監視部42は、周期的に、或いは、所定イベントの生起時に、呼び出されることが想定されている。なお、完全性監視部42は、電力消費削減のために、OSがサスペンドしている際には監視動作を停止し、OSがレジュームして動作を開始した際に監視を再開してもよい。
監視制御部43は、上述の監視設定情報に含まれる監視スケジューリング情報に従って、監視対象ソフトウェア(又は、監視対象記憶領域や監視対象パラメータ等を含む)の監視を制御するように構成されている。
具体的には、監視制御部43は、監視設定情報に含まれる監視スケジューリング情報によって指定される当該監視のタイミング、当該監視の頻度、当該監視の周期の少なくとも1つに従って、監視部37を呼び出して、上述の監視を実行させるように構成されている。
例えば、監視制御部43は、1分周期で、監視部37(又は、完全性監視部42)を呼び出して、監視対象ソフトウェアの完全性の検証を実行させるように構成されてもよいし、所定時刻に、監視部37(又は、パラメータ監視部41)を呼び出して、監視対象パラメータの正常性の検証を実行させるように構成されていてもよいし、OS監視装置30の起動時に、監視部37を呼び出して、上述の検証を実行させるように構成されていてもよい。
また、監視制御部43は、指定期間や指定回数だけ、上述の監視を実行したら、当該監視を停止するように、監視部37を制御してもよい。
監視制御部43は、サブシステムとして、優先度ベース監視制御部46及びイベントベース監視制御部45を備え、監視設定情報に基づいて、必要に応じて、優先度ベース監視制御部46やイベントベース監視制御部45を呼び出す。
イベント入力部44は、監視対象のOSやペリフェラル等の外部から、所定のイベントを示すイベント情報を受け付けるように構成されている。
かかるイベントの例として、電話発信や、外部ストレージへのデータ書き込みや、電子商取引のトランザクションの実行や、折りたたみ型電話機の開閉や、特定キーの押下等が想定される。
なお、OSが、上述のイベントが発生した場合に、OS監視装置30に対して当該イベントを示すイベント情報を通知する機能を備えており、ペリフェラルが、OS監視装置30に対して割り込みを発生する機能を備えることを想定している。
イベントベース監視制御部45は、監視制御部43のサブシステムであり、入力されたイベント情報と、上述の監視スケジューリング情報において上述の監視のタイミングとして指定されているイベント種別とが一致した場合に、監視部37を呼び出して上述の監視を実行させるように構成されている。
例えば、所定イベントして電話発信が発生した際に、イベントベース監視制御部45は、完全性監視部42を呼び出し、かかる電話発信を監視のタイミングとして指定する監視対象ソフトウェアの完全性の検証を実行する。
優先度ベース監視制御部46は、監視制御部43のサブシステムであり、監視スケジューリング情報で指定されている優先度に従って、上述の監視対象ソフトウェアの監視の順序や周期を調整するように構成されている。
(本発明の第1の実施形態に係るOS監視設定情報生成装置及びOS監視装置の動作)
図7を参照して、本発明の第1の実施形態に係るOS監視設定情報生成装置10の動作について説明し、図8乃至図23を参照して、本発明の第1の実施形態に係るOS監視装置30の動作について説明する。
第1に、図7を参照して、本実施形態に係るOS監視設定情報生成装置10が監視設定情報を生成する動作について説明する。
図7に示すように、OS監視設定情報生成装置10は、ステップS100において起動し、ステップS101において各種の初期化処理を行う。
ステップS102において、監視設定情報入力部11が、特定のフォルダ内の複数の設定ファイルから監視設定情報を取得する。
ここでは、1つの監視対象ソフトウェアに対応する監視設定情報が、1つの設定ファイルに保存されており、監視設定情報入力部11が、複数の設定ファイルを取得して、複数の監視対象ソフトウェアに対応する監視設定情報を取得することを想定している。
なお、図7に示すフローチャートでは、監視設定情報入力部11は、設定ファイルから監視設定情報を取得しているが、キーボードやマウス等を用いてオペレータにより入力された監視設定情報を取得してもよいし、監視対象ソフトウェアを構成するファイルを取得して監視対象ソフトウェアのハッシュ値やサイズを計算してもよい。
ステップS103において、必要な全ての監視設定情報が入力された場合、ステップS104において、監視設定情報管理部12は、監視設定情報入力部11により取得された複数の監視設定情報をメモリやファイルシステムに保持する。
監視設定情報出力部は、ステップS105において、監視設定情報ファイルのバージョン情報を決定し、ステップS106において、監視対象ソフトウェア(又は、ソフトウェア更新パッケージ)との対応関係を示すバインド情報を生成し、ステップS107において、監視設定情報管理部12により保持されている1つ以上の監視設定情報とバージョン情報とバインド情報とを含む監視設定情報ファイルを生成して出力する。
ステップS108において、デジタル署名部14は、上述の監視設定情報ファイルのデジタル署名を生成して付与する。この後、かかるデジタル署名付きの監視設情報ファイルは、デバイス管理サーバやソフトウェア更新ツールのPCに保存される。
第2に、図8を参照して、OS監視装置30が、監視対象ソフトウェアが更新される際に、監視設定情報を更新する動作について説明する。
図8に示すように、ステップS201において、監視対象ソフトウェアを更新する前に、更新テスト部31が、監視設定情報の更新可否を判定する更新テストを行う。
かかる更新テストには、監視設定情報に付与されたデジタル署名の検証や、バインド情報の検査や、書き換え領域の空き容量の検査や、書き換え可否の検査等が含まれる。
ステップS202において、かかる更新テストが失敗した場合、監視対象ソフトウェアの更新と同期して監視設定情報ファイルの更新ができないため、監視対象ソフトウェアの更新を中止し、本動作は終了する。
一方、ステップS202において、かかる更新テストが成功した場合、ステップS203において、デバイスが備えるソフトウェア更新機能が、ソフトウェア更新パッケージによるソフトウェアの更新を実行する。なお、ステップS203において、ソフトウェア更新パッケージ及び監視設定情報ファイルが一括して更新されてもよい。かかる場合、ステップS205及びS206の処理は不要となる。
ステップS204において、かかるソフトウェアの更新が失敗した場合も、監視対象ソフトウェアの更新と同期して監視設定情報ファイルの更新ができないため、本動作は終了する。
ステップS204において、ソフトウェア更新パッケージによる監視対象ソフトウェアの更新が成功した場合、ステップS205において、監視設定情報更新部32は、かかる監視対象ソフトウェアに対応する監視設定情報ファイルの更新を実行する。
ステップS206において、かかる監視設定情報ファイルの更新が成功した場合、ステップS207において、監視設定情報更新部32は、監視設定情報ファイルのバージョン情報を記録し、OS監視装置30の起動時に、監視設定情報ファイル入力部33が、かかるバージョン情報を検査することができるようにする。
一方、ステップS206において、かかる監視設定情報ファイルの更新が失敗した場合、監視設定情報更新部32は、かかる監視設定情報ファイルの更新についてリトライする。
ステップS206において、かかる監視設定情報ファイルの更新が、所定回数(リトライ回数の上限)を超えて失敗した場合、監視設定情報更新部32は、かかる監視を不要とするために、監視フラグをオフにするように監視フラグ管理部40に指示すると共に、復旧部35を呼び出す。
復旧部35は、監視設定情報ファイルの更新が失敗した理由に従って、例えば、再度、監視設定情報ファイルをダウンロード後に、当該監視設定情報ファイルの更新をリトライしたり、OS監視装置30を再起動してメモリを開放した後に、当該監視設定情報ファイルの更新をリトライしたり、不要ファイルの削除後に、当該監視設定情報ファイルの更新をリトライしたりする。
第3に、図9及び図10を参照して、OS監視装置30が、起動する動作について説明する。
図9に示すように、ステップS300において、デバイスが起動した時に、ステップS301において起動したOS監視装置30のローダは、フラッシュメモリやハードディスク上のOS監視装置のプログラムをロードする前に、ステップS302において、OS監視装置のプログラムに付与されたデジタル署名の検証を行う。
ステップS303において、かかるデジタル署名の検証に失敗した際には、OS監視装置30自身のプログラムが壊れているか改ざんされているため、復旧処理を行う。
本実施形態では、OS監視装置30の復旧部35を呼び出して復旧部35による復旧処理を行うことを想定しているが、デバイスの全体の復旧処理等の他の復旧処理を行ってもよい。
また、本実施形態では、OS監視装置30のプログラムに付与されたデジタル署名の検証を行っているが、OS監視装置30のプログラムのハッシュ値を計算し、OS監視装置30のローダ内に埋め込まれたハッシュ値と一致するかどうかについて判定することによって、OS監視装置30のプログラムの正当性を確認してもよい。
ステップS303において、かかるデジタル署名の検証に成功した場合、ステップS304において、OS監視装置30の起動手順が実行される。
ステップS305において、監視フラグ管理部40が、起動されて、監視フラグを検査する。
ステップS306において、監視フラグがオフであると判定された場合、外部からの監視フラグの設定要求の待ち受け状態に移行して、本動作は終了する。
すなわち、監視フラグをオンにするという要求が来ない限り、監視対象プログラムの監視を有効にしない。
一方、監視フラグがオンであると判定された場合、自己監視部39を起動する。そして、ステップS307において、監視設定情報ファイル入力部33は、監視設定情報ファイルの有無やバージョン情報やバインド情報を検査する。
ステップS308において、監視設定情報ファイルが存在しなかった場合、監視設定情報ファイル入力部33は、異常であると判定して復旧部35を呼び出す。
また、ステップS308において、監視設定情報ファイルに含まれているバージョン情報が、正常のバージョン情報と異なる場合、監視設定情報ファイル入力部33は、異常であると判定して復旧部35を呼び出す。
さらに、ステップS308において、バインド情報が、現状の監視対象ソフトウェアと整合していない場合、監視設定情報ファイル入力部33は、異常であると判定して復旧部35を呼び出す。
復旧部35は、再起動や退避しておいた監視設定情報ファイルのコピー等により、復旧処理を試み、それでも復旧できない場合は、監視フラグ管理部40を呼び出して監視フラグをオフにする。
本実施形態では、監視設定情報ファイルの有無の検査、バージョン情報の検査、バインド情報の検査、デジタル署名の検査という順序で検査を行ったが、別の順序でかかる検査を行ってもよい。
ステップS308において、上述の検査に成功した場合、図10に示すように、ステップS401において、監視設定情報ファイル入力部33は、監視設定情報ファイルを取得する。
ステップS402において、署名検証部34は、監視設定情報ファイルに付与されたデジタル署名を検証する。
ステップS403において、かかるデジタル署名の検証に失敗した場合は、署名検証部34は、かかる監視設定情報ファイルは、不正なものであると判断し、復旧部35を呼び出す。
ステップS403において、かかるデジタル署名の検証に成功した場合は、ステップS404において、監視設定情報管理部36は、監視設定情報ファイル内の監視設定情報を保持する。
ステップS405において、監視部37が、かかる監視設定情報を利用して、監視部37のサブシステムであるパラメータ監視部41及び完全性監視部42の初期化を行い、監視対象ソフトウェア等の監視を開始する。
かかる初期化は、例えば、監視部37が、監視制御部43を呼び出して、かかる監視についてのスケジューリング管理を行う。
ステップS406において、自己監視部39が、起動して、OS監視装置30自身の監視を開始する。
第4に、図11を参照して、OS監視装置30が、監視対象パラメータを監視する動作について説明する。
図11に示すように、ステップS500において、図10の動作と同様に、監視部37が、監視設定情報を利用して、パラメータ監視部41の初期化を行う。
ステップS501において、パラメータ監視部41は、図3に示すように、監視設定情報として、監視対象記憶領域のアドレスと監視対象記憶領域のサイズと監視対象記憶領域に保持される値が取り得る範囲(正常値の範囲)を取得する。
ステップS502において、パラメータ監視部41は、監視対象記憶領域に保持される監視対象パラメータを監視する。
ステップS503において、パラメータ監視部41は、監視対象パラメータが正常値の範囲外であった場合に、異常であると判断して、異常時対処部38を呼び出す。
異常時対処部38は、異常発生の通知や、ハードウェアリセットの呼び出しによる再起動等の対処を行う。
第5に、図12乃至図13を参照して、OS監視装置30が、周期的に監視対象ソフトウェアの完全性を監視する動作について説明する。
図12に示すように、ステップS600において、図10の動作と同様に、監視部37が、監視設定情報を利用して、完全性監視部42の初期化を行う。
ステップS601において、完全性監視部42が、図2に示す監視設定情報として、監視対象ソフトウェアの識別子と、監視対象ソフトウェアのハッシュ値と、監視対象ソフトウェアが保持されるアドレスと、監視対象ソフトウェアのサイズと、監視スケジューリング情報を取得する。
ステップS602において、監視制御部43が、監視設定情報に含まれる監視スケジューリング情報を利用して、上述の監視のスケジューリング管理を行う。
本実施形態では、監視スケジューリング情報として、上述の監視の周期が、指定されているものとし、図13に示すように、監視対象ソフトウェア1の監視の周期は「5分」と指定され、監視対象ソフトウェア2の監視の周期は「1分」と指定され、監視対象ソフトウェア3の監視の周期は「30分」と指定されているものとする。
監視制御部43は、任意の手段を用いて、監視のスケジューリング管理を行うことができる。
例えば、監視制御部43は、監視対象ソフトウェア1、2、3の監視の周期を、監視制御部43の起動周期で割った値を、監視対象ソフトウェアの識別子を要素とする配列sに保存して管理する。
監視起動部43の起動周期が「30秒」である場合、配列s[1]、s[2]、s[31]は、それぞれ「10」、「2」、「60」と設定される。
監視制御部43は、呼び出される度に、カウンタの値を「1」づつ増加させ、かかるカウンタの値が、配列sの各要素に保持されている値で割り切れた場合に、かかる要素に対応する監視対象ソフトウェアについて監視するように制御することができる。
ステップS603において、監視制御部43は、適切なタイミングで、監視部37を呼び出すために、例えば、30秒ごとのタイマ割り込みを設定する。
図14に示すように、ステップS701において、タイマ割り込みを契機に、監視制御部43は、起動されて、決定したスケジューリングに従って、監視対象のソフトウェアを指定して監視部37を呼び出す。
例えば、上述の通り、監視制御部43は、カウンタの値を「1」づつ増加させ、配列sをスキャンして、監視対象ソフトウェアを決定することができる。
ステップS702において、監視部37は、指定された監視対象ソフトウェアを監視するために、完全性監視部42を呼び出す。
ステップS703において、完全性監視部42は、指定された監視対象ソフトウェアが保持されるアドレス及びサイズに従って、監視対象ソフトウェア(メモリ又はファイル)のハッシュ値を計算し、監視設定情報に含まれる監視対象ソフトウェアのハッシュ値と比較する。
ステップS704において、完全性監視部42は、両者が一致しない場合に、異常であると判定して、異常時対処部38を呼び出す。
ステップS704において、完全性監視部42は、両者が一致する場合には、次のタイマ割り込みを待つ。
なお、完全性監視部42は、電力消費削減のために、OSがサスペンドしている際には、上述の監視動作を停止し、OSがレジュームして動作を開始した際に、上述の監視動作を再開してもよい。
また、図12乃至図14の例では、完全性監視部42の動作について説明したが、パラメータ監視部41も同様のスケジューリングを行ってもよい。
第6に、図15及び図16を参照して、OS監視装置30が、動作時に配置アドレスが決まるソフトウェアの完全性を監視する動作について説明する。
図15に示すように、ステップS801において、監視部37が、監視設定情報を利用して、完全性監視部42の初期化を行う。
そして、完全性監視部42は、かかる初期化において、図2に示すように、監視設定情報として、監視対象ソフトウェアの識別子と、監視対象ソフトウェアのハッシュ値と、監視対象ソフトウェアが保持されるアドレスと、監視対象ソフトウェアのサイズと、監視スケジューリング情報を取得する。
ステップS802において、完全性監視部42は、監視対象ソフトウェアが保持されるアドレスが指定されていない等、動作時に監視対象ソフトウェアが保持されるアドレスが決定されるものがあった場合、動作時の監視対象ソフトウェアが保持されるアドレスを取得する必要があると判定して、本動作は、ステップS803に進む。
そのようなものがない場合、本動作は、ステップS806に進む。
ステップSS803において、完全性監視部42は、OSの完全性についての監視処理を実行し、OSが危殆化されているか否かについて確認する。
ステップS804において、OSの完全性についての監視が失敗した場合は、既にOSが危殆化されているということであり、完全性監視部42は、異常時対処部38を呼び出して、OSの復旧処理等を行う。
一方、OSの完全性についての監視が成功した場合、ステップS805においいて、完全性監視部42は、OSから、動作時の監視対象ソフトウェアが保持されるアドレス等を含む監視設定情報を受け取り、初期化処理を行う。
なお、ステップS806、S807、S901乃至S904の動作は、上述した図12及び図14におけるステップS602、S603、S701乃至S704の動作と同様である。
第7に、図17及び図18を参照して、OS監視装置30が、優先度に基づいて、監視対象ソフトウェアの完全性について監視する動作について説明する。本実施形態では、図18に示すように、監視スケジューリング情報として、優先度が指定されているものとする。
図17に示すように、ステップS1001において、監視部37が、監視設定情報を利用して、完全性監視部42の初期化を行う。
ここで、完全性監視部42は、かかる初期化において、図18に示すように、監視設定情報として、監視対象ソフトウェアの識別子と、監視対象ソフトウェアのハッシュ値と、監視対象ソフトウェアが保持されるアドレスと、監視対象ソフトウェアのサイズと、監視スケジューリング情報としての優先度を取得する。
ステップS1002において、監視制御部37は、監視スケジューリング情報として優先度を含む監視設定情報が取得されたか否かについて調べる。
ステップS1003において、優先度を含む監視設定情報が取得されたと判定された場合、ステップS1004において、監視制御部37は、優先度ベース監視制御部46を呼び出す。
ステップS1005において、優先度ベース監視制御部46は、監視設定情報で指定された監視スケジューリング情報としての優先度を利用して、スケジューリング管理を行う。
かかる優先度に基づくスケジューリング管理は、図12乃至図14を参照して説明したスケジューリング管理の後に実行してもよいし、先に実行してもよい。或いは、いずれかのスケジューリング管理のみを実行することにしてもよい。
図18に示す例では、監視対象ソフトウェア1に対する監視の優先度は「2」と設定されており、監視対象ソフトウェア2に対する監視の優先度は「1」と設定されており、監視対象ソフトウェア3に対する監視の優先度は「3」と設定されている(優先度は、1、2、3の順で高いものとする)。
優先度ベース監視制御部46は、例えば、タイマ割り込みの周期(例えば、30秒)で監視制御部43が呼び出された際に、CPU負荷が「0.3」を超えた場合には、監視の優先度が「2」以上のソフトウェアを監視するように制御し(すなわち、監視の優先度が「3」であるソフトウェアについては監視としない)、CPU負荷が「0.4」を超えた場合には、監視の優先度が「1」以上のソフトウェアを監視するように制御し(すなわち、監視の優先度が「2」及び「3」であるソフトウェアについては監視としない)、CPU負荷が「0.5」を超えた場合には、いずれのソフトウェアについても監視しないというスケジューリングを行うことができる。
かかる場合、優先度ベース監視制御部46は、配列p[1]、p[2]、p[3]に、それぞれ、監視対象ソフトウェアの識別子「2」、「1」、「3」を割り当てる。
そして、優先度ベース監視制御部46は、かかる配列pを利用して、タイマ割り込みで呼び出された際、監視対象ソフトウェアを抽出できる。
例えば、CPU負荷が「0.35」である場合、配列p[1]、p[2]を参照して、識別子が「2」及び「1」であるソフトウェアについて監視するように制御することができる。
ステップS1006において、監視制御部43は、適切な周期で監視部37を呼び出すために、例えば、30秒のタイマ割り込みを設定する。
図19に示すように、ステップS1101において、タイマ割り込みを契機に、監視制御部43が、起動されて、優先度に基づくスケジューリング管理を行っているか否かについて調べる。
ステップS1102において、優先度に基づくスケジューリング管理が行われていると判定された場合、ステップS1103において、監視制御部43は、優先度ベース監視制御部46を呼び出す。
ステップS1104において、優先度ベース監視制御部46は、現在のCPU負荷に基づいて、監視対象ソフトウェアが有するべき監視の優先度を決定した後、かかる優先度以上の優先度を有する監視対象ソフトウェアを、配列pを利用して抽出して、完全性監視部42を呼び出す。
ステップS1105において、完全性監視部42は、監視対象ソフトウェアが保持されるアドレス及びサイズの指定に従って、監視対象ソフトウェア(メモリ或いはファイル)のハッシュ値を計算し、監視設定情報に含まれる監視対象ソフトウェアのハッシュ値と比較する。
ステップS1106において、完全性監視部42は、両者が一致しない場合に、異常であると判定して、異常時対処部38を呼び出す。
ステップS1106において、完全性監視部42は、両者が一致する場合には、次のタイマ割り込みを待つ。
また、図17乃至図19の例では、完全性監視部42の動作について説明したが、パラメータ監視部41も同様のスケジューリングを行ってもよい。
第8に、図20及び図22を参照して、OS監視装置30が、イベント情報に基づいて、監視対象ソフトウェアの完全性について監視する動作について説明する。本実施形態では、図21に示すように、監視スケジューリング情報として、イベント種別(イベント情報)が指定されているものとする。
図20に示すように、ステップS1200において、監視部37が、監視設定情報を利用して、完全性監視部42の初期化を行う。
ステップS1201において、完全性監視部42は、かかる初期化において、図21に示すように、監視設定情報として、監視対象ソフトウェアの識別子と、監視対象ソフトウェアのハッシュ値と、監視対象ソフトウェアが保持されるアドレスと、監視対象ソフトウェアのサイズと、監視スケジューリング情報としてのイベント情報を取得する。
ステップS1202において、監視制御部43は、監視スケジューリング情報としてイベント情報を含む監視設定情報を取得したか否かについて調べる。
ステップS1203において、イベント情報を含む監視設定情報が取得されたと判定された場合、監視制御部43は、ステップS1204において、イベントベース監視制御部45を呼び出す。
ステップS1205において、イベントベース監視制御部45は、監視スケジューリング情報としてのイベント情報をスキャンし、処理するべきイベント情報を決定する。
図21に示すように、監視対象ソフトウェア1に対するイベント情報としては「電話発信」が指定されており、監視対象ソフトウェア2に対するイベント情報としては「外部ストレージへのデータの書き込み」が指定されており、監視対象ソフトウェア3に対するイベント情報としては「電子商取引のトランザクションの実行」が指定されており、監視対象ソフトウェア4に対するイベント情報としては「折りたたみ型電話機の開閉」が指定されており、監視対象ソフトウェア5に対するイベント情報としては「特定キーの押下」が指定されており、監視対象ソフトウェア6に対するイベント情報としては「OSのサスペンド」が指定されており、イベントベース監視制御部は、これらのイベント情報に対してのみを処理を行うことを決定する。
すなわち、イベント入力部44によってイベントベース監視制御部45が呼び出される際に指定されるイベント情報が、これらのイベント情報以外であった場合は、イベントベース監視制御部45は、上述の監視を行わない。
かかるイベント情報の決定は、図12乃至図14を参照にして説明したスケジューリング管理又は図17乃至図19を参照にして説明したスケジューリング管理の後に実行してもよいし、先に実行してもよい。
ステップS1206において、監視制御部43は、イベント情報に基づいて監視部37を呼び出して監視を行うために、イベントの入力の待ち受けを行う。
図22に示すように、イベント入力部44は、ステップS1300において、監視対象のOSやペリフェラル等の外部からイベント情報を受け付けると、ステップS1301において、イベントベース監視制御部45を呼び出す。
ステップS1302において、イベントベース監視制御部45は、入力されたイベント情報と、監視スケジューリング情報で指定されているイベント情報とが一致するソフトウェアを抽出して、完全性監視部42を呼び出す。
ステップS1303において、完全性監視部42は、指定された優先度以上の優先度を持つ監視対象ソフトウェアが保持されるアドレス及びサイズの指定に従って、監視対象ソフトウェア(メモリ或いはファイル)のハッシュ値を計算し、監視設定情報に含まれるハッシュ値と比較する。
ステップS1304において、完全性監視部42は、両者が一致しない場合には、異常であると判定して、異常時対処部38を呼び出す。
一方、ステップS1304において、完全性監視部42は、両者が一致する場合には、次のイベント情報の入力を待つ。
なお、本実施形態では、イベント入力部44は、OSやペリフェラルからのイベント情報の入力を待つように説明をしたが、イベント入力部44が、OSやペリフェラルの状態を見て、自律的にイベント情報を検知してもよい。
例えば、イベント入力部44が、随時、折りたたみ型電話機の開閉状態の変化を問合せることで、イベント情報を取得することが考えられる。
また、図20乃至図22の例では、完全性監視部42の動作について説明したが、パラメータ監視部41も同様のスケジューリングを行ってもよい。
第9に、図23を参照して、OS監視装置30が、監視フラグを設定する動作について説明する。本実施形態では、遠隔のデバイス管理サーバが無線ネットワークを通じて監視フラグの設定要求を発行するものとする。
図23に示すように、ステップS1401において、監視フラグ管理部40は、デバイス管理サーバによって発行された監視フラグの設定要求を受け取る。
ステップS1402において、監視フラグ管理部40は、受信した監視フラグの設定要求が、現在の監視フラグの設定と同じ内容を示しているか否かについて調べる。
ステップS1403において、同じ内容を示している場合、特に対処する必要はないため、本動作は終了する。
一方、ステップS1403において、同じ内容を示していない場合、設定要求が「オン」を示しているのか、「オフ」を示しているのかによって、以下の2通りの処理が行われる。
ステップS1404において、現在の監視フラグの設定が「オフ」であり、かつ、受信した設定要求が「オン」を示している場合、ステップS1405において、監視フラグ管理部40は、監視フラグを「オン」に設定して、セキュアストレージに保持した後、図9に示すステップS305の動作から続行して、OS監視装置30を起動する。
一方、ステップS1404において、現在の監視フラグの設定が「オン」であり、かつ、受信した設定要求が「オフ」を示している場合、監視フラグ管理部40は、ステップS1406において、監視フラグの状態を「オフ」に設定して、セキュアストレージに保持した後、ステップS1407において、監視部37を呼び出して、監視の停止を要求する。
なお、ここでは、直接、監視フラグ管理部40が、直接、設定要求を受け取る場合を例に説明したが、デバイスの他のモジュールが、一旦、遠隔のデバイス管理サーバからの設定要求を受け取り、監視フラグ管理部40を呼び出して、かかる設定要求を渡してもよい。
また、監視フラグ管理部40は、遠隔のデバイス管理サーバから監視フラグの設定要求があることの通知のみを受け取り、その通知の受信を契機に、デバイス管理サーバにアクセスして設定要求を受信してもよい。
(本発明の第1の実施形態に係るOS監視設定情報生成装置及びOS監視装置の作用・効果)
本発明の第1の実施形態に係るOS監視設定情報生成装置10及びOS監視装置30によれば、監視設定情報ファイルに対して、監視設定情報と監視対象ソフトウェアとの対応関係を示すバインド情報を付加することで、ソフトウェア更新パッケージ又は監視対象ソフトウェアと監視設定情報との間の不整合を防止することができる。
また、本発明の第1の実施形態に係るOS監視設定情報生成装置10及びOS監視装置30によれば、監視設定情報ファイルのバージョン情報を付加することで、古い監視設定情報ファイルへの置き換えを防止することができる。
また、本発明の第1の実施形態に係るOS監視設定情報生成装置10及びOS監視装置30によれば、デジタル署名を付与することにより、監視設定情報の改竄を防ぎ、OS監視装置による安全な監視を行うことができる。
さらに、本発明の第1の実施形態に係るOS監視設定情報生成装置10及びOS監視装置30によれば、最新の監視設定情報ファイルのバージョンをチェックすることで、古い監視設定情報ファイルへの置き換え攻撃を防止することができる。
本発明の第1の実施形態に係るOS監視設定情報生成装置10及びOS監視装置30によれば、OS監視設定情報生成装置10が、上述の監視設定情報を、OS監視装置30に提供するため、かかるOS監視装置30は、かかる監視設定情報を用いて、監視対象ソフトウェアの完全性を検証して異常時に対処を実行することで、デバイスの正常動作を維持することができる。
本発明の第1の実施形態に係るOS監視設定情報生成装置10及びOS監視装置30によれば、OS監視設定情報生成装置10が、上述の監視設定情報を、OS監視装置30に提供するため、OS監視装置30は、かかる監視設定情報を用いて、監視対象パラメータが正常値を取っているか或いは改竄されていないかについて検査することで、デバイスの正常動作を維持することができる。
本発明の第1の実施形態に係るOS監視設定情報生成装置10及びOS監視装置30によれば、OS監視装置30は、上述の監視スケジューリング情報を用いて、上述の監視を適切にスケジューリングすることで、効率的かつ十分に安全な監視を実行することができる。
本発明の第1の実施形態に係るOS監視設定情報生成装置10及びOS監視装置30によれば、OS監視装置30は、上述の監視スケジューリング情報を用いて、特定のイベントが起きたときのみ、或いは、OS監視装置30の起動時のみ、当該監視対象ソフトウェアを監視することにより、上述の監視によるオーバヘッドを削減し、効率的な監視を実行することができる。
本発明の第1の実施形態に係るOS監視設定情報生成装置10及びOS監視装置30によれば、OS監視装置30は、重要な監視対象ソフトウェア或いは攻撃されやすい監視対象ソフトウェアに高い優先度を与えることで、このようなソフトウェアを高頻度で監視して、安全性を保証しつつ、優先度の低いソフトウェアの監視頻度を削減して、効率化を図ることができる。
本発明の第1の実施形態に係るOS監視設定情報生成装置10及びOS監視装置30によれば、OS監視装置30は、監視設定情報の更新可否を判定する事前テスト(更新テスト)を行った後に、監視対象ソフトウェア及び監視設定情報ファイルの更新を行うことにより、監視対象ソフトウェア及び監視設定情報の更新時の障害による不整合防止に対処することができる。
本発明の第1の実施形態に係るOS監視設定情報生成装置10及びOS監視装置30によれば、監視設定情報の更新可否を判定する事前テスト(更新テスト)の際には、ソフトウェア更新パッケージ又は監視対象ソフトウェアとのバインド情報を検査することで、監視設定情報とソフトウェアとの間の不整合が起きることを防止することができる。
また、本発明の第1の実施形態に係るOS監視設定情報生成装置10及びOS監視装置30によれば、監視設定情報のみの更新の際も、デバイス側に保存されたソフトウェア更新パッケージとの整合を検査して、監視設定情報とソフトウェアとの間の不整合が起きることを防止することができる。
本発明の第1の実施形態に係るOS監視設定情報生成装置10及びOS監視装置30によれば、悪意のソフトウェアによる監視対象ソフトウェアの改竄や消去を検知して対処することで、正常動作を維持することができる。
本発明の第1の実施形態に係るOS監視設定情報生成装置10及びOS監視装置30によれば、監視部37における監視機能に不具合があった場合に、遠隔から当該監視機能をオフにし、当該監視機能を修正した後、オンにする等の対応が可能となる。
また、本発明の第1の実施形態に係るOS監視設定情報生成装置10及びOS監視装置30によれば、監視設定情報の更新に失敗した場合にも、当該監視機能をオフにて起動して、デバイスの利用可能性を確保することができる。
本発明の第1の実施形態に係るOS監視設定情報生成装置10及びOS監視装置30によれば、OS監視装置30自身を攻撃から守り、安全な監視を行うことができる。
また、本実施形態によれば、不正な監視設定情報による更新の防止だけでなく、監視設定情報の更新時の障害や、古い監視設定情報への置き換えや、更新後のソフトウェアパッケージと整合しない監視設定情報の更新を防止し、安全にOS及びOS用のソフトウェア(ミドルウェアやアプリケーションやドライバを含む)を監視して正常動作を維持することができる。
また、本実施形態によれば、動作時に配置アドレスが決まるソフトウェアについても、安全にOSと通信して監視できる。
また、本実施形態によれば、監視の優先度やイベント種別を考慮した監視処理の細粒度の効率化や、デバイスのスリープ状態を考慮した監視処理の削減により、オーバヘッドを低減できる。
(本発明の第2の実施形態)
本発明の第2の実施形態では、OS監視設定情報生成装置10の構成や動作は第1の実施形態の場合と同一であり、OS監視装置30の構成も第1の実施形態の場合と同一であるが、デバイス内におけるOS監視装置30の配置が異なり、その動作が一部異なる。
以下、デバイス内におけるOS監視装置30の配置及び動作の違いに焦点を当てて説明する。
図24に、本発明の第2の実施形態に係るOS監視装置30を含むデバイス1の構成を示す。
第2の実施形態では、OS監視装置30は、監視対象のOSから隔離された領域(ドメイン)で実行されるソフトウェアであって、上述の特許文献3に開示される「サスペンド・レジュームに基づくOS切替技術を備えるOS切替装置」を使って監視対象のOSと排他的に動作するものとする。
第1の実施形態では、OS監視装置30は、OSと並行して動作して、上述の監視を実行することができるものと仮定したのに対して、第2の実施形態では、OS監視装置30は、OSがサスペンド或いはスリープ状態で動作を停止している際に、動作して、上述の監視を実行するものとする。
また、本実施形態に係るOS監視装置30は、デバイスの起動時に、OSの起動前に、或いは、OSの起動後に、起動されるものとする。
以下、本実施形態に係るOS監視装置30の動作のうち、第1の実施形態の場合と異なる動作について説明する。
第1に、図25及び図26を参照して、本実施形態に係るOS監視装置30が、周期的に監視対象ソフトウェアの完全性を監視する動作について説明する。
図25に示すように、ステップS1500乃至S1502の動作は、上述の図12のステップS600乃至S602の動作と同一である。
ステップS1503において、監視制御部43は、OS監視装置30の起動処理を終了し、OS監視装置30をサスペンドしてOSに制御を戻す。
監視制御部43は、適切なタイミングで監視部37を呼び出すために、監視スケジューリング情報で指定された監視の周期以下の間隔で、タイマ割り込みされる必要があるが、本実施形態では、OSとOS監視装置30が排他的に動作する環境であるため、OSが、自主的にサスペンドして制御をOS監視装置30に渡す必要がある。
そのため、OSは、例えば、30秒ごとの周期でサスペンドして、OS監視装置30に制御を渡し、監視制御部43が起動されるように構成されるものと仮定する。
なお、サスペンドする周期については、監視制御部43が、監視対象のOSに対して指定してもよい。
例えば、図13に示す監視スケジューリング情報で指定された監視の周期は、30秒より大きく、サスペンドする周期は、1分で十分であるため、監視制御部43は、OSに対して、サスペンドする周期として1分を指定して、処理量の低減による応答性の向上や電力消費の削減を図ることができる。
図26に示すように、ステップS1600乃至S1604の動作は、上述の図14のステップS700乃至S704の動作と同一である。
ステップS1604において、両者が一致する場合には、監視制御部43は、OS監視装置30をサスペンドして制御をOSに渡し、次のOSからのタイマ割り込みを待つ。
なお、「本実施形態に係るOS監視装置30が、監視の優先度に基づいて監視対象ソフトウェアの完全性を監視する動作」について、第1の実施形態の場合と本実施形態の場合の相違点は、「上述した本実施形態に係るOS監視装置30が、周期的に監視対象ソフトウェアの完全性を監視する動作」の場合と同様であるため、説明を省略する。
第2に、図27及び図28を参照して、本実施形態に係るOS監視装置30が、イベント情報に基づいて、監視対象ソフトウェアの完全性について監視する動作について説明する。本実施形態では、図21に示すように、監視スケジューリング情報として、イベント種別(イベント情報)が指定されているものとする。
図27に示すように、ステップS1700乃至S1705の動作は、上述の図20におけるステップS1200乃至S1205の動作と同一である。
ステップS1706において、監視制御部43は、OS監視装置30の起動処理を終了し、OS監視装置30をサスペンドしてOSに制御を戻す。
ステップS1707において、監視制御部43は、イベント情報に基づいて監視部37を呼び出して監視を行うために、イベント情報の入力の待ち受けを行う。
図28に示すように、ステップS1800乃至S1804の動作は、上述の図22におけるステップS1300乃至S1304の動作と同一である。
ステップ1804において、両者が一致する場合には、監視制御部43は、OS監視装置30をサスペンドして制御をOSに渡し、次のOSからのイベント情報の入力を待つ。
本実施形態によれば、OSとOS監視装置30が並行して動作しないため、OSは、OS監視装置30に対するイベント情報の通知及び上述の切り替え指示以外のオーバヘッド無しに動作することができ、応答性の向上や電力消費の削減を図ることができる。
(本発明の第3の実施形態)
本発明の第3の実施形態では、OS監視設定情報生成装置10の構成や動作は第1の実施形態の場合と同一であり、OS監視装置30の構成も第1の実施形態の場合と同一であるが、デバイス内におけるOS監視装置30の配置が異なり、その動作が一部異なる。
以下、デバイス内におけるOS監視装置30の配置及び動作の違いに焦点を当てて説明する。
図29に、本発明の第3の実施形態に係るOS監視装置30を含むデバイス1の構成を示す。
本発明の第3の実施形態では、OS監視装置30は、監視対象のOSとは隔離されずに、OS内にソフトウェアとして実装され、OS上のプロセス又はスレッドとして並行的に実行されるように構成されている。
以下、本実施形態に係るOS監視装置30の動作のうち、第1の実施形態の場合と異なる動作について説明する。
具体的には、図30を参照して、本実施形態に係るOS監視装置が起動する動作について説明する。
図30に示すように、ステップS1900において、デバイスが起動した際に、ステップS1901において、各種ローダ及びOSが、起動される。なお、OS監視装置30は、かかるOSによって起動される。
ステップS1902において、OSは、OS監視装置30のプログラムをロードする前に、OS監視装置のプログラムに付与されたデジタル署名の検証を行う。
かかるデジタル署名の検証に失敗した際には、OS監視装置30のプログラムが壊れているため、復旧処理を行う。
本実施形態では、OSは、OS監視装置30の復旧部35を呼び出して復旧処理をさせているが、他の復旧処理を実行してもよい。
また、本実施形態では、OSは、デジタル署名の検証を行っているが、OS監視装置30のプログラムのハッシュ値を計算し、当該OSによって保持されているOS監視装置の正当なハッシュ値と一致するかどうかによって、OS監視装置30のプログラムの正当性を確認してもよい。
以降の動作は、上述の図9におけるステップS303乃至S308の動作と同一であるため、説明を省略する。
本発明の第1の実施形態に係るOS監視設定情報生成装置及びOS監視装置の機能ブロック図である。 本発明の第1の実施形態において用いられる監視対象ソフトウェアの完全性を監視するための監視設定情報の具体例を示す図である。 本発明の第1の実施形態において用いられる監視対象パラメータの正常性を監視するための監視設定情報の具体例を示す図である。 本発明の第1の実施形態において用いられるデジタル署名付きの監視設定情報ファイルの構成を示す図である。 本発明の第1の実施形態において用いられる監視設定情報ファイルの具体例を示す図である。 本発明の第1の実施形態に係るOS監視装置を含むデバイスの構成図である。 本発明の第1の実施形態に係るOS監視設定情報生成装置におけるOS監視設定情報生成手順を示すフローチャートである。 本発明の第1の実施形態に係るOS監視装置におけるOS監視設定情報更新手順を示すフローチャートである。 本発明の第1の実施形態に係るOS監視装置における起動手順を示すフローチャートである。 本発明の第1の実施形態に係るOS監視装置における起動手順を示すフローチャートである。 本発明の第1の実施形態に係るOS監視装置におけるパラメータ監視手順を示すフローチャートである。 本発明の第1の実施形態に係るOS監視装置における完全性監視手順を示すフローチャートである。 本発明の第1の実施形態において用いられる監視スケジュール情報における監視の周期指定の具体例を示す図である。 本発明の第1の実施形態に係るOS監視装置における完全性監視手順を示すフローチャートである。 本発明の第1の実施形態に係るOS監視装置における動作時に配置アドレスが決まるソフトウェアの完全性監視手順を示すフローチャートである。 本発明の第1の実施形態に係るOS監視装置における動作時に配置アドレスが決まるソフトウェアの完全性監視手順を示すフローチャートである。 本発明の第1の実施形態に係るOS監視装置における優先度に基づく完全性監視手順を示すフローチャートである。 本発明の第1の実施形態において用いられる監視スケジュール情報における監視の優先度指定の具体例を示す図である。 本発明の第1の実施形態に係るOS監視装置における優先度に基づく完全性監視手順を示すフローチャートである。 本発明の第1の実施形態に係るOS監視装置におけるイベント情報に基づく完全性監視手順を示すフローチャートである。 本発明の第1の実施形態において用いられる監視スケジュール情報における監視の契機となるイベント情報指定の具体例を示す図である。 本発明の第1の実施形態に係るOS監視装置におけるイベント情報に基づく完全性監視手順を示すフローチャートである。 本発明の第1の実施形態に係るOS監視装置における監視フラグ設定手順を示すフローチャートである。 本発明の第2の実施形態に係るOS監視装置を含むデバイスの構成図である。 本発明の第2の実施形態に係るOS監視装置における完全性監視手順を示すフローチャートである。 本発明の第2の実施形態に係るOS監視装置における完全性監視手順を示すフローチャートである。 本発明の第2の実施形態に係るOS監視装置におけるイベント情報に基づく完全性監視手順を示すフローチャートである。 本発明の第2の実施形態に係るOS監視装置におけるイベント情報に基づく完全性監視手順を示すフローチャートである。 本発明の第3の実施形態に係るOS監視装置を含むデバイスの構成図である。 本発明の第3の実施形態に係るOS監視装置における起動手順を示すフローチャートである。
符号の説明
1…デバイス
10…OS監視設定情報生成装置
11…監視設定情報入力部
12…監視設定情報管理部
13…監視設定情報出力部
14…デジタル署名部
30…OS監視装置
31…更新テスト部
32…監視設定情報更新部
33…監視設定情報ファイル入力部
34…署名検証部
35…復旧部
36…監視設定情報管理部
37…監視部
38…異常時対処部
39…自己監視部
40…監視フラグ管理部
41…パラメータ監視部
42…完全性監視部
43…監視制御部
44…イベント入力部
45…イベントベース監視制御部
46…優先度ベース監視制御部

Claims (15)

  1. オペレーティングシステム監視装置による監視で用いられる監視設定情報を保持する監視設定情報管理部と、
    前記監視設定情報管理部により保持されている前記監視設定情報と、バージョン情報と、監視対象ソフトウェアとの対応関係を示すバインド情報とを含む監視設定情報ファイルを生成して出力する監視設定情報出力部と、
    前記監視設定情報ファイルのデジタル署名を生成して付与するデジタル署名部とを備えることを特徴とするオペレーティングシステム監視設定情報生成装置。
  2. 前記監視設定情報は、前記監視対象ソフトウェアのハッシュ値と、該監視対象ソフトウェアが保持されるアドレスと、該監視対象ソフトウェアのサイズとを含むことを特徴とする請求項1に記載のオペレーティングシステム監視設定情報生成装置。
  3. 前記監視設定情報は、前記監視対象記憶領域のアドレスと、該監視対象記憶領域のサイズと、該監視対象記憶領域に保持される値が取り得る範囲とを含むことを特徴とする請求項1に記載のオペレーティングシステム監視設定情報生成装置。
  4. 前記監視設定情報は、前記監視のタイミング、該監視の頻度、該監視の周期の少なくとも1つを指定する監視スケジューリング情報を更に含むことを特徴とする請求項2に記載のオペレーティングシステム監視設定情報生成装置。
  5. 前記監視スケジューリング情報は、前記監視のタイミングとして、該監視対象ソフトウェアの監視を実行する契機となるイベント種別或いは前記オペレーティングシステム監視装置の起動時の少なくとも1つを指定することを特徴とする請求項4に記載のオペレーティングシステム監視設定情報生成装置。
  6. 前記監視スケジューリング情報は、前記監視の頻度として、該監視対象ソフトウェアの監視に関する優先度を指定することを特徴とする請求項4に記載のオペレーティングシステム監視設定情報生成装置。
  7. オペレーティングシステム上の監視対象ソフトウェアの監視を行うオペレーティングシステム監視装置であって、
    オペレーティングシステム監視設定情報生成装置から入力された監視設定情報ファイルに含まれている監視設定情報を利用して、前記監視を行う監視部と、
    前記監視対象ソフトウェアが更新される前に、前記監視設定情報ファイルの更新の可否について判定する更新テスト部と、
    前記監視設定情報ファイルが更新可能であると判定された場合に、前記監視設定情報ファイルを更新する監視設定情報更新部と、
    所定回数以上、前記監視設定情報ファイルの更新に失敗した場合に、該監視設定情報ファイルに対する復旧処理を行う復旧部とを備えることを特徴とするオペレーティングシステム監視装置。
  8. 前記更新テスト部は、前記監視設定情報ファイルと前記監視対象ソフトウェアとの対応関係を示すバインド情報を検査することを特徴とする請求項7に記載のオペレーティングシステム監視装置。
  9. 前記監視設定情報に基づいて前記監視対象ソフトウェアのハッシュ値を算出し、算出した該監視対象ソフトウェアのハッシュ値と該監視設定情報に含まれる前記監視対象ソフトウェアのハッシュ値とを比較し、両者が一致しない場合に、該監視対象ソフトウェアに関する異常が発生したと判定する完全性監視部を備えることを特徴する請求項7又は8に記載のオペレーティングシステム監視装置。
  10. 監視設定情報に含まれる監視スケジューリング情報に従って、前記監視を制御する監視制御部を備えることを特徴とする請求項7乃至9のいずれか一項に記載のオペレーティングシステム監視装置。
  11. 入力されたイベント情報と、前記監視スケジューリング情報において前記監視のタイミングとして指定されているイベント種別とが一致した場合に、該監視を実行するように該監視を制御するイベントベース監視制御部を備えることを特徴とする請求項10に記載のオペレーティングシステム監視装置。
  12. 前記監視スケジューリング情報において指定されている優先度に従って、前記監視の順序や周期を調整する優先度ベース監視制御部を備えることを特徴とする請求項10に記載のオペレーティングシステム監視装置。
  13. 前記監視部は、前記監視の要否を示す監視フラグに応じて、該監視を行うか否かについて決定することを特徴とする請求項7乃至12のいずれか一項に記載のオペレーティングシステム監視装置。
  14. オペレーティングシステム監視装置自身のプログラム及びパラメータの改竄を検知する自己監視部を備えることを特徴とする請求項7〜13のいずれか一項に記載のオペレーティングシステム監視装置。
  15. 前記監視設定情報は、前記監視対象記憶領域のアドレスと、該監視対象記憶領域のサイズと、該監視対象記憶領域に保持される値が取り得る範囲を含み、
    前記監視設定情報に基づいて、前記監視対象記憶領域におけるパラメータの正常性を判定するパラメータ監視部を備えることを特徴とする請求項7乃至14のいずれか一項に記載のオペレーティングシステム監視装置。
JP2007248044A 2006-10-31 2007-09-25 オペレーティングシステム監視設定情報生成装置及びオペレーティングシステム監視装置 Expired - Fee Related JP4288292B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2007248044A JP4288292B2 (ja) 2006-10-31 2007-09-25 オペレーティングシステム監視設定情報生成装置及びオペレーティングシステム監視装置
EP07021250A EP1918841A2 (en) 2006-10-31 2007-10-31 Operating system monitoring setting information generator apparatus and operating system monitoring apparatus
CN2007101670829A CN101187867B (zh) 2006-10-31 2007-10-31 操作系统监视设定信息生成装置以及操作系统监视装置
US11/931,676 US8151249B2 (en) 2006-10-31 2007-10-31 Operating system monitoring setting information generator apparatus and operating system monitoring apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006296579 2006-10-31
JP2007248044A JP4288292B2 (ja) 2006-10-31 2007-09-25 オペレーティングシステム監視設定情報生成装置及びオペレーティングシステム監視装置

Publications (2)

Publication Number Publication Date
JP2008135004A true JP2008135004A (ja) 2008-06-12
JP4288292B2 JP4288292B2 (ja) 2009-07-01

Family

ID=38996719

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007248044A Expired - Fee Related JP4288292B2 (ja) 2006-10-31 2007-09-25 オペレーティングシステム監視設定情報生成装置及びオペレーティングシステム監視装置

Country Status (4)

Country Link
US (1) US8151249B2 (ja)
EP (1) EP1918841A2 (ja)
JP (1) JP4288292B2 (ja)
CN (1) CN101187867B (ja)

Cited By (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010097594A (ja) * 2008-09-22 2010-04-30 Ntt Docomo Inc Api検査装置及び状態監視装置
JP2010102579A (ja) * 2008-10-24 2010-05-06 Hitachi Ltd 情報処理装置、及びコンピュータプログラム
JP2010211453A (ja) * 2009-03-10 2010-09-24 Yamatake Corp ファイル改竄チェック方法および装置
JP2011034130A (ja) * 2009-07-29 2011-02-17 Canon Inc 情報処理装置、情報処理方法、及びプログラム
JP2013069250A (ja) * 2011-09-26 2013-04-18 Toshiba Corp 記憶装置および書き込み装置
KR101415270B1 (ko) 2013-01-22 2014-08-06 주식회사 시큐아이 컴퓨팅 장치에 설치된 애플리케이션을 모니터링하는 네트워크 시스템
US9191202B2 (en) 2013-03-26 2015-11-17 Kabushiki Kaisha Toshiba Information processing device and computer program product
US9536113B2 (en) 2013-09-24 2017-01-03 Kabushiki Kaisha Toshiba Information processing apparatus, information processing system, and computer program product
JP2019046266A (ja) * 2017-09-04 2019-03-22 株式会社東芝 情報処理装置、情報処理方法およびプログラム
JP2019514147A (ja) * 2016-04-11 2019-05-30 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited データベース内の暗号文の暗号変更の障害を処理する方法及び装置
JP2020086979A (ja) * 2018-11-27 2020-06-04 株式会社リコー 情報処理装置、プログラム更新方法、及びプログラム
JP2020201787A (ja) * 2019-06-12 2020-12-17 株式会社デンソーウェーブ 情報処理端末及び管理システム
WO2020250374A1 (ja) * 2019-06-13 2020-12-17 三菱電機株式会社 データ処理装置、データ処理方法及びプログラム
WO2021117371A1 (ja) * 2019-12-11 2021-06-17 パナソニックIpマネジメント株式会社 情報処理装置、情報処理方法、および、プログラム
JP2021114304A (ja) * 2018-07-10 2021-08-05 キヤノン株式会社 画像処理装置、その制御方法、及びプログラム
WO2024070141A1 (ja) * 2022-09-27 2024-04-04 パナソニックオートモーティブシステムズ株式会社 情報処理装置、情報処理装置の制御方法及びプログラム
JP7509503B2 (ja) 2012-05-16 2024-07-02 フィッシャー-ローズマウント システムズ,インコーポレイテッド プロセス制御システムの整合性低下を識別する方法

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8060592B1 (en) * 2005-11-29 2011-11-15 Juniper Networks, Inc. Selectively updating network devices by a network management application
WO2009081502A1 (ja) * 2007-12-26 2009-07-02 Fujitsu Limited 通信端末
US8700750B2 (en) * 2009-01-16 2014-04-15 Microsoft Corporation Web deployment functions and interfaces
US8726374B2 (en) 2009-02-16 2014-05-13 Panasonic Corporation Tampering monitoring system, control device, and tampering control method
US9032214B2 (en) * 2011-06-30 2015-05-12 Dell Products L.P. System and method for providing an image to an information handling system
US9349011B2 (en) * 2012-05-16 2016-05-24 Fisher-Rosemount Systems, Inc. Methods and apparatus to identify a degradation of integrity of a process control system
US20130346960A1 (en) * 2012-06-25 2013-12-26 Infosys Limited Method and system for updating an application
RU2012133986A (ru) * 2012-08-07 2014-02-27 Гугл Инк. Защита пользовательских настроек приложений от сторонних изменений
CN103067174B (zh) * 2012-12-27 2015-06-17 飞天诚信科技股份有限公司 一种在移动操作系统中完成数字签名的方法和系统
US20150113121A1 (en) * 2013-10-18 2015-04-23 Telefonaktiebolaget L M Ericsson (Publ) Generation at runtime of definable events in an event based monitoring system
FR3012643B1 (fr) 2013-10-28 2017-03-17 Oberthur Technologies Systeme de detection d'intrusion dans un dispositif comprenant un premier systeme d'exploitation et un deuxieme systeme d'exploitation
CN104331030B (zh) * 2014-06-27 2017-07-25 青岛海尔股份有限公司 用户终端与除菌除异味装置绑定的方法及系统
US10019602B2 (en) * 2014-08-28 2018-07-10 Qualcomm Incorporated System and method for improved security for a processor in a portable computing device (PCD)
US11416606B2 (en) * 2014-10-24 2022-08-16 Musarubra Us Llc Agent presence for self-healing
JP2016103144A (ja) * 2014-11-28 2016-06-02 富士通株式会社 仮想マシン配備方法、仮想マシン配備プログラム及び仮想マシン配備システム
US10049218B2 (en) 2016-12-07 2018-08-14 Google Llc Rollback resistant security
US11436324B2 (en) * 2018-09-27 2022-09-06 Hewlett Packard Enterprise Development Lp Monitoring parameters of controllers for unauthorized modification
US11012853B2 (en) * 2018-11-20 2021-05-18 Parallel Wireless, Inc. Secure software update in a wireless mesh radio network using peer-to-peer file sharing

Family Cites Families (26)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5623604A (en) * 1992-11-18 1997-04-22 Canon Information Systems, Inc. Method and apparatus for remotely altering programmable firmware stored in an interactive network board coupled to a network peripheral
US5485617A (en) * 1993-12-13 1996-01-16 Microsoft Corporation Method and system for dynamically generating object connections
US5860009A (en) * 1994-04-28 1999-01-12 Kabushiki Kaisha Toshiba Programming method for concurrent programs and program supporting apparatus thereof
US5835594A (en) 1996-02-09 1998-11-10 Intel Corporation Methods and apparatus for preventing unauthorized write access to a protected non-volatile storage
US5905866A (en) * 1996-04-30 1999-05-18 A.I. Soft Corporation Data-update monitoring in communications network
US6721941B1 (en) * 1996-08-27 2004-04-13 Compuware Corporation Collection of timing and coverage data through a debugging interface
JPH10111822A (ja) 1996-10-04 1998-04-28 Nec Corp システム構成情報を用いたバージョン管理方法
KR100248045B1 (ko) * 1997-05-19 2000-03-15 윤종용 하드디스크마스터제작시스템및그제작방법
JP3293760B2 (ja) 1997-05-27 2002-06-17 株式会社エヌイーシー情報システムズ 改ざん検知機能付きコンピュータシステム
US6901582B1 (en) * 1999-11-24 2005-05-31 Quest Software, Inc. Monitoring system for monitoring the performance of an application
US20010044840A1 (en) * 1999-12-13 2001-11-22 Live Networking, Inc. Method and system for real-tme monitoring and administration of computer networks
JP3692114B2 (ja) * 2000-09-05 2005-09-07 富士通株式会社 監視制御ネットワークシステム
US6832373B2 (en) 2000-11-17 2004-12-14 Bitfone Corporation System and method for updating and distributing information
JP2003084984A (ja) * 2001-09-12 2003-03-20 Canon Inc 情報処理装置、及び、情報処理方法、及び、制御プログラム、及び、制御プログラムを記憶した記憶媒体
US7216369B2 (en) 2002-06-28 2007-05-08 Intel Corporation Trusted platform apparatus, system, and method
US7555657B2 (en) * 2003-03-28 2009-06-30 Ricoh Company, Ltd. Communication device, software update device, software update system, software update method, and program
US7987449B1 (en) * 2003-05-22 2011-07-26 Hewlett-Packard Development Company, L.P. Network for lifecycle management of firmware and software in electronic devices
US20040243997A1 (en) * 2003-05-29 2004-12-02 Sun Microsystems, Inc. Method, system, and program for installing program components on a computer
US7103779B2 (en) * 2003-09-18 2006-09-05 Apple Computer, Inc. Method and apparatus for incremental code signing
JP2005165750A (ja) * 2003-12-03 2005-06-23 Ricoh Co Ltd Webサーバ機能を有する組み込み機器
US20050132122A1 (en) 2003-12-16 2005-06-16 Rozas Carlos V. Method, apparatus and system for monitoring system integrity in a trusted computing environment
NZ533028A (en) * 2004-05-19 2005-09-30 Auckland Uniservices Ltd Method of introducing digital signature into software
JP2006053788A (ja) * 2004-08-12 2006-02-23 Ntt Docomo Inc ソフトウェア動作監視装置及びソフトウェア動作監視方法
US7779295B1 (en) * 2005-06-28 2010-08-17 Symantec Operating Corporation Method and apparatus for creating and using persistent images of distributed shared memory segments and in-memory checkpoints
JP4815938B2 (ja) * 2005-08-16 2011-11-16 ソニー株式会社 情報処理装置および方法、並びにプログラム
JP2008033827A (ja) * 2006-07-31 2008-02-14 Hitachi Ltd ストレージ装置及びプログラム更新方法

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010097594A (ja) * 2008-09-22 2010-04-30 Ntt Docomo Inc Api検査装置及び状態監視装置
JP4653230B2 (ja) * 2008-09-22 2011-03-16 株式会社エヌ・ティ・ティ・ドコモ Api検査装置及び状態監視装置
US8413230B2 (en) 2008-09-22 2013-04-02 Ntt Docomo, Inc. API checking device and state monitor
JP2010102579A (ja) * 2008-10-24 2010-05-06 Hitachi Ltd 情報処理装置、及びコンピュータプログラム
JP2010211453A (ja) * 2009-03-10 2010-09-24 Yamatake Corp ファイル改竄チェック方法および装置
JP2011034130A (ja) * 2009-07-29 2011-02-17 Canon Inc 情報処理装置、情報処理方法、及びプログラム
JP2013069250A (ja) * 2011-09-26 2013-04-18 Toshiba Corp 記憶装置および書き込み装置
JP7509503B2 (ja) 2012-05-16 2024-07-02 フィッシャー-ローズマウント システムズ,インコーポレイテッド プロセス制御システムの整合性低下を識別する方法
KR101415270B1 (ko) 2013-01-22 2014-08-06 주식회사 시큐아이 컴퓨팅 장치에 설치된 애플리케이션을 모니터링하는 네트워크 시스템
US9191202B2 (en) 2013-03-26 2015-11-17 Kabushiki Kaisha Toshiba Information processing device and computer program product
US9536113B2 (en) 2013-09-24 2017-01-03 Kabushiki Kaisha Toshiba Information processing apparatus, information processing system, and computer program product
US10884862B2 (en) 2016-04-11 2021-01-05 Advanced New Technologies Co., Ltd. Method and apparatus for processing failure of cipher change of ciphertext in database
JP2019514147A (ja) * 2016-04-11 2019-05-30 アリババ・グループ・ホールディング・リミテッドAlibaba Group Holding Limited データベース内の暗号文の暗号変更の障害を処理する方法及び装置
JP2019046266A (ja) * 2017-09-04 2019-03-22 株式会社東芝 情報処理装置、情報処理方法およびプログラム
JP2021114304A (ja) * 2018-07-10 2021-08-05 キヤノン株式会社 画像処理装置、その制御方法、及びプログラム
JP7229293B2 (ja) 2018-07-10 2023-02-27 キヤノン株式会社 画像処理装置、その制御方法、及びプログラム
JP2020086979A (ja) * 2018-11-27 2020-06-04 株式会社リコー 情報処理装置、プログラム更新方法、及びプログラム
JP7163739B2 (ja) 2018-11-27 2022-11-01 株式会社リコー 情報処理装置、プログラム更新方法、及びプログラム
JP2020201787A (ja) * 2019-06-12 2020-12-17 株式会社デンソーウェーブ 情報処理端末及び管理システム
WO2020250374A1 (ja) * 2019-06-13 2020-12-17 三菱電機株式会社 データ処理装置、データ処理方法及びプログラム
WO2021117371A1 (ja) * 2019-12-11 2021-06-17 パナソニックIpマネジメント株式会社 情報処理装置、情報処理方法、および、プログラム
WO2024070141A1 (ja) * 2022-09-27 2024-04-04 パナソニックオートモーティブシステムズ株式会社 情報処理装置、情報処理装置の制御方法及びプログラム

Also Published As

Publication number Publication date
US20080155509A1 (en) 2008-06-26
EP1918841A2 (en) 2008-05-07
CN101187867B (zh) 2010-06-16
US8151249B2 (en) 2012-04-03
JP4288292B2 (ja) 2009-07-01
CN101187867A (zh) 2008-05-28

Similar Documents

Publication Publication Date Title
JP4288292B2 (ja) オペレーティングシステム監視設定情報生成装置及びオペレーティングシステム監視装置
US10701084B2 (en) Reliable and secure firmware update with a dynamic validation for internet of things (IoT) devices
EP3036623B1 (en) Method and apparatus for modifying a computer program in a trusted manner
US9081596B2 (en) Information processing device, virtual machine creation method, and application distribution system
EP1967981A1 (en) Program execution control method, device, and execution control program
US8843926B2 (en) Guest operating system using virtualized network communication
US20140142781A1 (en) Vehicle Unit And Method For Operating The Vehicle Unit
CN104461594B (zh) 嵌入式操作系统的升级方法及装置
EP3066562B1 (en) Systems and methods for updating system-level services within read-only system images
US20180060588A1 (en) Operating system
EP2241987B1 (en) Method and system for safely deleting information from a computer
WO2016000166A1 (zh) 一种数据处理方法及智能终端
US20230342476A1 (en) Bootloaders
CN106155723B (zh) 业务应用程序的升级方法和装置、终端和计算机存储介质
JP6483459B2 (ja) ファイル管理システム及びファイル管理プログラム
JP2013156799A (ja) システム・ファームウェアの更新方法およびコンピュータ
CN116173511A (zh) 一种游戏热更新方法、装置、计算机设备和存储介质
JP7009852B2 (ja) 電子装置
US20150309885A1 (en) Method and device for processing data and electronic apparatus
JP6370231B2 (ja) ソフトウェア更新装置、方法及びプログラム
EP4361860A1 (en) Program, information processing device, and method
CN103593612A (zh) 一种处理恶意程序的方法及装置
CN111506897A (zh) 数据处理方法和装置
US20240231959A9 (en) Apparatus, and method

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081209

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090209

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: 20090303

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20090330

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120403

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120403

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130403

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130403

Year of fee payment: 4

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140403

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees