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

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

Info

Publication number
JP6759169B2
JP6759169B2 JP2017173977A JP2017173977A JP6759169B2 JP 6759169 B2 JP6759169 B2 JP 6759169B2 JP 2017173977 A JP2017173977 A JP 2017173977A JP 2017173977 A JP2017173977 A JP 2017173977A JP 6759169 B2 JP6759169 B2 JP 6759169B2
Authority
JP
Japan
Prior art keywords
information
software
specific information
update
unit
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
JP2017173977A
Other languages
English (en)
Other versions
JP2019049877A (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 JP2017173977A priority Critical patent/JP6759169B2/ja
Priority to US15/900,109 priority patent/US10846394B2/en
Publication of JP2019049877A publication Critical patent/JP2019049877A/ja
Application granted granted Critical
Publication of JP6759169B2 publication Critical patent/JP6759169B2/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
    • 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/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • 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]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44536Selecting among different versions
    • 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
    • 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/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

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

Description

本発明の実施の形態は、情報処理装置、情報処理方法、および情報処理プログラムに関する。
不正なプログラムの実行を防止する技術が知られている。例えば、実行を許可するソフトウェアを、ホワイトリストに登録されたソフトウェアのみに制限する技術が知られている。また、ホワイトリストを安全に更新するために、マスタファイルリストによって安全が保証されたソフトウェアに限り、ホワイトリストへの追加を自動で行う方法が知られている。
ここで、システムの更新により不要となった更新前ソフトウェアが、ホワイトリストに登録されたまま残されてしまう場合がある。年月の経過により、更新前ソフトウェアは危殆化する場合もあり、そのようなソフトウェアが実行されると、システムの安全性を損なう場合がある。安全性の観点では、ホワイトリストから、危殆化したソフトウェアや不要なソフトウェアを直ちに取り除くことが望ましい。しかし、そのようなホワイトリストの更新を行うと、システムの可用性を損なうおそれがあった。
特許第5682978号公報
本発明が解決しようとする課題は、ホワイトリストを導入した情報処理装置の、可用性を維持することができる、情報処理装置、情報処理方法、および情報処理プログラムを提供することである。
実施形態の情報処理装置は、第1取得部と、特定部と、を備える。第1取得部は、実行対象の第1ソフトウェアの第1特定情報を取得する。特定部は、実行を許可するソフトウェアの特定情報を規定したホワイトリストに、前記第1特定情報を示す前記特定情報が登録されている場合、前記ホワイトリストにおける、前記第1ソフトウェアに関係する他の前記ソフトウェアである第2ソフトウェアの前記特定情報を、第2特定情報として特定する。
情報処理システムの一例を示す模式図。 更新装置の機能的構成を示す模式図。 更新ソフトウェア情報、旧ソフトウェア情報、および、更新対象ソフトウェアの識別情報、のデータ構成を示す模式図。 情報処理装置の機能的構成を示すブロック図。 記憶部に記憶されるデータのデータ構成を示す模式図。 情報処理の手順を示すフローチャート。 更新情報生成処理の手順を示すフローチャート。 更新処理の手順を示すフローチャート。 登録・更新処理の手順を示すフローチャート。 特定処理の手順を示すフローチャート。 特定処理の手順を示すフローチャート。 特定処理の手順を示すフローチャート。 ハードウェア構成図。
以下に添付図面を参照して、情報処理装置、情報処理方法、および情報処理プログラムを詳細に説明する。
図1は、本実施の形態の情報処理システム1の一例を示す模式図である。
情報処理システム1は、更新装置10と、情報処理装置20と、を備える。更新装置10と情報処理装置20とは、有線回線または無線回線などの通信回線を介して、データや信号を授受可能に接続されている。
なお、更新装置10と情報処理装置20とは、記憶媒体を介して情報の授受を行ってもよい。例えば、更新装置10が情報を記憶媒体に記憶する。情報処理装置20は、該記憶媒体から情報を読取ることで、更新装置10から情報を取得してもよい。
更新装置10は、更新ソフトウェア等を情報処理装置20へ送信する。更新ソフトウェアは、更新されたソフトウェアである。例えば、更新ソフトウェアは、該送信の時点で最新のバージョンのソフトウェアである。
図2は、更新装置10の機能的構成の一例を示す模式図である。更新装置10は、処理部12と、記憶部14と、を備える。処理部12と記憶部14とは、データや信号を授受可能に接続されている。
記憶部14は、各種データを記憶する。本実施の形態では、記憶部14は、更新ソフトウェア情報14Aと、旧ソフトウェア情報14Bと、を記憶する。
図3は、更新ソフトウェア情報14A、旧ソフトウェア情報14B、および、更新対象ソフトウェアの識別情報のデータ構成の一例を示す模式図である。
図3(A)は、更新ソフトウェア情報14Aのデータ構造の一例を示す模式図である。更新ソフトウェア情報14Aは、更新ソフトウェアを示す情報である。更新ソフトウェア情報14Aは、識別情報と、ソフトウェアと、を含む。ここで、ソフトウェアとは、実行可能ファイル、静的リンクライブラリファイル、動的リンクライブラリファイル、共有ライブラリファイル、スクリプトファイルなどのコンピュータプログラムである。
更新ソフトウェア情報14Aに含まれるソフトウェアは、更新ソフトウェアである。
なお、本実施の形態では、更新ソフトウェア、更新対象ソフトウェア、第1ソフトウェア、第2ソフトウェア、を総称して説明する場合には、単に、ソフトウェアと称して説明する。更新対象ソフトウェア、第1ソフトウェア、第2ソフトウェアについては、詳細を後述する。
識別情報は、ソフトウェアを識別するための情報である。本実施の形態では、識別情報は、バージョン情報と、ソフト名と、を含む。すなわち、本実施の形態では、識別情報は、ソフトウェアのバージョンとソフト名を一意に識別するための情報である。なお、識別情報は、ソフト名、バージョン情報、およびソフトウェアの発行日時を含むものであってもよい。すなわち、識別情報は、ソフトウェアのバージョン、ソフト名、および発行日時を一意に識別するための情報であってもよい。
バージョン情報は、バージョンを示す情報であり、ソフトウェアの改定の段階を示す情報である。バージョン情報は、数値が大きいほど、より後に改定された(すなわち、より新しい)ソフトウェアであることを示す。更新ソフトウェア情報14Aは、対応する更新ソフトウェアのバージョン情報を含む。
ソフト名は、ソフトウェアの名称である。本実施の形態では、同じソフトウェアには、同じソフト名が付与される。言い換えると、バージョンが異なる場合であっても、同じソフトウェアには、同じソフト名が付与されているものとする。
なお、更新ソフトウェア情報14Aは、ソフトウェアの発行日時や、依存関係情報などを含んでいてもよい。ソフトウェアの発行日時は、ソフトウェアが発行された発行日時を示す。依存関係情報は、ソフトウェアの依存関係を示す情報であり、ソフトウェア生成者から提供される。
旧ソフトウェア情報14Bは、情報処理装置20に過去に出力された、ソフトウェアに関する情報である。例えば、旧ソフトウェア情報14Bには、更新装置10から情報処理装置20へ過去に出力された、全てのソフトウェアに関する情報が登録されている。
図3(B)は、旧ソフトウェア情報14Bのデータ構成の一例を示す模式図である。旧ソフトウェア情報14Bは、識別情報(ソフト名、バージョン情報)と、ソフトウェアと、を対応づけて登録した情報である。
なお、旧ソフトウェア情報14Bは、ソフトウェアの発行日時や、依存関係情報などを更に含んでいてもよい。
図2に戻り説明を続ける。次に、処理部12について説明する。
処理部12は、更新装置10を制御する。処理部12は、取得部12Aと、更新情報生成部12Bと、出力部12Cと、を含む。これらの各部(取得部12A、更新情報生成部12B、出力部12C)は、例えば、1または複数のプロセッサにより実現される。
例えば、上記各部は、CPU(Central Processing Unit)などのプロセッサにプログラムを実行させること、すなわちソフトウェアにより実現してもよい。上記各部は、専用のIC(Integrated Circuit)などのプロセッサ、すなわちハードウェアにより実現してもよい。上記各部は、ソフトウェアおよびハードウェアを併用して実現してもよい。複数のプロセッサを用いる場合、各プロセッサは、各部のうち1つを実現してもよいし、各部のうち2以上を実現してもよい。
取得部12Aは、更新ソフトウェア情報14Aを取得する。取得部12Aは、記憶部14から更新ソフトウェア情報14Aを読取ることで、更新ソフトウェア情報14Aを取得する。記憶部14は、例えば、最新のソフトウェア示す更新ソフトウェア情報14Aを、外部装置などから受信し、予め記憶する。そして、取得部12Aは、例えば、外部装置からシステム更新要求などを受信したときに、記憶部14から更新ソフトウェア情報14Aを取得すればよい。
なお、取得部12Aは、外部装置から、更新ソフトウェア情報14Aを取得してもよい。
更新情報生成部12Bは、取得部12Aから更新ソフトウェア情報14Aを受付ける。更新情報生成部12Bは、受付けた更新ソフトウェア情報14Aを、旧ソフトウェア情報14Bへ登録する。そして、更新情報生成部12Bは、更新ソフトウェア情報14Aと、旧ソフトウェア情報14Bと、を用いて、更新情報を生成する。
更新情報は、更新ソフトウェアと、該更新ソフトウェアに関連する他のソフトウェアの識別情報と、を含む。
例えば、更新情報生成部12Bは、更新ソフトウェア情報14Aに含まれるソフトウェアを、更新ソフトウェアとして、更新情報に用いる。また、更新情報生成部12Bは、この更新ソフトウェアに関連する他のソフトウェアの識別情報を、旧ソフトウェア情報14Bから検索する。なお、以下では、更新ソフトウェアは、更新ソフトウェア情報14Aに含まれるソフトウェアを意味するものとして説明する。
具体的には、更新情報生成部12Bは、更新ソフトウェアと同じソフト名のソフトウェアを、旧ソフトウェア情報14Bから検索する。この場合、更新情報生成部12Bは、更新ソフトウェアと同じソフト名で、バージョンの異なる他のソフトウェアを、旧ソフトウェア情報14Bから検索する。そして、更新情報生成部12Bは、検索したソフトウェアに対応する識別情報(ソフト名、バージョン情報)を、旧ソフトウェア情報14Bから読取る。これにより、更新情報生成部12Bは、更新ソフトウェアに関連する他のソフトウェアの識別情報を検索する。
なお、更新情報生成部12Bは、更新ソフトウェアを起動した場合に連動して起動する可能性のある他のソフトウェアの識別情報を、更新ソフトウェアに関連する他のソフトウェアの識別情報として、更に検索してもよい。
図3(C)は、更新ソフトウェアに関連する他のソフトウェアの識別情報の一覧の一例を示す図である。例えば、更新情報生成部12Bは、ソフト名「A」、バージョン情報「Ver3」の更新ソフトウェアに関連する、他のソフトウェアの識別情報として、ソフト名とバージョン情報によって規定される識別情報が、「A,Ver.2」、「A,Ver.1」、「B,Ver.1」、「C,Ver.1」を検索する。
図2に戻り、説明を続ける。そして、更新情報生成部12Bは、更新ソフトウェアと、該更新ソフトウェアに関連する他のソフトウェアの識別情報と、を含む更新情報を生成する。なお、更新情報生成部12Bは、更新ソフトウェアのハッシュ値を更に含む、更新情報を生成してもよい。
出力部12Cは、更新情報生成部12Bで生成された更新情報を、情報処理装置20へ出力する。
次に、情報処理装置20について説明する。図4は、情報処理装置20の機能的構成の一例を示すブロック図である。
情報処理装置20は、処理部22と、記憶部24と、UI(ユーザ・インターフェース)部26と、を備える。記憶部24およびUI部26と、処理部22と、はデータや信号を授受可能に接続されている。
UI部26は、外部に各種情報を出力すると共に、ユーザからの各種指示を受付ける。UI部26は、入力部26Aと、出力部26Bと、を備える。入力部26Aは、ユーザからの各種指示を受付ける。入力部26Aは、例えば、キーボード、マウス、タッチパネル、マイク、などである。出力部26Bは、各種情報を外部へ出力する。出力部26Bは、公知の表示装置、スピーカ、ライト、などである。
記憶部24は、各種データを記憶する。本実施の形態では、記憶部24は、ホワイトリスト24Aと、管理情報24Bと、を記憶する。
ホワイトリスト24Aは、実行を許可するソフトウェアの特定情報を規定したリストである。
図5は、記憶部24に記憶されるデータのデータ構成の一例を示す模式図である。図5(A)は、ホワイトリスト24Aのデータ構成の一例を示す模式図である。ホワイトリスト24Aは、特定情報と、pathと、ハッシュ値と、を対応づけたリストである。
pathは、情報処理装置20における、ソフトウェアのインストールされた場所を示す。ハッシュ値は、ソフトウェアのハッシュ値である。
特定情報は、情報処理装置20にインストールされたソフトウェアを特定するための情報である。すなわち、本実施の形態では、特定情報は、ソフトウェアの識別情報と、識別情報によって識別されるソフトウェアのインストール場所(path)と、ハッシュ値と、を特定するための情報である。なお、上述したように、識別情報は、ソフトウェアのバージョンとソフト名を一意に識別するための情報である。
このため、本実施の形態では、ホワイトリスト24Aには、識別情報によって識別されるソフトウェアのインストール場所(path)およびハッシュ値ごとに一意に付与された、特定情報が規定されている。言い換えると、特定情報によって、特定のバージョン、ソフト名、およびハッシュ値の、pathに示される箇所にインストールされたソフトウェアが特定される。
なお、特定情報の示す値は、予め定められた規則に従って決定されればよい。例えば、情報処理装置20がLinux(登録商標)を利用していると仮定する。この場合、i−nodeを、特定情報として用いてもよい。i−nodeとは、Linuxで用いるファイルの管理情報である。また、特定情報は、ソフトウェアのインストール場所を示すpathであってもよい。また、特定情報は、情報処理装置20が予め定めた規則に基づいて一意に付与した任意の番号であってもよい。また、ソフトウェアのインストール場所を示すpathそのものや、ソフトウェアのハッシュ値そのものを特定情報として用いてもよい。また、ソフトウェアのインストール場所を示すpathとソフトウェアのハッシュ値の組そのものを特定情報として用いてもよい。
また、ハッシュ値は、ソフトウェアのハッシュ値であってもよいし、ソフトウェアとpathの双方から計算されたハッシュ値であってもよい。
次に、管理情報24Bについて説明する。管理情報24Bは、特定情報と、関係特定情報と、を対応づけた情報である。
図5(B)は、管理情報24Bのデータ構成の一例を示す模式図である。管理情報24Bは、特定情報と、識別情報と、インストール日時と、関係特定情報と、を対応づけたリストである。なお、管理情報24Bは、さらに、ソフトウェアの発行日時を含んでいてもよい。
特定情報および識別情報は、上記と同様である。インストール日時は、特定情報によって特定されるソフトウェアが情報処理装置20にインストールされた日時を示す。
関係特定情報は、対応する特定情報によって特定されるソフトウェアに関係する、他のソフトウェアを示す情報である。対応する特定情報によって特定されるソフトウェアに関係する他のソフトウェア、とは、対応する特定情報によって特定されるソフトウェアの採用によって、不要となる他のソフトウェアである。
ソフトウェアの採用とは、該ソフトウェアを特定のプロセスで用いるソフトウェアとして設定することを意味する。
対応する特定情報によって特定されるソフトウェアの採用によって不要となる他のソフトウェアとは、例えば、対応する特定情報によって特定されるソフトウェアより前のバージョン(旧バージョン)の他のソフトウェアや、該前のバージョンの他のソフトウェアにのみ連動して動作する他のソフトウェアなどである。また、対応する特定情報によって特定されるソフトウェアの採用によって不要となる他のソフトウェアは、ソフトウェア生成者から提供される依存関係情報により不要と指定されるソフトウェアや、ソフトウェア生成者から提供される依存関係情報により不要と特定できるソフトウェアであってもよい。
本実施の形態では、関係特定情報は、対応する特定情報によって特定されるソフトウェアに関係する他のソフトウェアを示す情報として、該他のソフトウェアの特定情報を規定する。
このため、例えば、図5(B)に示すように、特定情報「01」に対応する関係特定情報には、特定情報「01」によって特定されるソフト名「A」バージョン「Ver.3」のソフトウェアより前のバージョン(Ver.1,2)のソフトウェアの特定情報「02」「03」が規定される。
なお、本実施の形態では、特定情報と、関係特定情報に規定される特定情報は、ホワイトリスト24Aに登録されている特定情報と同じ規則で定められた情報であるものとして説明する。なお、これらの特定情報は、同じ規則で定められた情報に限定されない。すなわち、ホワイトリスト24Aに規定された特定情報と、管理情報24Bに規定された特定情報および関係特定情報に規定された特定情報と、が、同じソフトウェアを示しているか否かの対応関係が導出可能であればよい。
例えば、ホワイトリスト24Aに規定された特定情報と、管理情報24Bに規定された特定情報と、を異なる生成規則で生成する。この場合、情報処理装置20は、ホワイトリスト24Aに規定された特定情報と、管理情報24Bに規定された特定情報と、の対応関係を示すテーブルを別途保持すればよい。
ホワイトリスト24Aおよび管理情報24Bは、処理部22によって更新される(詳細後述)。
処理部22は、情報処理装置20を制御する。処理部22は、第2取得部22Aと、インストール部22Bと、登録部22Cと、実行部22Dと、第1取得部22Eと、検証部22Fと、特定部22Gと、削除部22Hと、出力制御部22Iと、更新部22Jと、を備える。
上記各部(第2取得部22A、インストール部22B、登録部22C、実行部22D、第1取得部22E、検証部22F、特定部22G、削除部22H、出力制御部22I、更新部22J)は、例えば、1または複数のプロセッサにより実現される。
例えば、上記各部は、CPU(Central Processing Unit)などのプロセッサにプログラムを実行させること、すなわちソフトウェアにより実現してもよい。上記各部は、専用のIC(Integrated Circuit)などのプロセッサ、すなわちハードウェアにより実現してもよい。上記各部は、ソフトウェアおよびハードウェアを併用して実現してもよい。複数のプロセッサを用いる場合、各プロセッサは、各部のうち1つを実現してもよいし、各部のうち2以上を実現してもよい。
第2取得部22Aは、更新情報を取得する。具体的には、第2取得部22Aは、更新装置10から更新情報を取得する。第2取得部22Aは、更新情報を、インストール部22B、登録部22C、および更新部22Jへ出力する。
インストール部22Bは、第2取得部22Aから受付けた更新情報に含まれる更新ソフトウェアを、情報処理装置20へインストールする。インストール部22Bは、更新ソフトウェアのインストール場所を示すpathを、登録部22Cへ出力する。
登録部22Cは、更新ソフトウェアの特定情報を、ホワイトリスト24Aへ登録する。具体的には、登録部22Cは、第2取得部22Aから受付けた更新情報に含まれる識別情報に、特定情報を付与する。また、登録部22Cは、更新ソフトウェアのハッシュ値を計算する。そして、登録部22Cは、付与した特定情報と、インストール部22Bから受付けたpathと、計算したハッシュ値と、を対応づけてホワイトリスト24Aへ登録する。
このため、第2取得部22Aが更新情報を取得し、インストール部22Bが更新情報に含まれる更新ソフトウェアをインストールする毎に、登録部22Cが、ホワイトリスト24Aを更新する。すなわち、登録部22Cは、該更新ソフトウェアの特定情報と、pathと、ハッシュ値と、を対応づけてホワイトリスト24Aへ登録する。
更新部22Jは、ホワイトリスト24Aが更新されると、管理情報24Bを更新する。更新部22Jは、第2取得部22Aから受付けた更新情報に基づいて、管理情報24Bを更新する。
具体的には、まず、更新部22Jは、登録部22Cによってホワイトリスト24Aへ新たに登録された更新ソフトウェアの特定情報と、識別情報と、該更新ソフトウェアがインストール部22Bによってインストールされたインストール日時と、を対応づけて管理情報24Bへ登録する。
そして、更新部22Jは、管理情報24Bにおける関係特定情報を更新する。詳細には、更新部22Jは、管理情報24Bに登録されている関係特定情報が、対応する特定情報によって特定されるソフトウェアの採用によって不要となる他のソフトウェアの特定情報を示すように、関係特定情報を更新する。
すなわち、更新部22Jは、更新ソフトウェアの特定情報に対応づけて、該更新ソフトウェアの採用によって不要となる他のソフトウェアの特定情報を示す関係特定情報を、管理情報24Bに登録する。
具体的には、更新部22Jは、第2取得部22Aで取得した更新情報に含まれる更新ソフトウェアの採用によって不要となる、他のソフトウェアの特定情報を、管理情報24Bから検索する。
例えば、関係特定情報が、対応する特定情報によって特定されるソフトウェアより前のバージョンの他のソフトウェアの特定情報を示すと仮定する。この場合、更新部22Jは、例えば、更新ソフトウェアと同じソフト名であり、且つ更新ソフトウェアより旧バージョンのソフトウェアの特定情報を、管理情報24Bから検索する。そして、更新部22Jは、検索した特定情報を、更新ソフトウェアの特定情報に対応する関係特定情報として、管理情報24Bに登録する。
なお、更新部22Jは、更新装置10から第2取得部22Aを介して取得した更新情報に含まれる、更新ソフトウェアに関連する他のソフトウェアの識別情報を用いて、他のソフトウェアの特定情報を検索してもよい。例えば、更新部22Jは、更新情報に含まれる、他のソフトウェアの識別情報に対応する特定情報を、管理情報24Bから検索する。そして、更新部22Jは、検索した特定情報の内、更新ソフトウェアと同じソフト名であり、且つ更新ソフトウェアより旧バージョンのソフトウェアの特定情報を特定する。そして、更新部22Jは、特定した特定情報を、更新ソフトウェアの特定情報に対応する関係特定情報として、管理情報24Bに登録する。
なお、更新装置10の更新情報生成部12Bは、関係特定情報を含む更新情報を生成してもよい。すなわち、更新装置10の更新情報生成部12Bが、更新ソフトウェアに対応する関係特定情報を生成してもよい。この場合、情報処理装置20の更新部22Jは、更新装置10から第2取得部22Aを介して取得した更新情報に含まれる関係特定情報を、更新ソフトウェアの特定情報に対応づけて、管理情報24Bへ登録すればよい。
図4に戻り説明を続ける。実行部22Dは、アプリケーションの実行に適した単位で分割されたプロセスを生成し、プロセスの動作に必要な資源(CPU、メモリ領域、外部デバイスとのアクセスなど)を管理する。実行部22Dは、各種のソフトウェアを実行することでプロセスを生成する。実行部22Dは、例えば、OS(Operating System)のカーネルである。
本実施の形態では、実行部22Dは、ソフトウェアの実行時に、実行対象の第1ソフトウェアの第1特定情報を、第1取得部22Eへ出力する。そして、実行部22Dは、出力制御部22Iから受付けた検証結果が実行許可を示す場合、第1ソフトウェアを実行する。検証結果は、ホワイトリスト24Aを用いた第1ソフトウェアの検証結果である。
第1ソフトウェアは、ソフトウェアの一例である。本実施の形態では、実行部22Dが実行する対象のソフトウェアを、第1ソフトウェアと称して説明する。第1特定情報は、特定情報の一例である。第1特定情報は、特定情報の内、第1ソフトウェアを特定する特定情報である。
第1取得部22Eは、実行対象の第1ソフトウェアの第1特定情報を取得する。第1取得部22Eは、実行部22Dから、第1特定情報を取得する。第1取得部22Eは、取得した第1特定情報を、検証部22Fおよび特定部22Gへ出力する。
検証部22Fは、第1取得部22Eから受付けた第1特定情報を示す特定情報が、ホワイトリスト24Aに登録されているか否かを判断する。そして、検証部22Fは、登録されている場合、実行許可を示す検証結果を生成する。
詳細には、第1特定情報がホワイトリスト24Aに登録されている場合、検証部22Fは、第1特定情報に含まれるpathによって特定される位置に記憶されている第1ソフトウェアのハッシュ値を計算する。そして、検証部22Fは、ホワイトリスト24Aにおける、第1特定情報を示す特定情報に対応するハッシュ値と、計算したハッシュ値と、が一致する場合、実行許可を示す検証結果を生成する。また、検証部22Fは、ハッシュ値が不一致である場合、実行不可を示す検証結果を生成する。また、検証部22Fは、第1取得部22Eから受付けた第1特定情報を示す特定情報が、ホワイトリスト24Aに登録されていない場合についても、実行不可を示す検証結果を生成する。
出力制御部22Iは、検証部22Fから受付けた検証結果を、実行部22DおよびUI部26へ出力する。UI部26の出力部26Bは、検証結果を出力する。実行部22Dは、検証部22Fから受付けた検証結果が実行許可を示す場合、第1ソフトウェアを実行する。一方、実行部22Dは、検証部22Fから受付けた検証結果が実行不可を示す場合、第1ソフトウェアを実行しない。
特定部22Gは、ホワイトリスト24Aに、第1特定情報を示す特定情報が登録されている場合、ホワイトリスト24Aにおける、第1ソフトウェアに関係する他のソフトウェアである第2ソフトウェアの特定情報を、第2特定情報として特定する。
第1特定情報を示す特定情報とは、第1特定情報と同じ値の特定情報を示す。第2ソフトウェアは、ソフトウェアの一例である。第2ソフトウェアは、ソフトウェアの内、第1ソフトウェアに関係する他のソフトウェアである。第1ソフトウェアに関係する他のソフトウェアとは、第1ソフトウェアに関係し、且つ、第1ソフトウェア以外のソフトウェアである。
第2特定情報は、特定情報の一例である。第2特定情報は、実行対象のソフトウェアである第1ソフトウェアに関連する、第2ソフトウェアの特定情報である。
すなわち、本実施の形態では、特定部22Gは、ホワイトリスト24Aに、第1特定情報が登録されている場合、ホワイトリスト24Aにおける、第2ソフトウェアの第2特定情報を特定する。
例えば、特定部22Gは、ホワイトリスト24Aにおける第2ソフトウェアの特定情報を、監視対象の第2特定情報として特定する。監視対象とは、何等かの処理を施す対象であることを意味する。例えば、監視対象とは、ホワイトリストからの削除対象、ホワイトリストからの退避対象、実行時の警告対象、などを意味する。本実施の形態では、一例として、監視対象とは、ホワイトリストからの削除対象である場合を、一例として説明する。
本実施の形態では、特定部22Gは、管理情報24Bに基づいて、第2特定情報を特定する。特定部22Gは、管理情報24Bにおける、第1特定情報を示す特定情報に対応する関係特定情報を読取る。そして、特定部22Gは、読取った関係特定情報に示される特定情報を、ホワイトリスト24Aから特定する。これによって、特定部22Gは、ホワイトリスト24Aにおける第2特定情報を特定する。
特定部22Gは、特定した第2特定情報を、削除部22Hへ出力する。
削除部22Hは、第2特定情報に関する情報を、ホワイトリスト24Aから削除する。ホワイトリスト24Aにおける第2特定情報に関する情報とは、ホワイトリスト24Aにおける、第2特定情報を示す特定情報と、該特定情報に対応付けられた情報(本実施の形態では、pathとハッシュ値)と、を示す。
すなわち、本実施の形態では、削除部22Hは、ホワイトリスト24Aにおける、第2特定情報を示す特定情報と、該特定情報に対応するpathおよびハッシュ値と、をホワイトリスト24Aから削除する。
このため、本実施の形態では、第1特定情報がホワイトリスト24Aへ登録されている場合、第1ソフトウェアの採用によって不要となる第2ソフトウェアに関する情報が、ホワイトリスト24Aから削除される。
なお、削除部22Hは、第1特定情報がホワイトリスト24Aへ登録されており、且つ、ホワイトリスト24Aを用いた第1ソフトウェアの検証結果が実行許可を示す場合に、第2特定情報に関する情報をホワイトリスト24Aから削除してもよい。
また、削除部22Hは、第1特定情報がホワイトリスト24Aへ登録されており、ホワイトリスト24Aを用いた第1ソフトウェアの検証結果が実行許可を示し、且つ、実行部22Dが第1ソフトウェアを実行した場合に、第2特定情報に関する情報を、ホワイトリスト24Aから削除してもよい。
更に、削除部22Hは、管理情報24Bにおける、第2特定情報に関する情報を削除する。管理情報24Bにおける第2特定情報に関する情報とは、管理情報24Bにおける、第2特定情報を示す特定情報、および、該特定情報に対応付けて登録されている他の情報(本実施の形態では、識別情報、インストール日時、関係特定情報)を示す。
次に、本実施の形態の更新装置10が実行する情報処理の手順を説明する。図6は、本実施の形態の更新装置10が実行する情報処理の手順の一例を示す、フローチャートである。
まず、取得部12Aが、更新ソフトウェア情報14Aを取得する(ステップS100)。次に、更新情報生成部12Bが、更新情報生成処理を実行する(ステップS102)。そして、出力部12Cが、ステップS102で生成された更新情報を、情報処理装置20へ出力する(ステップS104)。そして、本ルーチンを終了する。
次に、図6のステップS102の更新情報生成処理の手順の一例を説明する。図7は、更新情報生成処理の手順の一例を示す、フローチャートである。
まず、更新情報生成部12Bは、取得した更新ソフトウェア情報14Aに含まれる更新ソフトウェアのソフト名を読取る(ステップS200)。次に、更新情報生成部12Bは、ステップS200で読取ったソフト名が旧ソフトウェア情報14Bに存在するか否かを判断する(ステップS202)。ステップS202で肯定判断すると(ステップS202:Yes)、ステップS204へ進む。
ステップS204では、更新情報生成部12Bは、更新ソフトウェアと同じソフト名のソフトウェアの識別情報を、旧ソフトウェア情報14Bから特定する(ステップS204)。そして、ステップS206へ進む。一方、ステップS202で否定判断すると(ステップS202:No)、識別情報を空欄とし、ステップS206へ進む。
ステップS206では、更新情報生成部12Bは、ステップS100(図6参照)で取得した更新ソフトウェア情報14Aに含まれる更新ソフトウェアと、ステップS204で特定した識別情報と、を含む更新情報を生成する(ステップS206)。そして、本ルーチンを終了する。
次に、情報処理装置20が実行する情報処理の手順を説明する。情報処理装置20は、情報処理として、ホワイトリスト24Aおよび管理情報24Bを更新する更新処理と、第2特定情報を特定する特定処理と、を実行する。
まず、情報処理装置20が実行する更新処理の手順の一例を説明する。図8は、情報処理装置20が実行する更新処理の手順の一例を示す、フローチャートである。
まず、第2取得部22Aが、更新装置10から更新情報を取得したか否かを判断する(ステップS300)。ステップS300で否定判断すると(ステップS300:No)、本ルーチンを終了する。ステップS300で肯定判断すると(ステップS300:Yes)、ステップS302へ進む。
ステップS302では、インストール部22Bが、ステップS300で取得した更新情報に含まれる更新ソフトウェアをインストールする(ステップS302)。
なお、インストール部22Bは、更新情報を検査し、更新すべきか否かを判断してもよい。そして、インストール部22Bは、更新すべきと判断した場合に、更新ソフトウェアをインストールしてもよい。そして、インストール部22Bは、更新すべきではないと判断した場合、本ルーチンを終了してもよい。
なお、更新すべきか否かの判断は、公知の方法を用いればよい。例えば、更新情報が、デジタル署名を更に含むと仮定する。この場合、インストール部22Bは、更新情報に含まれるデジタル署名が正しいか否かを判別することで、更新すべきか否かを判断すればよい。
次に、登録部22Cが、ステップS300で取得した更新情報に含まれる更新ソフトウェアのハッシュ値を計算する(ステップS304)。なお、登録部22Cは、予め定めたハッシュ関数を用いて、ハッシュ値を算出すればよい。
そして、登録部22Cは、特定情報と、ステップS302でインストールされた場所を示すpathと、ステップS304で計算したハッシュ値と、を対応づけてホワイトリスト24Aに登録する(ステップS306)。
次に、更新部22Jが、管理情報24Bへの登録・更新処理を実行する(ステップS308)。そして、本ルーチンを終了する。
次に、図8のステップS308で、更新部22Jが実行する登録・更新処理の手順の一例を説明する。図9は、更新部22Jが実行する登録・更新処理の手順の一例を示す、フローチャートである。
まず、更新部22Jは、更新ソフトウェアの特定情報が管理情報24Bに登録済であるか否かを判断する(ステップS400)。すなわち、更新部22Jは、ステップS306(図8参照)の処理によってホワイトリスト24Aに登録された特定情報が、管理情報24Bに登録済であるか否かを判断する。
ステップS400で否定判断すると(ステップS400:No)、ステップS402へ進む。ステップS402では、更新部22Jは、ステップS306でホワイトリスト24Aに登録された更新ソフトウェアの、特定情報、識別情報、およびインストール日時を対応づけて、管理情報24Bへ登録する(ステップS402)。そして、ステップS406へ進む。
一方、ステップS400で肯定判断すると(ステップS400:Yes)、ステップS404へ進む。ステップS404では、更新部22Jは、ステップS306(図8参照)で登録された特定情報に対応するインストール日時を、ステップS302(図8参照)のインストール日時に更新する(ステップS404)。そして、ステップS406へ進む。
ステップS406では、更新部22Jが、ステップS300(図8参照)で取得した更新情報に含まれる更新ソフトウェアの採用によって不要となる、他のソフトウェアの特定情報を、管理情報24Bから検索する(ステップS406)。そして、該当するソフトウェアが有る場合には(ステップS408:Yes)、ステップS410へ進む。
ステップS410では、更新部22Jは、関係特定情報を生成し、管理情報24Bへ登録する(ステップS410)。例えば、更新部22Jは、更新ソフトウェアと同じソフト名であり、且つ更新ソフトウェアより旧バージョンのソフトウェアの特定情報を、管理情報24Bから検索する。そして、更新部22Jは、検索した特定情報を、更新ソフトウェアの特定情報に対応する関係特定情報として、管理情報24Bに登録する。
そして、本ルーチンを終了する。一方、該当するソフトウェアが無い場合(ステップS408:No)、本ルーチンを終了する。
次に、第2特定情報を特定する特定処理の手順の一例を説明する。図10は、情報処理装置20が実行する特定処理の手順の一例を示す、フローチャートである。
まず、実行部22Dが、実行対象の第1ソフトウェアが発生したか否かを判断する(ステップS500)。実行対象の第1ソフトウェアが発生しない場合(ステップS500:No)、本ルーチンを終了する。実行対象の第1ソフトウェアが発生した場合(ステップS500:Yes)、実行部22Dは、第1ソフトウェアの第1特定情報を第1取得部22Eへ出力する。
このため、第1取得部22Eは、第1特定情報を取得する(ステップS502)。本実施の形態では、第1取得部22Eは、実行対象の第1ソフトウェアの識別情報(ソフト名、バージョン情報)と、第1ソフトウェアの記憶場所を示すpathと、によって規定される第1特定情報を取得する。
次に、検証部22Fが、第1取得部22Eが取得した第1特定情報によって特定される第1ソフトウェアについて、ホワイトリスト24Aを用いて、実行を許可するか否かを検証する(ステップS504)。例えば、検証部22Fは、第1特定情報に含まれるpathによって特定される位置に記憶されている第1ソフトウェアのハッシュ値を計算する。そして、検証部22Fは、ホワイトリスト24Aにおける、第1特定情報を示す特定情報に対応するハッシュ値と、計算したハッシュ値と、が一致する場合、実行許可を示す検証結果を生成する。また、検証部22Fは、ハッシュ値が不一致である場合、実行不可を示す検証結果を生成する。
ステップS504の検証結果が実行不可を示す場合(ステップS506:No)、本ルーチンを終了する。ステップS504の検証結果が実行許可を示す場合(ステップS506:Yes)、ステップS508へ進む。
ステップS508では、出力制御部22Iが、実行許可を示す情報を出力部26Bから出力する(ステップS508)。なお、ステップS508の処理は省略してもよい。
次に、実行部22Dが、第1ソフトウェアを実行する(ステップS510)。すなわち、検証結果が実行許可を示す場合、実行部22Dは、第1ソフトウェアを実行する。
次に、特定部22Gが、ホワイトリスト24Aに、第1特定情報を示す特定情報が登録されているか否かを判断する(ステップS512)。登録されていない場合(ステップS512:No)、本ルーチンを終了する。一方、登録されている場合(ステップS512:Yes)、ステップS514へ進む。
ステップS514では、特定部22Gが、ホワイトリスト24Aにおける、第1ソフトウェアに関係する他のソフトウェアである第2ソフトウェアの特定情報を、第2特定情報として特定する(ステップS514)。
次に、削除部22Hが、ホワイトリスト24Aにおける、ステップS514で特定された第2特定情報に関する情報を削除する(ステップS516)。
次に、削除部22Hは、管理情報24Bにおける、ステップS514で特定された第2特定情報に関する情報を削除する(ステップS518)。そして、本ルーチンを終了する。
以上説明したように、本実施の形態の情報処理装置20は、第1取得部22Eと、特定部22Gと、を備える。第1取得部22Eは、実行対象の第1ソフトウェアの第1特定情報を取得する。特定部22Gは、実行を許可するソフトウェアの特定情報を規定したホワイトリスト24Aに、第1特定情報を示す特定情報が登録されている場合、ホワイトリスト24Aにおける、第1ソフトウェアに関係する他のソフトウェアである第2ソフトウェアの特定情報を、第2特定情報として特定する。
このように、本実施の形態の情報処理装置20は、実行対象の第1ソフトウェアの第1特定情報がホワイトリスト24Aに登録されている場合に、ホワイトリスト24Aにおける、該第1ソフトウェアに関係する第2ソフトウェアの第2特定情報を特定する。
このため、本実施の形態の情報処理装置20は、ホワイトリスト24Aに実行対象の第1ソフトウェアの第1特定情報が登録されている場合にのみ、該第1ソフトウェアに関係する第2ソフトウェアの第2特定情報を、監視や削除などの各種の処理を施す対象のソフトとして特定することができる。
このため、本実施の形態の情報処理装置20は、実行対象の第1ソフトウェアの第1特定情報がホワイトリスト24Aに未登録である場合に、該第1ソフトウェアに関連する第2ソフトウェアに監視や削除などの各種処理が施されることを抑制することができる。すなわち、本実施の形態の情報処理装置20は、第1ソフトウェアおよび第2ソフトウェアの双方が実行不可能状態となることを、抑制することができる。
従って、本実施の形態の情報処理装置20は、ホワイトリスト24Aを導入した情報処理装置20の可用性を維持することができる。
本実施の形態の情報処理装置20は、特定部22Gが特定した第2特定情報を、削除部22Hが、ホワイトリスト24Aから削除する。
このため、本実施の形態の情報処理装置20は、上記効果が得られると共に、情報処理装置20の安全性を実現することができる。
なお、第2取得部22Aが更新装置10から受信する更新情報は、監視情報を更に含んでいてもよい。監視情報は、監視対象のソフトウェアの特定情報を示す。なお、監視情報は、監視対象のソフトウェアの識別情報を示すものであってもよい。
この場合、更新装置10の更新情報生成部12Bは、監視情報を更に含む更新情報を生成すればよい。例えば、更新情報生成部12Bは、旧ソフトウェア情報14Bに登録されているソフトウェアの内、危殆化したソフトウェアを特定する。例えば、更新情報生成部12Bは、情報処理装置20へ送信してから所定期間以上経過したソフトウェアや、情報処理装置20で所定期間以上実行されていないソフトウェアを、危殆化したソフトウェアとして特定する。
例えば、更新情報生成部12Bは、情報処理装置20で所定期間以上実行されていないソフトウェアの特定情報や、インストールから所定期間以上経過したソフトウェアの特定情報を、情報処理装置20から取得する。そして、更新情報生成部12Bは、情報処理装置20から受信した情報に基づいて、危殆化したソフトウェアを特定すればよい。
そして、更新情報生成部12Bは、危殆化したソフトウェアの特定情報を示す監視情報を更に含む、更新情報を、情報処理装置20へ送信すればよい。
この場合、情報処理装置20の特定部22Gは、上記と同様にして第2特定情報を特定すると共に、監視情報に示される特定情報を、第2特定情報として更に特定すればよい。
なお、本実施の形態では、ホワイトリスト24Aと管理情報24Bを別のテーブルとして管理する形態を説明した。しかし、ホワイトリスト24Aと管理情報24Bを、同一のテーブルで管理してもよい。
(変形例1)
なお、上記実施の形態では、出力制御部22Iは、検証部22Fによる検証結果を出力部26Bから出力する制御を行う形態を説明した。しかし、出力制御部22Iは、更に他の情報を出力部26Bから出力してもよい。
例えば、出力制御部22Iは、第1取得部22Eが取得した第1特定情報が、過去に特定部22Gによって特定された第2特定情報と一致する場合、警告情報を出力部26Bに出力してもよい。
この場合、特定部22Gは、上記実施の形態と同様に、ホワイトリスト24Aに第1特定情報を示す特定情報が登録されている場合、ホワイトリスト24Aにおける、第1ソフトウェアに関係する第2ソフトウェアの第2特定情報を、特定する。そして、さらに、特定部22Gは、特定した第2特定情報に対応づけて、特定済であることを示すフラグを付与する。
例えば、ホワイトリスト24Aを、特定情報にフラグを更に対応付けた構成とする。フラグは、例えば、第2特定情報として特定済である場合「1」であり、特定されていない場合「0」とする。
特定部22Gは、ホワイトリスト24Aにおける、第2特定情報として特定した特定情報に対応するフラグを「1」に変更する。なお、以下では、フラグが付与された状態は、フラグが「1」であることを示すものとして説明する。
そして、出力制御部22Iは、検証部22Fで検証された第1ソフトウェアの第1特定情報にフラグが付与されている場合、該第1特定情報が過去に特定された第2特定情報と一致すると判別する。そして、出力制御部22Iは、第1取得部22Eが取得した第1特定情報が、過去に特定部22Gによって特定された第2特定情報と一致する場合、警告情報を出力部26Bに出力する。警告情報は、過去に第2特定情報として特定されたことを示す情報であればよい。
出力部26Bは、警告情報を出力する。例えば、出力部26Bは、警告情報を示す音、警告情報を示す表示画面、警告情報を示す光を出力する。
なお、本変形例では、削除部22Hは、第2特定情報に関する情報の削除処理を実行しなくてもよい。また、削除部22Hは、所定期間ごとに、ホワイトリスト24Aにおける、特定済であることを示すフラグを付与された第2特定情報に関する情報を、該ホワイトリスト24Aから削除してもよい。
本変形例では、情報処理装置20は、上記実施の形態と同様にして、更新処理を実行する(図8、図9参照)。一方、本変形例では、情報処理装置20は、図11に示す特定処理を実行することが好ましい。
図11は、本変形例の情報処理装置20が実行する、特定処理の手順の一例を示すフローチャートである。
本変形例では、情報処理装置20は、上記実施の形態のステップS500〜ステップS506(図10参照)と同様にして、ステップS600〜ステップS606の処理を実行する。そして、ステップS606で否定判断すると(ステップS606:No)、本ルーチンを終了する。
ステップS606で肯定判断すると(ステップS606:Yes)、ステップS608へ進む。
ステップS608では、出力制御部22Iは、第1取得部22Eで取得した第1特定情報が過去に特定された第2特定情報と一致するか否かを判断する(ステップS608)。一致する場合(ステップS608:Yes)、ステップS610へ進む。ステップS610では、出力制御部22Iが、警告情報を出力部26Bから出力する(ステップS610)。そして、ステップS612へ進む。ステップS608で否定判断した場合(ステップS608:No)、ステップS612へ進む。
そして、実行部22Dが、第1ソフトウェアを実行する(ステップS612)。次に、特定部22Gが、ホワイトリスト24Aに、第1特定情報を示す特定情報が登録されているか否かを判断する(ステップS614)。登録されていない場合(ステップS614:No)、本ルーチンを終了する。一方、登録されている場合(ステップ614:Yes)、ステップS616へ進む。
ステップS616では、特定部22Gが、ホワイトリスト24Aにおける、第1ソフトウェアに関係する他のソフトウェアである第2ソフトウェアの特定情報を、第2特定情報として特定する(ステップS616)。
次に、特定部22Gは、ステップS616で特定した第2特定情報に、特定済を示すフラグを付与する(ステップS618)。そして、本ルーチンを終了する。
以上説明したように、本変形例の情報処理装置20は、上記実施の形態と同様に、実行対象の第1ソフトウェアの第1特定情報がホワイトリスト24Aに登録されている場合に、ホワイトリスト24Aにおける、該第1ソフトウェアに関係する第2ソフトウェアの第2特定情報を特定する。そして、本変形例の情報処理装置20では、出力制御部22Iは、第1特定情報が過去に特定された第2特定情報と一致する場合、警告情報を出力部26Bに出力する。
このため、本変形例の情報処理装置20は、上記実施の形態と同様の効果が得られると共に、更に、可用性の低減を更に抑制することができる。
(変形例2)
なお、上記実施の形態では、出力制御部22Iは、検証部22Fによる検証結果を出力部26Bから出力する制御を行う形態を説明した。しかし、出力制御部22Iは、第1ソフトウェアの実行を保留するように、更に実行部22Dを制御してもよい。
例えば、出力制御部22Iは、第1取得部22Eが取得した第1特定情報が、過去に特定部22Gによって特定された第2特定情報と一致する場合、第1ソフトウェアの実行を保留するように実行部22Dを制御し、且つ、警告情報を出力部26Bに出力してもよい。
そして、実行部22Dは、警告情報に対する実行指示を受付けた場合、第1ソフトウェアを実行すればよい。
この場合、特定部22Gは、上記実施の形態と同様に、ホワイトリスト24Aに第1特定情報を示す特定情報が登録されている場合、ホワイトリスト24Aにおける、第1ソフトウェアに関係する第2ソフトウェアの第2特定情報を、特定する。そして、特定部22Gは、上記変形例1と同様に、さらに、特定した第2特定情報に対応づけて、特定済であることを示すフラグを付与する。
そして、出力制御部22Iは、検証部22Fで検証された第1ソフトウェアの第1特定情報にフラグが付与されている場合、該第1特定情報が過去に特定された第2特定情報と一致すると判別する。そして、出力制御部22Iは、第1取得部22Eが取得した第1特定情報が、過去に特定部22Gによって特定された第2特定情報と一致する場合、警告情報を出力部26Bに出力する。
また、出力制御部22Iは、この場合、第1ソフトウェアの実行を保留するように実行部22Dを制御する。例えば、出力制御部22Iは、検証部22Fから受付けた検証結果を、実行指示を受付けるまで保留し、実行指示を受付けたときに、実行部22Dへ出力すればよい。
出力制御部22Iは、実行指示を、入力部26Aから受け付ければよい。例えば、出力制御部22Iが、警告情報を出力部26Bへ出力する。ユーザは、出力部26Bから出力された情報を把握し、入力部26Aを操作指示する。この操作指示により、ユーザは、第1ソフトウェアの実行を示す実行指示、または、実行不可を示す実行不可指示を操作入力する。入力部26Aは、受付けた実行指示または実行不可指示を、出力制御部22Iへ出力する。
出力制御部22Iは、実行不可指示を受付けたときに、検証部22Fの検証結果を実行部22Dへ出力すればよい。
なお、本変形例では、削除部22Hは、第2特定情報に関する情報の削除処理を実行しなくてもよい。
本変形例では、情報処理装置20は、上記実施の形態と同様にして、更新処理を実行する(図8、図9参照)。一方、本変形例では、情報処理装置20は、図12に示す特定処理を実行することが好ましい。
図12は、本変形例の情報処理装置20が実行する、特定処理の手順の一例を示すフローチャートである。
本変形例では、情報処理装置20は、上記実施の形態のステップS500〜ステップS506(図10参照)と同様にして、ステップS700〜ステップS706の処理を実行する。そして、ステップS706で否定判断すると(ステップS706:No)、本ルーチンを終了する。
ステップS706で肯定判断すると(ステップS706:Yes)、ステップS708へ進む。
ステップS708では、出力制御部22Iは、第1取得部22Eで取得した第1特定情報が過去に特定された第2特定情報と一致するか否かを判断する(ステップS708)。不一致の場合(ステップS708:No)、ステップS714へ進む。
一方、一致する場合(ステップS708:Yes)、ステップS710へ進む。ステップS710では、出力制御部22Iが、警告情報を出力部26Bから出力する(ステップS710)。
次に、出力制御部22Iは、入力部26Aから実行指示を受付けたか否かを判断する(ステップS712)。実行指示を受付けた場合(ステップS712:Yes)、ステップS714へ進む。一方、実行不可指示を受付けた場合(ステップS712:No)、本ルーチンを終了する。
ステップS714では、実行部22Dが、第1ソフトウェアを実行する(ステップS714)。次に、特定部22Gが、ホワイトリスト24Aに、第1特定情報を示す特定情報が登録されているか否かを判断する(ステップS716)。登録されていない場合(ステップS716:No)、本ルーチンを終了する。一方、登録されている場合(ステップS716:Yes)、ステップS718へ進む。
ステップS718では、特定部22Gが、ホワイトリスト24Aにおける、第1ソフトウェアに関係する他のソフトウェアである第2ソフトウェアの特定情報を、第2特定情報として特定する(ステップS718)。
次に、特定部22Gは、ステップS718で特定した第2特定情報に、特定済を示すフラグを付与する(ステップS720)。そして、本ルーチンを終了する。
以上説明したように、本変形例の情報処理装置20は、上記実施の形態と同様に、実行対象の第1ソフトウェアの第1特定情報がホワイトリスト24Aに登録されている場合に、ホワイトリスト24Aにおける、該第1ソフトウェアに関係する第2ソフトウェアの第2特定情報を特定する。そして、本変形例の情報処理装置20では、出力制御部22Iは、第1特定情報が過去に特定された第2特定情報と一致する場合、第1ソフトウェアの実行を保留するように実行部22Dを制御し、且つ、警告情報を出力部26Bに出力する。そして、実行部22Dは、警告情報に対する実行指示を受付けた場合、第1ソフトウェアを実行する。
このため、本変形例の情報処理装置20は、上記実施の形態と同様の効果が得られると共に、可用性の低減を更に抑制することができる。また、本変形例の情報処理装置20は、情報処理装置20のセキュリティレベルの向上を図ることができる。
次に、上記実施の形態および変形例の更新装置10および情報処理装置20の、ハードウェア構成の一例を説明する。図13は、上記実施の形態および変形例の更新装置10および情報処理装置20のハードウェア構成図の一例である。
上記実施の形態および変形例の更新装置10および情報処理装置20は、CPU(Central Processing Unit)51などの制御装置と、ROM(Read Only Memory)52やRAM(Random Access Memory)53やHDD(ハードディスクドライブ)などの記憶装置と、各種機器とのインターフェースである通信I/F部54と、各部を接続するバス61とを備えており、通常のコンピュータを利用したハードウェア構成となっている。
上記実施の形態および変形例の更新装置10および情報処理装置20では、CPU51が、ROM52からプログラムをRAM53上に読み出して実行することにより、上記各機能がコンピュータ上で実現される。
なお、上記実施の形態および変形例の更新装置10および情報処理装置20で実行される上記各処理を実行するためのプログラムは、HDDに記憶されていてもよい。また、上記実施の形態および変形例の更新装置10および情報処理装置20で実行される上記各処理を実行するためのプログラムは、ROM52に予め組み込まれて提供されていてもよい。
また、上記実施の形態および変形例の更新装置10および情報処理装置20で実行される上記処理を実行するためのプログラムは、インストール可能な形式または実行可能な形式のファイルでCD−ROM、CD−R、メモリカード、DVD(Digital Versatile Disk)、フレキシブルディスク(FD)等のコンピュータで読み取り可能な記憶媒体に記憶されてコンピュータプログラムプロダクトとして提供されるようにしてもよい。また、上記実施の形態および変形例の更新装置10および情報処理装置20で実行される上記処理を実行するためのプログラムを、インターネットなどのネットワークに接続されたコンピュータ上に格納し、ネットワーク経由でダウンロードさせることにより提供するようにしてもよい。また、上記実施の形態および変形例の更新装置10および情報処理装置20で実行される上記処理を実行するためのプログラムを、インターネットなどのネットワーク経由で提供または配布するようにしてもよい。
なお、上記には、本発明の実施の形態および変形例を説明したが、上記実施の形態および変形例は、例として提示したものであり、発明の範囲を限定することは意図していない。この新規な実施の形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。この実施の形態および変形例やこれらの変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
20 情報処理装置
22A 第2取得部
22C 登録部
22D 実行部
22E 第1取得部
22G 特定部
22H 削除部
22I 出力制御部
22J 更新部
26B 出力部

Claims (14)

  1. 実行対象の第1ソフトウェアの第1特定情報を取得する第1取得部と、
    実行を許可するソフトウェアの特定情報を規定したホワイトリストに、前記第1特定情報を示す前記特定情報が登録されている場合、前記特定情報と、該特定情報によって特定される前記ソフトウェアに関係する他の前記ソフトウェアを示す関係特定情報と、を対応づけた管理情報に基づいて、前記ホワイトリストにおける、前記第1ソフトウェアに関係する他の前記ソフトウェアである第2ソフトウェアの前記特定情報を、第2特定情報として特定する特定部と、
    更新ソフトウェアと、該更新ソフトウェアに関連する他の前記ソフトウェアの識別情報と、を含む更新情報を取得する第2取得部と、
    前記更新ソフトウェアの前記特定情報を前記ホワイトリストに登録する登録部と、
    前記更新情報に基づいて、前記管理情報を更新する更新部と、
    を備える、情報処理装置。
  2. 前記関係特定情報は、
    対応する前記特定情報によって特定される前記ソフトウェアの採用によって不要となる他の前記ソフトウェアの前記特定情報を示す、
    請求項1に記載の情報処理装置。
  3. 前記関係特定情報は、
    対応する前記特定情報によって特定される前記ソフトウェアより前のバージョンの、他の前記ソフトウェアを示す、
    請求項1または請求項2に記載の情報処理装置。
  4. 前記第1特定情報を前記第1取得部へ出力し、前記ホワイトリストを用いた前記第1ソフトウェアの検証結果が実行許可を示す場合、該第1ソフトウェアを実行する実行部を備える、
    請求項1〜請求項3の何れか1項に記載の情報処理装置。
  5. 前記第2特定情報に関する情報を前記ホワイトリストから削除する削除部を備える、
    請求項1〜請求項4の何れか1項に記載の情報処理装置。
  6. 前記削除部は、
    前記ホワイトリストを用いた前記第1ソフトウェアの検証結果が実行許可を示す場合、前記第2特定情報に関する情報を前記ホワイトリストから削除する、
    請求項5に記載の情報処理装置。
  7. 前記管理情報における、前記第2特定情報に関する情報を削除する削除部を備える、
    請求項1に記載の情報処理装置。
  8. 前記第1取得部が取得した前記第1特定情報が、過去に特定された第2特定情報と一致する場合、警告情報を出力部に出力する出力制御部を備える、
    請求項4〜請求項7の何れか1項に記載の情報処理装置。
  9. 前記出力制御部は、
    前記第1取得部が取得した前記第1特定情報が、過去に特定された前記第2特定情報と一致する場合、前記第1ソフトウェアの実行を保留するように、前記第1ソフトウェアを実行する実行部を制御し、且つ、前記警告情報を出力部に出力する、
    請求項8に記載の情報処理装置。
  10. 前記更新情報は、
    前記更新ソフトウェアに関係する他の前記ソフトウェアの前記特定情報を示す前記関係特定情報を含む、
    請求項1〜請求項9のいずれか1項に記載の情報処理装置。
  11. 前記更新部は、
    前記更新ソフトウェアの前記特定情報に対応づけて、該更新ソフトウェアの採用によって不要となる他の前記ソフトウェアの前記特定情報を示す前記関係特定情報を、前記管理情報に登録する、
    請求項1〜請求項10のいずれか1項に記載の情報処理装置。
  12. 前記更新情報は、
    監視対象の前記ソフトウェアの前記特定情報を示す監視情報を更に含み、
    前記特定部は、
    前記ホワイトリストにおける、前記監視情報に示される前記特定情報を、前記第2特定情報として更に特定する、
    請求項1〜請求項10のいずれか1項に記載の情報処理装置。
  13. 実行対象の第1ソフトウェアの第1特定情報を取得するステップと、
    実行を許可するソフトウェアの特定情報を規定したホワイトリストに、前記第1特定情報を示す前記特定情報が登録されている場合、前記特定情報と、該特定情報によって特定される前記ソフトウェアに関係する他の前記ソフトウェアを示す関係特定情報と、を対応づけた管理情報に基づいて、前記ホワイトリストにおける、前記第1ソフトウェアに関係する他の前記ソフトウェアである第2ソフトウェアの前記特定情報を、第2特定情報として特定するステップと、
    更新ソフトウェアと、該更新ソフトウェアに関連する他の前記ソフトウェアの識別情報と、を含む更新情報を取得するステップと、
    前記更新ソフトウェアの前記特定情報を前記ホワイトリストに登録するステップと、
    前記更新情報に基づいて、前記管理情報を更新するステップと、
    を含む情報処理方法。
  14. 実行対象の第1ソフトウェアの第1特定情報を取得するステップと、
    実行を許可するソフトウェアの特定情報を規定したホワイトリストに、前記第1特定情報を示す前記特定情報が登録されている場合、前記特定情報と、該特定情報によって特定される前記ソフトウェアに関係する他の前記ソフトウェアを示す関係特定情報と、を対応づけた管理情報に基づいて、前記ホワイトリストにおける、前記第1ソフトウェアに関係する他の前記ソフトウェアである第2ソフトウェアの前記特定情報を、第2特定情報として特定するステップと、
    更新ソフトウェアと、該更新ソフトウェアに関連する他の前記ソフトウェアの識別情報と、を含む更新情報を取得するステップと、
    前記更新ソフトウェアの前記特定情報を前記ホワイトリストに登録するステップと、
    前記更新情報に基づいて、前記管理情報を更新するステップと、
    をコンピュータに実行させるための情報処理プログラム。
JP2017173977A 2017-09-11 2017-09-11 情報処理装置、情報処理方法、および情報処理プログラム Active JP6759169B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2017173977A JP6759169B2 (ja) 2017-09-11 2017-09-11 情報処理装置、情報処理方法、および情報処理プログラム
US15/900,109 US10846394B2 (en) 2017-09-11 2018-02-20 Information processing apparatus, information processing method, and computer program product

Applications Claiming Priority (1)

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

Publications (2)

Publication Number Publication Date
JP2019049877A JP2019049877A (ja) 2019-03-28
JP6759169B2 true JP6759169B2 (ja) 2020-09-23

Family

ID=65631193

Family Applications (1)

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

Country Status (2)

Country Link
US (1) US10846394B2 (ja)
JP (1) JP6759169B2 (ja)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6829168B2 (ja) 2017-09-04 2021-02-10 株式会社東芝 情報処理装置、情報処理方法およびプログラム
JP6783812B2 (ja) 2018-03-13 2020-11-11 株式会社東芝 情報処理装置、情報処理方法およびプログラム
WO2019240020A1 (ja) * 2018-06-13 2019-12-19 パナソニックIpマネジメント株式会社 不正通信検知装置、不正通信検知方法及び製造システム
JP6914899B2 (ja) 2018-09-18 2021-08-04 株式会社東芝 情報処理装置、情報処理方法およびプログラム
US11106554B2 (en) 2019-04-30 2021-08-31 JFrog, Ltd. Active-active environment control
US11340894B2 (en) 2019-04-30 2022-05-24 JFrog, Ltd. Data file partition and replication
US11886390B2 (en) 2019-04-30 2024-01-30 JFrog Ltd. Data file partition and replication
US11386233B2 (en) 2019-04-30 2022-07-12 JFrog, Ltd. Data bundle generation and deployment
JP7289739B2 (ja) * 2019-06-27 2023-06-12 キヤノン株式会社 情報処理装置、情報処理方法およびプログラム
US10999314B2 (en) 2019-07-19 2021-05-04 JFrog Ltd. Software release tracking and logging
WO2021014326A2 (en) 2019-07-19 2021-01-28 JFrog Ltd. Software release verification
TWI730415B (zh) * 2019-09-18 2021-06-11 財團法人工業技術研究院 偵測系統、偵測方法、及藉由使用偵測方法所執行的更新驗證方法
JP2021099693A (ja) * 2019-12-23 2021-07-01 グローリー株式会社 有価媒体処理装置
US11695829B2 (en) 2020-01-09 2023-07-04 JFrog Ltd. Peer-to-peer (P2P) downloading
US11860680B2 (en) 2020-11-24 2024-01-02 JFrog Ltd. Software pipeline and release validation
US11586433B2 (en) * 2021-03-08 2023-02-21 Ally Financial Inc. Pipeline release validation
US20230041397A1 (en) * 2021-08-06 2023-02-09 Vmware, Inc. System and method for checking reputations of executable files using file origin analysis
US20230214479A1 (en) * 2022-01-04 2023-07-06 Saudi Arabian Oil Company Method and system for detecting and preventing unauthorized access to a computer

Family Cites Families (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5758068A (en) * 1995-09-19 1998-05-26 International Business Machines Corporation Method and apparatus for software license management
US20010011253A1 (en) * 1998-08-04 2001-08-02 Christopher D. Coley Automated system for management of licensed software
US20060265336A1 (en) * 1996-02-26 2006-11-23 Graphon Corporation Automated system for management of licensed digital assets
US7124408B1 (en) * 2000-06-28 2006-10-17 Microsoft Corporation Binding by hash
US7236958B2 (en) * 2001-01-05 2007-06-26 Microsoft Corporation Electronic software license with software product installer identifier
US7080043B2 (en) * 2002-03-26 2006-07-18 Microsoft Corporation Content revocation and license modification in a digital rights management (DRM) system on a computing device
US8438392B2 (en) * 2002-06-20 2013-05-07 Krimmeni Technologies, Inc. Method and system for control of code execution on a general purpose computing device and control of code execution in a recursive security protocol
JP4018498B2 (ja) * 2002-10-15 2007-12-05 キヤノン株式会社 管理装置、管理方法、制御プログラム
US20050049973A1 (en) * 2003-09-02 2005-03-03 Read Mark A. Method and program for automated management of software license usage by monitoring and disabling inactive software products
US20050114266A1 (en) * 2003-11-26 2005-05-26 Lingan Satkunanathan System and method for managing licenses using interactive wizards
US8230413B2 (en) * 2004-04-08 2012-07-24 International Business Machines Corporation Detecting incorrect versions of files
WO2006101549A2 (en) * 2004-12-03 2006-09-28 Whitecell Software, Inc. Secure system for allowing the execution of authorized computer program code
US8819655B1 (en) * 2007-09-17 2014-08-26 Symantec Corporation Systems and methods for computer program update protection
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
US8321949B1 (en) * 2008-08-29 2012-11-27 Adobe Systems Incorporated Managing software run in a computing system
US8589691B1 (en) * 2009-08-17 2013-11-19 Google Inc. Self-signed certificates for computer application signatures
JP5381670B2 (ja) 2009-12-10 2014-01-08 富士通株式会社 実行制御方法、実行制御プログラムおよび実行制御装置
JP5557623B2 (ja) 2010-06-30 2014-07-23 三菱電機株式会社 感染検査システム及び感染検査方法及び記録媒体及びプログラム
US20120311710A1 (en) * 2011-06-03 2012-12-06 Voodoosoft Holdings, Llc Computer program, method, and system for preventing execution of viruses and malware
US8683597B1 (en) * 2011-12-08 2014-03-25 Amazon Technologies, Inc. Risk-based authentication duration
US8959362B2 (en) * 2012-04-30 2015-02-17 General Electric Company Systems and methods for controlling file execution for industrial control systems
US20130333039A1 (en) * 2012-06-07 2013-12-12 Mcafee, Inc. Evaluating Whether to Block or Allow Installation of a Software Application
KR101907529B1 (ko) * 2012-09-25 2018-12-07 삼성전자 주식회사 사용자 디바이스에서 어플리케이션 관리 방법 및 장치
US8881291B2 (en) * 2012-09-25 2014-11-04 Oracle International Corporation System and method for inhibiting the processing of new code modules by an outdated runtime environment
JP6396320B2 (ja) 2012-12-20 2018-09-26 エアビクティ インコーポレイテッド 効率的なヘッドユニット通信統合
JP5682978B2 (ja) 2013-01-16 2015-03-11 Necプラットフォームズ株式会社 セキュリティシステム、セキュリティ制御方法およびセキュリティ制御プログラム
US9596315B2 (en) * 2013-05-30 2017-03-14 Zentera Systems, Inc. Secure data transfer platform for hybrid computing environment
EP2840492A1 (en) * 2013-08-23 2015-02-25 British Telecommunications public limited company Method and apparatus for modifying a computer program in a trusted manner
US10019569B2 (en) * 2014-06-27 2018-07-10 Qualcomm Incorporated Dynamic patching for diversity-based software security
US10834109B2 (en) * 2014-12-23 2020-11-10 Mcafee, Llc Determining a reputation for a process
EP3238125B1 (en) * 2014-12-26 2020-11-04 McAfee, LLC Trusted updates
JP6478026B2 (ja) * 2015-01-28 2019-03-06 株式会社リコー 情報処理装置、プログラム、及び記録媒体
US10153904B2 (en) * 2015-04-29 2018-12-11 Ncr Corporation Validating resources execution
US9471285B1 (en) * 2015-07-09 2016-10-18 Synopsys, Inc. Identifying software components in a software codebase
JP6548525B2 (ja) * 2015-08-31 2019-07-24 キヤノン株式会社 ライセンス管理システム、クライアント、ライセンス管理方法、及びコンピュータプログラム
KR102400477B1 (ko) * 2015-10-21 2022-05-23 삼성전자주식회사 어플리케이션을 관리하는 방법 및 그 장치
US10387649B2 (en) * 2015-10-31 2019-08-20 Quick Heal Technologies Private Limited Detecting malware when executing in a system
CN107346252B (zh) * 2016-05-07 2021-05-25 腾讯科技(深圳)有限公司 应用更新方法和装置
US10528741B1 (en) * 2016-07-13 2020-01-07 VCE IP Holding Company LLC Computer implemented systems and methods for assessing operational risks and mitigating operational risks associated with using a third party software component in a software application
GB2553836B (en) * 2016-09-16 2021-05-19 1E Ltd File execution
US20180253809A1 (en) * 2017-03-03 2018-09-06 Patton Electronics Co. Method and system for distributing floating licenses for real-time services
US10873588B2 (en) * 2017-08-01 2020-12-22 Pc Matic, Inc. System, method, and apparatus for computer security
US10579830B1 (en) * 2019-08-29 2020-03-03 Cyberark Software Ltd. Just-in-time and secure activation of software

Also Published As

Publication number Publication date
US20190080080A1 (en) 2019-03-14
JP2019049877A (ja) 2019-03-28
US10846394B2 (en) 2020-11-24

Similar Documents

Publication Publication Date Title
JP6759169B2 (ja) 情報処理装置、情報処理方法、および情報処理プログラム
JP6930949B2 (ja) ソフトウェア配信システム、ソフトウェア配信サーバ、及びソフトウェア配信方法
JP6469028B2 (ja) オペレーティング・システム・リソースに対する機械語のネイティブイメージのアクセス制御のシステム及び方法
EP2315175A1 (en) Apparatus, method, and computer-readable recording medium for supporting license acquirement
JP2009187420A (ja) 情報処理システム、サーバ装置、ユーザ管理装置、情報処理方法、およびプログラム
CN110619235A (zh) 管理方法、管理装置及记录介质
JPWO2018207243A1 (ja) 車載認証システム、車両通信装置、認証管理装置、車載認証方法および車載認証プログラム
JP2007200102A (ja) 不正コードおよび不正データのチェックシステム、プログラムおよび方法
CN109725917B (zh) 服务器装置、非暂时性的计算机可以读取的记录媒体和更新系统
US20220253297A1 (en) Automated deployment of changes to applications on a cloud computing platform
JPWO2008146408A1 (ja) ライセンス管理プログラム、ソフトウェア利用制御方法およびライセンス管理装置
US8818969B2 (en) Information processing apparatus and server, control method, and recording medium
US20180144105A1 (en) Computing apparatus and method with persistent memory
US10922387B2 (en) Method and control system for controlling an execution of a software application on an execution platform
JP2016001376A (ja) プログラマブルコントローラシステム、その支援装置
KR101461319B1 (ko) 셋탑박스의 펌웨어 업그레이드 방법 및 펌웨어 업그레이드 장치
TWI486876B (zh) 更新週邊設備的連接管理程式的方法及主機
JP2009009494A (ja) 情報処理装置、情報処理方法、制御プログラム
JP7074805B2 (ja) 情報処理装置、情報処理方法、および情報処理プログラム
JP6971958B2 (ja) 情報処理装置、情報処理方法、および情報処理プログラム
JP2005327196A (ja) ライセンス管理装置、その制御方法、プログラムおよび記憶媒体
US9122555B2 (en) Information processing system, information processing apparatus, storage medium having stored therein information processing program, method of executing application, and storage medium stored therein data of application
JP2007018344A (ja) ライセンス情報の更新方法
CN107608698A (zh) 一种命令行工具更新方法及装置
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: 20200423

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200602

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200701

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200902

R151 Written notification of patent or utility model registration

Ref document number: 6759169

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151