JP2006323675A - 情報処理装置、情報処理方法及びコンピュータプログラム - Google Patents

情報処理装置、情報処理方法及びコンピュータプログラム Download PDF

Info

Publication number
JP2006323675A
JP2006323675A JP2005146992A JP2005146992A JP2006323675A JP 2006323675 A JP2006323675 A JP 2006323675A JP 2005146992 A JP2005146992 A JP 2005146992A JP 2005146992 A JP2005146992 A JP 2005146992A JP 2006323675 A JP2006323675 A JP 2006323675A
Authority
JP
Japan
Prior art keywords
program
processing
information
memory
processing 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.)
Granted
Application number
JP2005146992A
Other languages
English (en)
Other versions
JP4698285B2 (ja
Inventor
Naoki Nishiguchi
直樹 西口
Atsushi Kawai
淳 河合
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2005146992A priority Critical patent/JP4698285B2/ja
Priority to US11/210,658 priority patent/US8176278B2/en
Publication of JP2006323675A publication Critical patent/JP2006323675A/ja
Application granted granted Critical
Publication of JP4698285B2 publication Critical patent/JP4698285B2/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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • G06F12/1441Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow

Landscapes

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

Abstract

【課題】 メモリへアクセスする場合に、実行対象のプログラムが実行される前に改竄されることを未然に防止することができ、メモリのアクセス帯域を圧迫することがない情報処理装置、情報処理方法及びコンピュータプログラムを提供する。
【解決手段】 プログラムを実行することが可能な主演算処理部及び副演算処理部、実行対象プログラムを展開するメモリを備え、該メモリに記憶してある情報に対する処理の制限を示す処理制限情報を記憶手段に記憶してあり、副演算処理部は、実行対象となるプログラムに改竄が行われているか否かを判断し、改竄が行われていないと判断した場合、実行対象となるプログラムをメモリに展開し、メモリに展開したプログラムの実行前に処理制限情報を参照し、メモリに記憶してある情報に対する主演算処理部による処理が、処理制限情報に記憶してある処理と合致すると判断した場合、主演算処理部のプログラムの実行を禁止する。
【選択図】 図4

Description

本発明は、プログラムに対する第三者による改竄を検知することができる情報処理装置及び情報処理方法に関する。特にオペレーティングシステムに対する第三者による改竄を検知することができる情報処理装置、情報処理方法及びコンピュータプログラムに関する。
従来、ワークステーション、パーソナルコンピュータ等のセキュリティを確保するために、動作するプログラム、操作するユーザ等に権限を設定し、設定した権限の範囲内での動作、操作等のみを許可するようにしていた。権限の設定によりセキュリティを確保する方法では、オペレーティングシステムが権限の設定、監視等を実行する。したがって、オペレーティングシステムが正常に動作することが前提条件となっていた。
プログラムの改竄を防止する方法に限定した場合、例えばプログラムがメモリにロードされる都度、プログラムをランダムにメモリに配置することによりメモリ解析を困難にする方法も良く用いられる。この方法では、プログラムの実行中に、他のプログラムからメモリ解析することを困難にすることによりプログラム改竄の危険度を下げることができる。また、プログラムが展開されたメモリを定期的に監視し、メモリのプログラム記憶領域に変更があった場合にはプログラムの実行を停止することにより、プログラムの改竄を検知することも可能となる。
また、プログラムのアクセス違反を検知するハードウェアであるアクセス監視装置を別個に設けておき、メモリに出力される信号を監視することにより、アクセス違反を検知する方法も開発されている(特許文献1参照)。この場合、実行中のプログラムを識別する情報はオペレーティングシステムが管理しており、プログラムを識別する情報に基づいて、ハードウェアであるアクセス監視装置が、プログラムによるメモリへのアクセスが不正であるか否かを判断する。
特開2001−325150号公報
しかし、プログラムの権限を監視するオペレーティングシステムもプログラムの1つであり、例えばリナックス(Linux )のようにカーネルモジュールも更新することが可能なオペレーティングシステムでは、権限の設定方法、監視方法等も更新することができる。したがって、オペレーティングシステム自体を改竄することにより、権限の監視を無効化し、不正なメモリアクセスを行う可能性が残されているという問題点があった。
また、プログラムをランダムにメモリに配置することによりメモリ解析を困難にする方法では、メモリ内容の監視間隔を短くするほどプログラムの改竄を早期に発見することができるものの、監視間隔を短くすることは、メモリアクセスの帯域を監視プログラムが用いることによる性能低下の一因となる。さらに、監視間隔を如何に短くしようと改竄された後の状態を検知するに過ぎず、改竄されることを未然に防止することができないという問題点があった。
さらに、プログラムのアクセス違反を検知するハードウェアであるアクセス監視装置を別個に設ける方法では、実行中のプログラムを識別する情報を管理するのはオペレーティングシステムであることから、オペレーティングシステム自体が改竄された場合、アクセス監視装置の動作を制御することができる可能性が残されているという問題点があった。
本発明は斯かる事情に鑑みてなされたものであり、プログラムが実行される前にメモリ内容が改竄されることを未然に防止することができ、メモリアクセスの帯域を圧迫することがない情報処理装置、情報処理方法及びコンピュータプログラムを提供することを目的とする。
また本発明は、メモリへアクセスする場合、プログラムが実行される前に改竄されることを未然に防止することができ、メモリアクセスの帯域を圧迫することがない情報処理装置、情報処理方法及びコンピュータプログラムを提供することを目的とする。
上記目的を達成するために第1発明に係る情報処理装置は、プログラムを実行することが可能な主演算処理部及び副演算処理部と、実行対象プログラムを展開するメモリとを備え、該メモリに展開してあるプログラムに対する処理の制限を示す処理制限情報を記憶手段に記憶する情報処理装置であって、前記副演算処理部は、実行対象となるプログラムに改竄が行われているか否かを判断する手段と、改竄が行われていないと判断した場合、実行対象となるプログラムを前記メモリに展開する手段と、前記メモリに展開したプログラムの実行前に、前記処理制限情報を参照し、前記メモリに展開してあるプログラムに対する前記主演算処理部による処理が、前記処理制限情報に記憶してある処理と合致するか否かを判断する手段と、該手段で合致すると判断した場合、前記主演算処理部の前記プログラムの実行を禁止する手段とを備えることを特徴とする。
また、第2発明に係る情報処理装置は、第1発明において、前記主演算処理部は、メモリに対する読み書きを制御するアドレス制御手段を備えており、前記副演算処理部は、前記アドレス制御手段が指示するアドレス範囲に記憶してある情報に対する処理が、前記処理制限情報に記憶してある処理と合致するか否かを判断するようにしてあることを特徴とする。
また、第3発明に係る情報処理装置は、第1又は第2発明において、実行対象のプログラムを記憶又は更新する場合、該プログラムの改竄が行われていないと判断したときに、前記副演算処理部のみが取得可能な情報を付加して記憶又は更新する手段を備えることを特徴とする。
また、第4発明に係る情報処理方法は、プログラムを実行することが可能な主演算処理部及び副演算処理部と、実行対象プログラムを展開するメモリとを備え、該メモリに展開してあるプログラムに対する処理の制限を示す処理制限情報を記憶手段に記憶するコンピュータを用いる情報処理方法であって、前記副演算処理部は、実行対象となるプログラムに改竄が行われているか否かを判断し、改竄が行われていないと判断した場合、実行対象となるプログラムを前記メモリに展開し、前記メモリに展開したプログラムの実行前に、前記処理制限情報を参照し、前記メモリに展開してあるプログラムに対する前記主演算処理部による処理が、前記処理制限情報に記憶してある処理と合致するか否かを判断し、合致すると判断した場合、前記主演算処理部の前記プログラムの実行を禁止することを特徴とする。
また、第5発明に係る情報処理方法は、第4発明において、前記主演算処理部は、メモリに対する読み書きを制御し、前記副演算処理部は、前記主演算処理部が指示するアドレス範囲に記憶してある情報に対する処理が、前記処理制限情報に記憶してある処理と合致するか否かを判断することを特徴とする。
また、第6発明に係る情報処理方法は、第4又は第5発明において、実行対象のプログラムを記憶又は更新する場合、該プログラムの改竄が行われていないと判断したときに、前記副演算処理部のみが取得可能な情報を付加して記憶又は更新することを特徴とする。
また、第7発明に係るコンピュータプログラムは、プログラムを実行することが可能な主演算処理部及び副演算処理部と、実行対象プログラムを展開するメモリとを備え、該メモリに展開してあるプログラムに対する処理の制限を示す処理制限情報を記憶手段に記憶するコンピュータで実行することが可能なコンピュータプログラムであって、前記副演算処理部を、実行対象となるプログラムに改竄が行われているか否かを判断する手段、改竄が行われていないと判断した場合、実行対象となるプログラムを前記メモリに展開する手段、前記メモリに展開したプログラムの実行前に、前記処理制限情報を参照し、前記メモリに展開してあるプログラムに対する前記主演算処理部による処理が、前記処理制限情報に記憶してある処理と合致するか否かを判断する手段、及び該手段で合致すると判断した場合、前記主演算処理部の前記プログラムの実行を禁止する手段として機能させることを特徴とする。
また、第8発明に係るコンピュータプログラムは、第7発明において、前記主演算処理部を、メモリに対する読み書きを制御するアドレス制御手段として機能させ、前記副演算処理部を、前記アドレス制御手段が指示するアドレス範囲に記憶してある情報に対する処理が、前記処理制限情報に記憶してある処理と合致するか否かを判断する手段として機能させることを特徴とする。
また、第9発明に係るコンピュータプログラムは、第7又は第8発明において、前記副演算処理部を、実行対象のプログラムを記憶又は更新する場合、該プログラムの改竄が行われていないと判断したときに、前記副演算処理部のみが取得可能な情報を付加して記憶又は更新する手段として機能させることを特徴とする。
第1発明、第4発明及び第7発明では、プログラムを実行することが可能な主演算処理部及び副演算処理部を備え、メモリに記憶してある情報に対する処理の制限を示す処理制限情報を記憶してあるコンピュータを用い、副演算処理部は、実行対象となるプログラムに改竄が行われているか否かを判断し、改竄が行われていないと判断した場合、実行対象となるプログラムをメモリに展開する。副演算処理部は、メモリに展開したプログラムの実行前に記憶してある処理制限情報を参照して、メモリに展開してあるプログラムに対する主演算処理部による処理が、処理制限情報に記憶してある処理と合致するか否かを判断し、合致すると判断した場合、主演算処理部のプログラムの実行を禁止する。これにより、プログラムを実行する主演算処理部とは別個に設けてある副演算処理部が、プログラムの改竄の有無を判断することにより、オペレーティングシステムの管理外でプログラムの改竄を確認することができる。つまり、オペレーティングシステムが動作する前に処理制限情報を設定するため、オペレーティングシステムに対する改竄を未然に防止することが可能となる。さらに、プログラムを実行する都度、処理制限情報に基づくプログラム実行禁止処理の存在の有無を確認することにより、一定間隔でメモリ監視を定期的に実行する必要がなく、メモリへのアクセス帯域を圧迫することなく、計算機資源を有効に活用することが可能となる。なお、本明細書における「プログラム」とは、ロードモジュール等の実行可能プログラムだけでなく、該実行可能プログラムが読み書き可能なデータを含む概念である。
第2発明、第5発明及び第8発明では、主演算処理部は、メモリのアドレスを制御し、副演算処理部は、動的に指示されたアドレス範囲に記憶してある情報に対する処理が、処理制限情報に記憶してある処理と合致するか否かを判断する。これにより、副演算処理部は、DMAにより割当てられたメモリ領域に対する処理が、処理制限情報に記憶してある処理と合致するか否かを判断することにより、オペレーティングシステムの管理外でプログラム改竄の有無を判断することができる。つまり、オペレーティングシステムが動作する前に処理制限商法を設定するため、オペレーティングシステムに対する改竄が行われたか否かを確認することができる。したがって、オペレーティングシステムに対する改竄により不正アクセスを行うことを未然に防止することが可能となる。
第3発明、第6発明及び第9発明では、実行対象のプログラムが改竄されていないと判断することができるように、プログラムを記憶又は更新する場合、副演算処理部のみが取得可能な情報を付加して記憶又は更新する。これにより、実行対象のプログラムのメモリ展開時の改竄確認を確実に行うことができ、プログラム実行の安全度がより高まることが期待できる。
第1発明、第4発明及び第7発明によれば、プログラムを実行する主演算処理部とは別個に設けてある副演算処理部が、プログラムの改竄の有無を判断することにより、オペレーティングシステムの管理外でプログラムの改竄を確認することができる。つまり、オペレーティングシステムが動作する前に処理制限情報を設定するため、オペレーティングシステムに対する改竄を未然に防止することが可能となる。さらに、プログラムを実行する都度、処理制限情報に基づくプログラム実行禁止処理の存在の有無を確認することにより、一定間隔でメモリ監視を定期的に実行する必要がなく、メモリへのアクセス帯域を圧迫することなく、計算機資源を有効に活用することが可能となる。
第2発明、第5発明及び第8発明によれば、副演算処理部は、DMAにより割当てられたメモリ領域に対する処理が、処理制限情報に記憶してある処理と合致するか否かを判断することにより、オペレーティングシステムの管理外でプログラム改竄の有無を判断することができる。つまり、オペレーティングシステムが動作する前に処理制限情報を設定するため、オペレーティングシステムに対する改竄が行われたか否かを確認することができる。したがって、オペレーティングシステムに対する改竄により不正アクセスを行うことを未然に防止することが可能となる。
第3発明、第6発明及び第9発明によれば、実行対象のプログラムが改竄されていないと判断することができるように、プログラムを記憶又は更新する場合、副演算処理部のみが取得可能な情報を付加して記憶又は更新することで、実行対象のプログラムのメモリ展開時の改竄確認を確実に行うことができ、プログラム実行の安全度がより高まることが期待できる。
以下、本発明をその実施の形態を示す図面に基づいて具体的に説明する。
(実施の形態1)
図1は、本発明の実施の形態1に係る情報処理装置の構成を示すブロック図である。実施の形態1に係る情報処理装置は、主演算処理部1及び副演算処理部2を同一筐体内に備えており、主演算処理部1と副演算処理部2とは、内部バス30を介してデータを送受信することが可能に接続されている。主演算処理部1及び副演算処理部2は、内部バス30を介して、入力手段3及び出力手段4とも接続されている。
主演算処理部1は、少なくとも主CPU11、記憶手段12、RAM13、及び副演算処理部2からもデータを読み書きすることが可能な共有メモリ31を備え、記憶手段12は、副演算処理部2による改竄検知を必要としないプログラムを記憶している。
主CPU11は、内部バス30を介して主演算処理部1の上述したようなハードウェア各部と接続されており、上述したハードウェア各部を制御するとともに、ハードディスク等の記憶手段12に記憶されたプログラム、例えば共有メモリ31へのアクセス制御プログラムをRAM13へ展開することにより、種々のソフトウェア的機能を実行する。
RAM13は、DRAM等で構成され、記憶手段12に記憶してあるプログラム、例えば共有メモリ31へのアクセス制御プログラムを実行時に展開し、実行時に発生する一時的なデータを記憶する。また、共有メモリ31は、内部バス30を介して副演算処理部2からもアクセスすることが可能であり、共有メモリ31に展開されたプログラム、例えばオペレーティングシステムを主CPU11が実行する。
副演算処理部2は、少なくとも副CPU21、記憶手段22、RAM23、及び主演算処理部1からもデータを読み書きすることが可能な共有メモリ31を備え、記憶手段22は、オペレーティングシステム、制御プログラム等のプログラムを記憶するプログラム記憶部221、及び共有メモリ31に対する処理の制限情報を記憶する処理制限情報記憶部222を備えている。
副CPU21は、内部バス30を介して副演算処理部2の上述したようなハードウェア各部と接続されており、上述したハードウェア各部を制御するとともに、ハードディスク等のプログラム記憶部221に記憶された各種のプログラムをRAM23へ展開することにより、種々のソフトウェア的機能を実行する。また、処理制限情報記憶部222に記憶してある共有メモリ31に対する処理の制限情報に基づいて、共有メモリ31へ展開されたプログラムを実行する前に改竄が行われる可能性の有無を判断する。
入力手段3は、情報処理装置を操作するために必要な文字キー、テンキー、各種のファンクションキー等を備えたキーボード、マウス等の入力媒体である。出力手段4は、液晶表示装置、CRTディスプレイ等の表示装置、レーザプリンタ、ドットプリンタ等の印刷装置等である。
以下、上述した構成の情報処理装置における主演算処理部1及び副演算処理部2の処理について説明する。情報処理装置の電源を入れる、又はリセットを行った場合、副CPU21が記憶手段22のプログラム記憶部221から実行対象となるプログラムを読出し、共有メモリ31に展開する。図2は、実行対象となるプログラムの構成の例示図である。
本実施の形態1で実行対象となるプログラム40は、プログラム40に対する改竄が行われたか否かを確認することができるようにするため、プログラム本体41に加えて、プログラム40のローディング方法、実行開始アドレス等を記憶してあるプログラム情報42、外部からの処理を制限して保護されるべきメモリ領域を指定してある保護メモリ領域情報43、及び改竄を検出するために用いるハッシュ情報44で構成されている。ハッシュ情報44に設定されるハッシュ値は、プログラム40全体に対するハッシュ値であっても良いし、プログラム本体41に対するハッシュ値であっても良い。
プログラム40は、復号可能な鍵情報で暗号化されていても良いし、プログラム本体41のみが復号可能な鍵情報で暗号化されていても良い。この場合、復号した後にハッシュ値を計算して改竄されているか否かを判断しても良いし、復号前にハッシュ値を計算して改竄されているか否かを判断してから復号しても良い。
副CPU21は、プログラム40から保護メモリ領域情報43を読出し、処理制限情報記憶部222に記憶する。図3は、処理制限情報記憶部222に記憶されるデータのデータ構成の一例を示す図である。図3(a)は保護されるべきメモリ領域を開始アドレスと終了アドレスとで指定する場合の、図3(b)は開始アドレスと領域サイズとで指定する場合の、それぞれの場合のデータ構成を示している。図3に示すように、保護すべき対象、処理を制限する条件、及び処理を制限する場合の副CPU21が実行すべき処理を、メモリ領域と対応付けて記憶してある。
図3の例では、保護すべき対象は、メモリ又はDMAと指定することができ、夫々に対して、保護すべきメモリ領域を指定する。処理を制限する条件は、読出し、書込み、及び読み書きを指定することができ、指定されたメモリ領域からの読出し又は指定されたメモリ領域への書込み、若しくは両者を検出した場合に、プログラムの実行を停止することが可能な処理を実行する。
プログラムの実行を停止することが可能な処理は、リブート及び主CPU11に対する割込み処理を指定する。前者は、情報処理装置を再起動することにより、保護されるべきメモリ領域の読み出し又は書き込みを未然に防止する。後者は、割込み処理により、主CPU11によるプログラムの実行を停止する。
図4は、本発明の実施の形態1に係る情報処理装置における副演算処理部2の副CPU21の処理手順を示すフローチャートである。副演算処理部2の副CPU21は、プログラム記憶部221から実行対象となるプログラムを読出し(ステップS401)、読出したプログラムのハッシュ値を算出する(ステップS402)。
副CPU21は、算出したハッシュ値が、記憶手段22に記憶してある実行対象となるプログラムのハッシュ値と一致するか否かを判断し(ステップS403)、副CPU21が一致しないと判断した場合(ステップS403:NO)、副CPU21は、実行対象となるプログラムに何らかの改竄が行われているものと判断し、共有メモリ31へ展開することなく、改竄が検出された旨を外部へ出力する(ステップS404)。具体的には、表示装置への警告メッセージの表示出力、印刷装置への警告メッセージの印字出力等である。
副CPU21が一致すると判断した場合(ステップS403:YES)、副CPU21は、プログラムに改竄が行われていないものと判断し、共有メモリ31に実行対象となるプログラムを展開し(ステップS405)、展開したプログラムに含まれている保護メモリ領域情報を処理制限情報記憶部222に記憶する(ステップS406)。副CPU21は、共有メモリ31に記憶してあるメモリ(DMA)アクセス情報が更新されたか否かを判断する(ステップS407)。なお、メモリ(DMA)アクセス情報は、主CPU11により実行されるプログラムに含まれる命令ごとの、共有メモリ31への読み書きの区別、及び読み書きするアドレスに関する情報である。
副CPU21は、メモリ(DMA)アクセス情報が更新されるまで待ち状態となり(ステップS407:NO)、副CPU21が、メモリ(DMA)アクセス情報が更新されたと判断した場合(ステップS407:YES)、副CPU21は、共有メモリ31へ記憶されたメモリ(DMA)アクセス情報が、処理制限情報記憶部222に記憶してある保護メモリ情報と合致するか否かを判断する(ステップS408)。副CPU21が、合致すると判断した場合(ステップS408:YES)、副CPU21は、主CPU11が抽出した命令が不正な更新処理、例えば改竄を行う命令であると判断し、主CPU11に対してプログラムの実行を許可しない不許可信号を送信した後(ステップS409)、主CPU11に抽出した命令を実行させることなく、処理制限情報記憶部222から抽出した保護メモリ情報に対応した処理を実行する(ステップS410)。例えばリブートする、又は割り込み処理により共有メモリ31に展開した実行対象となるプログラムを消去する。
副CPU21が、合致しないと判断した場合(ステップS408:NO)、副CPU21は、該命令は不正な処理を実行しないものと判断し、主CPU11に対してプログラムの実行を許可する許可信号を送信した後(ステップS411)、ステップS407へ戻り、上述した処理を繰り返す。
メモリ(DMA)アクセス情報の更新処理は主CPU11が実行する。図5は、本発明の実施の形態1に係る情報処理装置における主演算処理部1の主CPU11の処理手順を示すフローチャートである。なお、CPUが実行する命令自体についてもメモリへの読み書きは発生しているが、説明を簡単にするために、命令の読み出しは正しく実行できていることを前提とする。主演算処理部1の主CPU11は、共有メモリ31に展開してある実行対象のプログラムから、最初の命令を抽出し(ステップS501)、抽出した命令を実行する(ステップS502)。命令の実行により、共有メモリ31への読み書きが発生する場合、読み書きの区別、及び読み書きするアドレスをメモリ(DMA)アクセス情報として記憶する(ステップS503)。
主CPU11は、副CPU21から許可信号を受信したか否かを判断し(ステップS504)、主CPU11が許可信号を受信していないと判断した場合(ステップS504:NO)、不許可信号を受信したか否かを判断する(ステップS505)。主CPU11が不許可信号を受信したと判断した場合(ステップS505:YES)、主CPU11は、該プログラムに対する処理を終了する。主CPU11が不許可信号を受信していないと判断した場合(ステップS505:NO)、主CPU11はステップS504へ処理を戻す。なお、該命令の実行が許可されない場合、副CPU21により情報処理装置がリブートされる、又は主CPU11に対して割り込みが発生し、主CPU11によって該プログラムの処理を終了する。
主CPU11が、抽出した命令に対する許可信号を受信したと判断した場合(ステップS504:YES)、主CPU11は、全ての命令の実行が完了したか否かを判断し(ステップS506)、主CPU11が全ての命令の実行が完了したと判断した場合(ステップS506:YES)、処理を終了する。
主CPU11が、全ての命令の実行が完了していないと判断した場合(ステップS506:NO)、主CPU11は、次の命令を抽出して(ステップS507)、ステップ502へ戻り、上述した処理を繰り返す。
なお、共有メモリ31へのアドレス制御は、静的なアドレス制御であってもDMAであっても良い。DMAで制御する場合、主演算処理部1は、処理する共有メモリ31のアドレスを制御するアドレス制御機能(アドレス制御手段)を主CPU11に備えており、アドレス制御機能により主CPU11が指示するアドレス範囲に記憶してあるプログラムに対する処理が、処理制限情報記憶部222に記憶してある処理制限情報と合致するか否かに応じて、主CPU11がプログラムを実行するか否かを制御する。
また、プログラムをプログラム記憶部221へ記憶する場合、副演算処理部2にて、プログラムを認証して改竄できない形に加工することが好ましい。これにより、認証後に改竄されないことを保証することができるからである。
プログラムの認証方法としては、ハッシュ、公開鍵による復号等があるが、特にこれらの方法に限定されるものではない。以下、記憶するプログラムがハッシュを算出した上で秘密鍵にて暗号化されており、副演算処理部2が公開鍵を記憶している場合を想定する。
副演算処理部2は、暗号化された状態のプログラムを公開鍵で復号する。復号したプログラムに対して、ハッシュを算出し、記憶してあるハッシュ値と比較する。ハッシュ値が異なる場合、改竄ありとしてプログラムを記憶することなく処理を終了する。
なお、プログラムサイズが大きく、処理が分割される場合には、復号処理及びハッシュ算出処理を繰り返し行う。この場合、ハッシュ値は、副演算処理部2内のRAM23に記憶しておき、次の処理に利用する。
復号されたプログラムデータは、副演算処理部2内に記憶することが望ましい。しかし、一時領域としてメモリを使用することも可能である。この場合、主演算処理部1からの一時領域へのアクセスは禁止し、副演算処理部2からはアクセス可能としておく。
プログラムを復号しハッシュ値が一致する場合には、副演算処理部2が記憶している鍵にて暗号化を行い、プログラム記憶部221へ記憶する。復号時と同様、処理を分割して行ってもよい。なお、分割処理の際、暗号化処理を復号処理及びハッシュ算出処理に続いて行っても、改竄の確認処理の完了後に行っても、いずれでも良い。
以上のように本実施の形態1によれば、プログラムを実行する主演算処理部1とは別個に設けてある副演算処理部2が、プログラムの改竄の有無を判断することにより、オペレーティングシステムの管理外でプログラムの改竄を確認することができる。また、例えばオペレーティングシステムを起動する前にオペレーティングシステムに対する改竄が行われたか否かを確認することができることから、オペレーティングシステムに対する改竄により不正アクセスを行うことを未然に防止することも可能となる。さらに、プログラムを実行する都度、処理制限情報に基づくプログラム実行禁止処理の存在の有無を確認することができ、一定間隔でメモリ監視を定期的に実行する必要がなく、メモリへのアクセス帯域を圧迫することなく、計算機資源を有効に活用することが可能となる。
(実施の形態2)
図6は、本実施の形態2に係る情報処理装置の構成は実施の形態1と同様である。したがって、同一の機能を有する構成要素には同一の符号を付することで詳細な説明を省略する。本実施の形態2は、処理制限情報を記憶する処理制限情報記憶部が主演算処理部1に備えている点で実施の形態1と相違する。
すなわち、主演算処理部1の記憶手段12は、各種の制御プログラムの他、処理制限情報を記憶した処理制限情報記憶部121を備えている。
以下、上述した構成の情報処理装置における主演算処理部1及び副演算処理部2の処理について説明する。情報処理装置の電源を入れる、又はリセットを行った場合、副CPU21が記憶手段22のプログラム記憶部221から実行対象となるプログラムを読出し、共有メモリ31に展開する。
副CPU21は、プログラム40から保護メモリ領域情報43を読出し、主CPU11へ送信する。主CPU11は、受信した保護メモリ領域情報43を処理制限情報記憶部121に記憶する。処理制限情報記憶部121に記憶されるデータのデータ構成は、実施の形態1と同様である。
図7は、本発明の実施の形態2に係る情報処理装置における副演算処理部2の副CPU21の処理手順を示すフローチャートである。副演算処理部2の副CPU21は、プログラム記憶部221から実行対象となるプログラムを読出し(ステップS701)、読出したプログラムのハッシュ値を算出する(ステップS702)。
副CPU21は、算出したハッシュ値が、記憶部22に記憶してある実行対象となるプログラムのハッシュ値と一致するか否かを判断し(ステップS703)、副CPU21が一致しないと判断した場合(ステップS703:NO)、副CPU21は、実行対象となるプログラムに何らかの改竄が行われているものと判断し、共有メモリ31へ展開することなく、改竄が検出された旨を外部へ出力する(ステップS704)。具体的には、表示装置への警告メッセージの表示出力、印刷装置への警告メッセージの印字出力等である。
副CPU21が一致すると判断した場合(ステップS703:YES)、副CPU21は、共有メモリ31に実行対象となるプログラムを展開し(ステップS705)、展開したプログラムに含まれている保護メモリ領域情報を処理制限情報記憶部121に記憶する(ステップS706)。副CPU21は、共有メモリ31に記憶してあるメモリ(DMA)アクセス情報が更新されたか否かを判断する(ステップS707)。なお、メモリ(DMA)アクセス情報は、保護されるべきメモリ領域へのアクセス違反があった場合に記憶される情報であり、メモリへの読み書きの区別、読み書きするアドレス、及び違反時の処理に関する情報である。
副CPU21は、メモリ(DMA)アクセス情報が更新されるまで待ち状態となり(ステップS707:NO)、副CPU21が、メモリ(DMA)アクセス情報が更新されたと判断した場合(ステップS707:YES)、副CPU21は、メモリ(DMA)アクセス情報に記憶して有る保護メモリ情報に対応する処理を実行する(ステップS708)。
メモリ(DMA)アクセス情報の更新処理は主CPU11が実行する。図8は、本発明の実施の形態2に係る情報処理装置における主演算処理部1の主CPU11の処理手順を示すフローチャートである。主演算処理部1の主CPU11は、共有メモリ31に展開してある実行対象のプログラムから、最初の命令を抽出し(ステップS801)、抽出した命令を実行する(ステップS802)。
主CPU11は、共有メモリ31への読み書きが発生した場合、メモリ(DMA)アクセス情報を抽出し(ステップS803)、処理制限情報記憶部121に記憶してある保護メモリ情報と合致するか否かを判断する(ステップS804)。主CPU11が、合致すると判断した場合(ステップS804:YES)、主CPU11は、抽出した命令が不正な更新処理、例えば改竄を行う命令であると判断し、抽出した命令を実行することなく、処理制限情報記憶部121から抽出した保護メモリ情報に対応した処理を含めてメモリ(DMA)アクセス情報として記憶する(ステップS805)。
主CPU11が、合致しないと判断した場合(ステップS804:NO)、主CPU11は、該命令は不正な処理を実行しないものと判断し、実行対象のプログラムに含まれている全ての命令の実行が完了したか否かを判断する(ステップS806)。
主CPU11が、全ての命令の実行が完了していないと判断した場合(ステップS806:NO)、主CPU11は、次の命令を抽出して(ステップS807)、ステップ802へ戻り、上述した処理を繰り返す。主CPU11が、全ての命令の実行が完了したと判断した場合(ステップS806:YES)、処理を終了する。
なお、実施の形態1と同様に、共有メモリ31へのアドレス制御は、静的なアドレス制御であってもDMAであっても良い。DMAで制御する場合、主演算処理部1は、処理する共有メモリ31のアドレスを制御するアドレス制御機能(アドレス制御手段)を主CPU11に備えており、アドレス制御機能により主CPU11が指示するアドレス範囲に記憶してあるプログラムに対する処理が、処理制限情報記憶部121に記憶してある処理制限情報と合致するか否かに応じて、主CPU11がプログラムを実行するか否かを制御する。
また、実施の形態1と同様に、プログラムをプログラム記憶部221へ記憶する場合、副演算処理部2にて、プログラムを認証して改竄できない形に加工することが好ましい。これにより、認証後に改竄されないことを保証することができるからである。
プログラムの認証方法としては、ハッシュ、公開鍵による復号等があるが、特にこれらの方法に限定されるものではない。以下、記憶するプログラムがハッシュ値を算出した上で秘密鍵にて暗号化されており、副演算処理部2が公開鍵を記憶している場合を想定する。
副演算処理部2は、暗号化された状態のプログラムを公開鍵で復号する。復号したプログラムに対して、ハッシュを算出し、記憶してあるハッシュ値と比較する。ハッシュ値が異なる場合、改竄ありとしてプログラムを記憶することなく処理を終了する。
なお、プログラムサイズが大きく、処理が分割される場合には、復号処理及びハッシュ算出処理を繰り返し行う。この場合、ハッシュ値は、副演算処理部2内のRAM23に記憶しておき、次の処理に利用する。
復号されたプログラムデータは、副演算処理部2内に記憶することが望ましい。しかし、一時領域としてメモリを使用することも可能である。この場合、主演算処理部1からの一時領域へのアクセスは禁止し、副演算処理部2からはアクセス可能としておく。
プログラムを復号しハッシュ値が一致する場合には、副演算処理部2が記憶している鍵にて暗号化を行い、プログラム記憶部221へ記憶する。復号時と同様、処理を分割して行ってもよい。なお、分割処理の際、暗号化処理を復号処理及びハッシュ算出処理に続いて行っても、改竄の確認処理の完了後に行っても、いずれでも良い。
以上のように本実施の形態2によれば、プログラムを実行する主演算処理部1とは別個に設けてある副演算処理部2が、プログラムの改竄の有無を判断することにより、オペレーティングシステムの管理外でプログラムの改竄を確認することができる。また、例えばオペレーティングシステムを起動する前にオペレーティングシステムに対する改竄が行われたか否かを確認することができることから、オペレーティングシステムに対する改竄により不正アクセスを行うことを未然に防止することも可能となる。さらに、プログラムを実行する都度、処理制限情報に基づくプログラム実行禁止処理の存在の有無を確認することができ、一定間隔でメモリ監視を定期的に実行する必要がなく、メモリへのアクセス帯域を圧迫することなく、計算機資源を有効に活用することが可能となる。
なお、本実施の形態では、処理制限情報に記憶するアドレス範囲をプログラム40から読み出して記憶する方法について説明しているが、特にこれに限定されるものではなく、実行頻度の高いプログラムについては事前に記憶しておいても良い。
本発明の実施の形態1に係る情報処理装置の構成を示すブロック図である。 実行対象となるプログラムの構成の例示図である。 処理制限情報記憶部に記憶されるデータのデータ構成の一例を示す図である。 本発明の実施の形態1に係る情報処理装置における副演算処理部の副CPUの処理手順を示すフローチャートである。 本発明の実施の形態1に係る情報処理装置における主演算処理部の主CPUの処理手順を示すフローチャートである。 本発明の実施の形態2に係る情報処理装置の構成を示すブロック図である。 本発明の実施の形態2に係る情報処理装置における副演算処理部の副CPUの処理手順を示すフローチャートである。 本発明の実施の形態2に係る情報処理装置における主演算処理部の主CPUの処理手順を示すフローチャートである。
符号の説明
1 主演算処理部
2 副演算処理部
3 入力手段
4 出力手段
11 主CPU
12、22 記憶手段
13、23 RAM
21 副CPU
30 内部バス
31 共有メモリ
121、222 処理制限情報記憶部
221 プログラム記憶部

Claims (9)

  1. プログラムを実行することが可能な主演算処理部及び副演算処理部と、実行対象プログラムを展開するメモリとを備え、該メモリに展開してあるプログラムに対する処理の制限を示す処理制限情報を記憶手段に記憶する情報処理装置であって、
    前記副演算処理部は、
    実行対象となるプログラムに改竄が行われているか否かを判断する手段と、
    改竄が行われていないと判断した場合、実行対象となるプログラムを前記メモリに展開する手段と、
    前記メモリに展開したプログラムの実行前に、前記処理制限情報を参照し、前記メモリに展開してあるプログラムに対する前記主演算処理部による処理が、前記処理制限情報に記憶してある処理と合致するか否かを判断する手段と、
    該手段で合致すると判断した場合、前記主演算処理部の前記プログラムの実行を禁止する手段と
    を備えることを特徴とする情報処理装置。
  2. 前記主演算処理部は、メモリに対する読み書きを制御するアドレス制御手段を備えており、
    前記副演算処理部は、前記アドレス制御手段が指示するアドレス範囲に記憶してある情報に対する処理が、前記処理制限情報に記憶してある処理と合致するか否かを判断するようにしてあることを特徴とする請求項1記載の情報処理装置。
  3. 実行対象のプログラムを記憶又は更新する場合、該プログラムの改竄が行われていないと判断したときに、前記副演算処理部のみが取得可能な情報を付加して記憶又は更新する手段を備えることを特徴とする請求項1又は2記載の情報処理装置。
  4. プログラムを実行することが可能な主演算処理部及び副演算処理部と、実行対象プログラムを展開するメモリとを備え、該メモリに展開してあるプログラムに対する処理の制限を示す処理制限情報を記憶手段に記憶するコンピュータを用いる情報処理方法であって、
    前記副演算処理部は、
    実行対象となるプログラムに改竄が行われているか否かを判断し、
    改竄が行われていないと判断した場合、実行対象となるプログラムを前記メモリに展開し、
    前記メモリに展開したプログラムの実行前に、前記処理制限情報を参照し、前記メモリに展開してあるプログラムに対する前記主演算処理部による処理が、前記処理制限情報に記憶してある処理と合致するか否かを判断し、
    合致すると判断した場合、前記主演算処理部の前記プログラムの実行を禁止することを特徴とする情報処理方法。
  5. 前記主演算処理部は、メモリに対する読み書きを制御し、
    前記副演算処理部は、前記主演算処理部が指示するアドレス範囲に記憶してある情報に対する処理が、前記処理制限情報に記憶してある処理と合致するか否かを判断することを特徴とする請求項4記載の情報処理方法。
  6. 実行対象のプログラムを記憶又は更新する場合、該プログラムの改竄が行われていないと判断したときに、前記副演算処理部のみが取得可能な情報を付加して記憶又は更新することを特徴とする請求項4又は5記載の情報処理方法。
  7. プログラムを実行することが可能な主演算処理部及び副演算処理部と、実行対象プログラムを展開するメモリとを備え、該メモリに展開してあるプログラムに対する処理の制限を示す処理制限情報を記憶手段に記憶するコンピュータで実行することが可能なコンピュータプログラムであって、
    前記副演算処理部を、
    実行対象となるプログラムに改竄が行われているか否かを判断する手段、
    改竄が行われていないと判断した場合、実行対象となるプログラムを前記メモリに展開する手段、
    前記メモリに展開したプログラムの実行前に、前記処理制限情報を参照し、前記メモリに展開してあるプログラムに対する前記主演算処理部による処理が、前記処理制限情報に記憶してある処理と合致するか否かを判断する手段、及び
    該手段で合致すると判断した場合、前記主演算処理部の前記プログラムの実行を禁止する手段
    として機能させることを特徴とするコンピュータプログラム。
  8. 前記主演算処理部を、
    メモリに対する読み書きを制御するアドレス制御手段
    として機能させ、
    前記副演算処理部を、
    前記アドレス制御手段が指示するアドレス範囲に記憶してある情報に対する処理が、前記処理制限情報に記憶してある処理と合致するか否かを判断する手段
    として機能させることを特徴とする請求項7記載のコンピュータプログラム。
  9. 前記副演算処理部を、
    実行対象のプログラムを記憶又は更新する場合、該プログラムの改竄が行われていないと判断したときに、前記副演算処理部のみが取得可能な情報を付加して記憶又は更新する手段
    として機能させることを特徴とする請求項7又は8記載のコンピュータプログラム。
JP2005146992A 2005-05-19 2005-05-19 情報処理装置、情報処理方法及びコンピュータプログラム Expired - Fee Related JP4698285B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2005146992A JP4698285B2 (ja) 2005-05-19 2005-05-19 情報処理装置、情報処理方法及びコンピュータプログラム
US11/210,658 US8176278B2 (en) 2005-05-19 2005-08-25 Information processing apparatus, information processing method and record medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005146992A JP4698285B2 (ja) 2005-05-19 2005-05-19 情報処理装置、情報処理方法及びコンピュータプログラム

Publications (2)

Publication Number Publication Date
JP2006323675A true JP2006323675A (ja) 2006-11-30
JP4698285B2 JP4698285B2 (ja) 2011-06-08

Family

ID=37449640

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005146992A Expired - Fee Related JP4698285B2 (ja) 2005-05-19 2005-05-19 情報処理装置、情報処理方法及びコンピュータプログラム

Country Status (2)

Country Link
US (1) US8176278B2 (ja)
JP (1) JP4698285B2 (ja)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008242593A (ja) * 2007-03-26 2008-10-09 Nec Electronics Corp マルチプロセッサシステム及びマルチプロセッサシステムにおけるアクセス保護方法
WO2009013825A1 (ja) * 2007-07-25 2009-01-29 Panasonic Corporation 情報処理装置、及び改竄検証方法
JP2011150656A (ja) * 2010-01-25 2011-08-04 Toyota Infotechnology Center Co Ltd プログラム検査システム
JP2013164873A (ja) * 2013-05-27 2013-08-22 Renesas Electronics Corp マルチプロセッサシステム
JP2015060569A (ja) * 2013-09-20 2015-03-30 株式会社東芝 情報処理装置、およびプログラム
US9665720B2 (en) 2014-01-10 2017-05-30 Canon Kabushiki Kaisha Image forming apparatus that performs update of firmware, and control method therefor

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5079342B2 (ja) * 2007-01-22 2012-11-21 ルネサスエレクトロニクス株式会社 マルチプロセッサ装置
JP4903071B2 (ja) 2007-03-15 2012-03-21 株式会社リコー 情報処理装置、ソフトウェア更新方法及び画像処理装置
JP6017287B2 (ja) * 2012-12-06 2016-10-26 富士通株式会社 制御方法および情報処理装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004504648A (ja) * 1999-12-10 2004-02-12 マイクロソフト コーポレイション クライアント側のブートドメインおよびブート規則
JP2004129227A (ja) * 2002-07-30 2004-04-22 Fujitsu Ltd 情報再生装置、セキュアモジュールおよび情報再生方法
JP2004513412A (ja) * 2000-06-28 2004-04-30 マイクロソフト コーポレイション ハッシュによる結合
JP2007226277A (ja) * 2004-04-02 2007-09-06 Matsushita Electric Ind Co Ltd 仮想マシン改ざん検査方法、および仮想マシン改ざん検査装置

Family Cites Families (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02109153A (ja) * 1988-10-18 1990-04-20 Fujitsu Ltd プロセッサ間データ伝送方式
US5173903A (en) * 1990-09-14 1992-12-22 Bull Hn Information Systems Inc. Method for performing quality logic tests on data processing systems by sequentially loading test microinstruction programs and operating microinstruction programs into a single control store
US5493649A (en) * 1994-06-21 1996-02-20 Microsoft Corporation Detecting corruption in a computer program at execution time using a checksum
JP3663710B2 (ja) * 1996-01-17 2005-06-22 ヤマハ株式会社 プログラムの生成方法およびプロセッサの割込制御方法
US5944821A (en) * 1996-07-11 1999-08-31 Compaq Computer Corporation Secure software registration and integrity assessment in a computer system
US5850559A (en) * 1996-08-07 1998-12-15 Compaq Computer Corporation Method and apparatus for secure execution of software prior to a computer system being powered down or entering a low energy consumption mode
US6247131B1 (en) * 1997-03-14 2001-06-12 Fujitsu Limited Information management method and recording medium
JP3293760B2 (ja) 1997-05-27 2002-06-17 株式会社エヌイーシー情報システムズ 改ざん検知機能付きコンピュータシステム
EP1016960A4 (en) * 1998-05-14 2002-04-03 Sega Enterprises Kk INFORMATION PROCESSOR, INFORMATION PROCESSING METHOD, INFORMATION RECORDING MEDIUM, AND INFORMATION PROCESSING SYSTEM
JP3916806B2 (ja) * 1999-07-26 2007-05-23 富士通株式会社 リモートローディング実行方法、リモートローディング実行システム、情報処理装置、管理装置及びコンピュータ読み取り可能な記録媒体
JP4196240B2 (ja) * 1999-08-31 2008-12-17 ソニー株式会社 再生制限機能付き再生装置、再生制限方法及び再生制限プログラム
US6738892B1 (en) * 1999-10-20 2004-05-18 Transmeta Corporation Use of enable bits to control execution of selected instructions
DE19963208B4 (de) * 1999-12-28 2018-07-05 Robert Bosch Gmbh Verfahren zum Manipulationsnachweis einer programmierbaren Speichereinrichtung eines digitalen Steuergeräts
JP4522548B2 (ja) 2000-03-10 2010-08-11 富士通フロンテック株式会社 アクセス監視装置及びアクセス監視方法
JP3710671B2 (ja) * 2000-03-14 2005-10-26 シャープ株式会社 1チップマイクロコンピュータ及びそれを用いたicカード、並びに1チップマイクロコンピュータのアクセス制御方法
US6681346B2 (en) * 2000-05-11 2004-01-20 Goodrich Corporation Digital processing system including a DMA controller operating in the virtual address domain and a method for operating the same
JP4744674B2 (ja) * 2000-06-30 2011-08-10 富士通フロンテック株式会社 プログラムインストール方法、プログラムインストールシステム、プログラム実行装置及び記憶媒体
CA2420290C (en) * 2000-08-21 2009-04-21 Igt Method and apparatus for software authentication
WO2002057904A1 (fr) * 2001-01-19 2002-07-25 Fujitsu Limited Controleur dote d'un fonction de telechargement
US20030009687A1 (en) * 2001-07-05 2003-01-09 Ferchau Joerg U. Method and apparatus for validating integrity of software
JP2003022339A (ja) * 2001-07-09 2003-01-24 Matsushita Electric Ind Co Ltd コンテンツ管理方法、コンテンツ管理装置、コンテンツ再生装置及びコンテンツ記録装置
US6738887B2 (en) * 2001-07-17 2004-05-18 International Business Machines Corporation Method and system for concurrent updating of a microcontroller's program memory
CN100487626C (zh) * 2001-10-30 2009-05-13 国际商业机器公司 用于控制数字编码产品使用的计算机实现方法和系统
WO2004006075A1 (ja) * 2002-07-09 2004-01-15 Fujitsu Limited 開放型汎用耐攻撃cpu及びその応用システム
EP1795991A1 (en) * 2002-07-30 2007-06-13 Fujitsu Limited Method and apparatus for reproducing information using a security module
US7383168B2 (en) * 2003-01-06 2008-06-03 Fujitsu Limited Method and system for design verification and debugging of a complex computing system
WO2004079583A1 (ja) * 2003-03-05 2004-09-16 Fujitsu Limited データ転送制御装置およびdmaデータ転送制御方法
JP4501349B2 (ja) 2003-03-13 2010-07-14 ソニー株式会社 システムモジュール実行装置
US20050071668A1 (en) * 2003-09-30 2005-03-31 Yoon Jeonghee M. Method, apparatus and system for monitoring and verifying software during runtime
JP2005122474A (ja) * 2003-10-16 2005-05-12 Fujitsu Ltd 情報漏洩防止プログラムおよびその記録媒体並びに情報漏洩防止装置
JP4014212B2 (ja) * 2003-11-19 2007-11-28 富士通テン株式会社 電子制御装置
JP4307964B2 (ja) * 2003-11-26 2009-08-05 株式会社日立製作所 アクセス制限情報設定方法および装置
US7401234B2 (en) * 2004-03-01 2008-07-15 Freescale Semiconductor, Inc. Autonomous memory checker for runtime security assurance and method therefore
JP4533713B2 (ja) * 2004-09-30 2010-09-01 株式会社東芝 情報処理装置およびデータ転送制御方法
JP2006146308A (ja) * 2004-11-16 2006-06-08 Hitachi Ltd ストレージシステムおよびバックアップ管理方法
WO2006101549A2 (en) * 2004-12-03 2006-09-28 Whitecell Software, Inc. Secure system for allowing the execution of authorized computer program code
WO2006137073A2 (en) * 2005-06-22 2006-12-28 Discretix Technologies Ltd. System, device, and method of selectively allowing a host processor to access host-executable code

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004504648A (ja) * 1999-12-10 2004-02-12 マイクロソフト コーポレイション クライアント側のブートドメインおよびブート規則
JP2004513412A (ja) * 2000-06-28 2004-04-30 マイクロソフト コーポレイション ハッシュによる結合
JP2004129227A (ja) * 2002-07-30 2004-04-22 Fujitsu Ltd 情報再生装置、セキュアモジュールおよび情報再生方法
JP2007226277A (ja) * 2004-04-02 2007-09-06 Matsushita Electric Ind Co Ltd 仮想マシン改ざん検査方法、および仮想マシン改ざん検査装置

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008242593A (ja) * 2007-03-26 2008-10-09 Nec Electronics Corp マルチプロセッサシステム及びマルチプロセッサシステムにおけるアクセス保護方法
US8893142B2 (en) 2007-03-26 2014-11-18 Renesas Electronics Corporation Multiprocessor system for restricting an access request to a shared resource
WO2009013825A1 (ja) * 2007-07-25 2009-01-29 Panasonic Corporation 情報処理装置、及び改竄検証方法
JP2011150656A (ja) * 2010-01-25 2011-08-04 Toyota Infotechnology Center Co Ltd プログラム検査システム
JP2013164873A (ja) * 2013-05-27 2013-08-22 Renesas Electronics Corp マルチプロセッサシステム
JP2015060569A (ja) * 2013-09-20 2015-03-30 株式会社東芝 情報処理装置、およびプログラム
US9665720B2 (en) 2014-01-10 2017-05-30 Canon Kabushiki Kaisha Image forming apparatus that performs update of firmware, and control method therefor

Also Published As

Publication number Publication date
US20060265562A1 (en) 2006-11-23
US8176278B2 (en) 2012-05-08
JP4698285B2 (ja) 2011-06-08

Similar Documents

Publication Publication Date Title
JP4698285B2 (ja) 情報処理装置、情報処理方法及びコンピュータプログラム
US7392415B2 (en) Sleep protection
JP2007304954A (ja) メモリ保護機能を有するコンピュータシステム
US20070276969A1 (en) Method and device for controlling an access to peripherals
JP2007102791A (ja) 無許可のブートローダの実行を防止することによって安全性を高めた実行環境
JP6391439B2 (ja) 情報処理装置、サーバ装置、情報処理システム、制御方法及びコンピュータプログラム
JPH08272625A (ja) マルチプログラム実行制御装置及び方法
JP2008276778A (ja) キャッシュ共用処理間の情報漏洩削減
US11188321B2 (en) Processing device and software execution control method
CN112818327A (zh) 基于TrustZone的用户级代码和数据安全可信保护方法及装置
JP2005135265A (ja) 情報処理装置
WO2021117371A1 (ja) 情報処理装置、情報処理方法、および、プログラム
JP2005316599A (ja) 割込制御装置
JP2007072969A (ja) 動作履歴保護装置及び動作履歴保護プログラム
JP4627266B2 (ja) 未知のマルウェアによる情報漏洩防止システム
US11520893B2 (en) Integrated circuit and control method of integrated circuit
JP4847827B2 (ja) アクセス制御装置
JP2008191788A (ja) 情報処理装置
JP2011128659A (ja) Os起動可否判定装置、os起動可否判定システム、os起動可否判定方法およびos起動可否判定プログラム
JP4810846B2 (ja) プログラムデータの不正利用を阻止するプログラム
JP5920509B2 (ja) コントローラの制御プログラム、およびコントローラの制御方法
JP4903606B2 (ja) データ保護機能付き集積回路およびデータ保護機能付き集積回路用のデータ保護プログラム
JP5081280B2 (ja) 可搬記憶媒体
JP2012185547A (ja) 改ざん検出装置、監視システム、改ざん検出方法、およびプログラム
JP2007328541A (ja) 電子機器

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080225

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110223

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110301

R150 Certificate of patent or registration of utility model

Ref document number: 4698285

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees