[go: up one dir, main page]

JP2002351686A - データ処理方法及びデータ処理方法のプログラム - Google Patents

データ処理方法及びデータ処理方法のプログラム

Info

Publication number
JP2002351686A
JP2002351686A JP2001153373A JP2001153373A JP2002351686A JP 2002351686 A JP2002351686 A JP 2002351686A JP 2001153373 A JP2001153373 A JP 2001153373A JP 2001153373 A JP2001153373 A JP 2001153373A JP 2002351686 A JP2002351686 A JP 2002351686A
Authority
JP
Japan
Prior art keywords
macro
virus
data
data processing
processing method
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.)
Pending
Application number
JP2001153373A
Other languages
English (en)
Inventor
Toshinari Suematsu
俊成 末松
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.)
Sony Corp
Original Assignee
Sony 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 Sony Corp filed Critical Sony Corp
Priority to JP2001153373A priority Critical patent/JP2002351686A/ja
Publication of JP2002351686A publication Critical patent/JP2002351686A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】 本発明は、例えばパーソナルコンピュータの
各種アプリケーションプログラムに適用して、特にマク
ロウイルスに関して、従来に比して格段的にユーザーの
負担を軽減してウイルスへの感染を予防することができ
るようにする。 【解決手段】 本発明は、登録されたコマンドの有無に
より、又はマクロの安全性を登録し、この登録により、
又はマクロの保存場所により、さらにはマクロの暗号化
により、マクロの実行を中止する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、データ処理方法及
びデータ処理方法のプログラムに関し、例えばパーソナ
ルコンピュータの各種アプリケーションプログラムに適
用することができる。本発明は、登録された命令の有無
によりマクロの実行を中止することにより、又はマクロ
の安全性を登録し、この登録に基づいてマクロの実行を
中止することにより、又はマクロの保存場所に基づいて
マクロの実行を中止することにより、さらにはマクロの
暗号化に基づいて、マクロの実行を中止することによ
り、特にマクロウィルスに関して、従来に比して格段的
にユーザーの負担を軽減してウィルスへの感染を予防す
ることができるようにする。
【0002】
【従来の技術】従来、コンピュータウィルス(以下、単
にウィルスと呼ぶ)に対しては、ウィルス検査ソフトウ
エアを使用して検査する他に、メールソフトにおいてマ
クロの自動実行を禁止する方法、フロッピー(登録商
標)、電子メールに添付されたファイルの取扱いに注意
する等の方法によって感染を予防するようになされてい
る。
【0003】すなわちウィルスは、一種のプログラムで
あり、図8に示すように、形成言語により、マクロウィ
ルス、中間言語ウィルス、機械語ウィルスに分類するこ
とができる。ここでマクロウィルスとは、マクロ言語で
作成されたウィルスであり、マクロとは、ソフトウエア
(アプリケーション)などの操作手続きを自動化した
り、簡単なプログラムを作成するのに使用されるもの
で、表計算ソフトウエア、電子メールソフトウエアなど
に組みこまれて使用されるものである。これに対して中
間言語ウィルスとは、JAVA(登録商標)、Acti
veX(登録商標)等の中間言語で記述されたウィルス
である。
【0004】これに対して機械語ウィルスは、CPU用
の命令語で書かれたプログラムであり、一般的なソフト
ウエアに感染するものである。BASIC、各種のスク
リプト言語で作成されたウィルスにおいては、このよう
な分類分けが困難なものもあるが、ここではウィルスを
構成するプログラムが特定のソフトウエアの助けを借り
るものの場合、又は特定のソフトウエアの中でしか動作
しないものの場合、マクロウィルスとし、システム上で
単独で動作することが可能なものを機械語ウィルスと呼
ぶことにする。なおここでシステムとは、プログラムを
実行する機械を持った環境を指し、通常はプロセッサ、
メモリ、入出力装置、OSなどによって構成される。シ
ステムの例としてはコンピュータ、PDA、携帯電話な
どが挙げられる。
【0005】
【発明が解決しようとする課題】しかしながらこのよう
な従来の対策方法においては、ユーザに依存する部分が
大きく、ユーザの経験、知識、ウィルス対策に対する意
識の違い等によって対策の効果が大きく異なる。
【0006】すなわち例えば、ウィルス検査ソフトウエ
アを使用する場合に限っても、ウィルス検査ソフトウエ
アの種類とバージョン、ウィルス定義ファイルの更新を
定期的に行うことが必要であり、これらを怠った場合に
は感染の可能性が大きくなる。またローカルエリアネッ
トワークに接続されたシステムにおいては、誰か一人の
不注意で組織全体にウィルスが感染する場合もある。ま
たこの方法の場合、あくまでも既知のウィルスに対して
のみ有効なものであり、新種のウィルスに対しては効果
が限られる問題もある。
【0007】これらによりユーザーの負担を軽減してウ
ィルスへの感染を予防することができれば便利であると
考えられる。
【0008】本発明は以上の点を考慮してなされたもの
で、特にマクロウィルスに関して、従来に比して格段的
にユーザーの負担を軽減してウィルスへの感染を予防す
ることができるデータ処理方法及びデータ処理方法のプ
ログラムを提案しようとするものである。
【0009】
【課題を解決するための手段】かかる課題を解決するた
め請求項1の発明においては、データ処理方法に適用し
て、マクロより、登録された命令の有無を検出する危険
命令検出のステップと、この危険命令検出のステップに
よる検出結果に基づいて、マクロの実行を中止するマク
ロ中止のステップとを有するようにする。
【0010】また請求項4の発明においては、データ処
理方法に適用して、マクロの安全性を登録する登録のス
テップと、この登録のステップによる登録に基づいて、
マクロの実行を中止するマクロ中止のステップとを有す
るようにする。
【0011】また請求項7の発明においては、データ処
理方法に適用して、マクロの保存場所を判定する保存場
所判定のステップと、この保存場所判定のステップによ
る判定に基づいて、マクロの実行を中止するマクロ中止
のステップとを有するようにする。
【0012】また請求項10の発明においては、データ
処理方法に適用して、マクロの暗号化を判定する暗号化
判定のステップと、この暗号化判定のステップによる判
定に基づいて、マクロの実行を中止するマクロ中止のス
テップとを有するようにする。
【0013】また請求項13の発明においては、データ
処理方法のプログラムに適用して、マクロより、登録さ
れた命令の有無を検出する危険命令検出のステップと、
危険命令検出のステップによる検出結果に基づいて、マ
クロの実行を中止するマクロ中止のステップと有するよ
うにする。
【0014】また請求項14の発明においては、データ
処理方法のプログラムに適用して、マクロの安全性を登
録する登録のステップと、この登録のステップによる登
録に基づいて、マクロの実行を中止するマクロ中止のス
テップとを有するようにする。
【0015】また請求項15の発明においては、データ
処理方法のプログラムに適用して、マクロの保存場所を
判定する保存場所判定のステップと、この保存場所判定
のステップによる判定に基づいて、マクロの実行を中止
するマクロ中止のステップとを有するようにする。
【0016】また請求項16の発明においては、データ
処理方法のプログラムに適用して、マクロの暗号化を判
定する暗号化判定のステップと、この暗号化判定のステ
ップによる判定に基づいて、マクロの実行を中止するマ
クロ中止のステップとを有するようにする。
【0017】請求項1の構成によれば、データ処理方法
に適用して、マクロより、登録された命令の有無を検出
する危険命令検出のステップと、この危険命令検出のス
テップによる検出結果に基づいて、マクロの実行を中止
するマクロ中止のステップとを有することにより、悪意
を持った使用によりシステム、他のコンピュータに重大
な問題を引き起こす可能性のあるマクロ命令を登録し
て、ウィルスである可能性のあるマクロの実行を中止す
ることができ、これにより従来に比して格段的にユーザ
ーの負担を軽減してウィルスへの感染を予防することが
できる。
【0018】また請求項4の構成によれば、データ処理
方法に適用して、マクロの安全性を登録する登録のステ
ップと、この登録のステップによる登録に基づいて、マ
クロの実行を中止するマクロ中止のステップとを有する
ことにより、安全性に疑いのあるマクロについては、実
行を中止することができ、これにより従来に比して格段
的にユーザーの負担を軽減してウィルスへの感染を予防
することができる。
【0019】また請求項7の構成によれば、データ処理
方法に適用して、マクロの保存場所を判定する保存場所
判定のステップと、この保存場所判定のステップによる
判定に基づいて、マクロの実行を中止するマクロ中止の
ステップとを有することにより、疑わしいマクロについ
ては実行を中止することができ、これにより従来に比し
て格段的にユーザーの負担を軽減してウィルスへの感染
を予防することができる。
【0020】また請求項10の構成によれば、データ処
理方法に適用して、マクロの暗号化を判定する暗号化判
定のステップと、この暗号化判定のステップによる判定
に基づいて、マクロの実行を中止するマクロ中止のステ
ップとを有することにより、暗号化を手がかりにして疑
わしいマクロについては実行を中止することができ、こ
れにより従来に比して格段的にユーザーの負担を軽減し
てウィルスへの感染を予防することができる。
【0021】これらにより請求項13、請求項14、請
求項15又は請求項16の構成によれば、従来に比して
格段的にユーザーの負担を軽減してウィルスへの感染を
予防することができるデータ処理方法のプログラムを提
供することができる。
【0022】
【発明の実施の形態】以下、適宜図面を参照しながら本
発明の実施の形態を詳述する。
【0023】(1)第1の実施の形態 (1−1)第1の実施の形態の構成 図2は、本発明の第1の実施の形態に係る情報処理シス
テムを示す略線図である。この情報処理システム1は、
インターネット2を介してコンピュータ3、4、5等を
接続して構成される。これによりこの情報処理システム
1に接続されたコンピュータ3及び4においては、イン
ターネット2を介して又はフロッピーディスク6等を介
して、例えばコンピュータ5より電子メール、実行ファ
イル等によりウィルスが送信されてウィルスに感染する
恐れがある。
【0024】図3は、このコンピュータ3及び4を示す
ブロック図である。このコンピュータ3及び4は、MC
MP(Multipurpose Crypto MicroProcessor)10によ
り一連の演算処理を実行する。ここでMCMPは、内部
に暗号化処理機能を有するプロセッサであり、暗号化さ
れたソフトウエアを、指定された復号鍵によって復号し
ながら実行する機能を有するプロセッサである。これに
よりこのコンピュータ3及び4において、実行に供する
ソフトウエアは、メモリ上で復号されることなく、暗号
化されたままの状態でMCMP10の内部に取りこまれ
ると共に、内部で復号されて実行され、これによりコン
ピュータ3及び4においては、復号されたプログラムの
ハッキング等を防止するようになされている。
【0025】すなわちこのコンピュータ3及び4におい
ては、バスBUSにモデム11、外部メモリ12、外部
記憶装置13等が接続される。ここで外部記憶装置13
は、このコンピュータ3及び4で実行する各種アプリケ
ーションプログラム、オペレーティングシステムを記録
するハードディスク装置(HDD)、各種のデータ等を
記録する光ディスク装置、フロッピーディスク装置等に
より構成される。
【0026】このMCMP10において、中央処理ユニ
ット(CPU)14は、一般のプロセッサと同一に構成
され、秘密メモリ15を内部メモリとして使用して所定
の処理手順を実行することにより、アドレスAddre
ssを外部メモリ12等に発行し、これらにより所望の
データDataをロードし、またこれらに所望のデータ
Dataを記録する。中央処理ユニット14は、このよ
うにしてロードしたデータDataを処理して一連の処
理手順を実行し、また外部メモリ12等をアクセスす
る。
【0027】暗号処理回路16は、制御ユニット17の
制御により動作を切り換え、制御ユニット17の制御に
より動作を切り換えるキーマネージャー(KeyMn
g)18から出力される作業鍵1及び又は作業鍵2によ
り、このようにして外部に出力するデータDataを暗
号化する。またこのようにして暗号化して外部メモリ1
2等に記録したデータDataについて、これとは逆に
処理して元のデータを中央処理ユニット14に出力す
る。
【0028】演算回路19は、例えばイクスクルーシブ
オア回路により構成され、暗号処理回路16より外部に
出力するデータDataを擾乱データ生成回路(F(A
dr))20から出力される擾乱データによりスクラン
ブル処理する。またこれと逆に、暗号処理回路16を介
して外部メモリから入力されるデータDataのスクラ
ンブル処理を解除する。
【0029】オフセットレジスタ(Offs.Reg)
21は、中央処理ユニット14の制御により、中央処理
ユニット14より出力されるアドレスAddressを
所定のタイミングで取り込んで保持し、擾乱データ生成
回路20に出力する。擾乱データ生成回路20は、制御
ユニット17の制御により動作を切り換え、このオフセ
ットレジスタ21の出力データAddress Off
set、中央処理ユニット14から出力されるアドレス
Addressに応じて擾乱データを生成する。これに
よりMCMP10は、アドレスAddressの値に応
じてデータDataをスクランブル処理し、例えば同一
の命令語であっても異なる値によりメモリ12等に記録
して、メモリ12等に記録されたデータを解析困難とす
るようになされている。
【0030】かくするにつき制御ユニット17は、中央
処理ユニット14から出力されるアドレスAddres
sに基づいて擾乱データの生成を擾乱データ生成回路2
0に指示し、また作業鍵1、2による入出力データDa
taの処理を暗号処理回路16、キーマネージャー18
に指示する。
【0031】秘密鍵Kcpsは、例えばこのMCMP1
0に固有の暗号解除用鍵であり、例えばこのMCMP1
0の工場出荷時に記録される。復号回路23は、中央処
理ユニット14の制御により、中央処理ユニット14か
ら出力される許可コードPprgの暗号化を秘密鍵Kc
psにより解除して作業鍵1、2を出力する。
【0032】これによりMCMP10では、公開鍵方式
により暗号化された許可コードPprgをアプリケーシ
ョンプログラムの提供元より取得し、復号回路23の処
理により作業鍵1、2を復号できるようになされ、さら
にこのような提供元より提供されるアプリケーションプ
ログラムについて、このようにして復号した作業鍵1、
2により暗号化を解除できるようになされている。
【0033】これによりMCMP10では、外部のメモ
リ12には、暗号化された状態でデータを保持し、この
データの暗号化を逐次解除しながら処理することがで
き、直接、アプリケーションプログラム等を構成する命
令語、データを外部より把握できないようにしてセキュ
リティーを向上できるようになされている。これにより
コンピュータ3及び4においては、機械語ウィルス、マ
クロウィルスについて、感染を有効に回避できるように
なされている。
【0034】すなわち図4に示すように、従来のコンピ
ュータにおいては、何ら暗号化されていないプログラム
を処理することにより、通常のウィルスについても、こ
のプログラムと区別することなく実行してウィルスに感
染していたのに対し、このコンピュータ3及び4におい
ては、図5に示すように、暗号化されてなるプログラム
を正しい鍵により処理した場合にのみ実行できることに
より、鍵の一致しないウィルス、何ら暗号化されていな
いウィルスについては、ウィルス作成者の意図した動作
を防止することができ、これにより従来に比してウィル
スへの感染を格段的に防止することができる。
【0035】すなわちMCMP10は、暗号化の有無に
関わらず入力されたプログラムを決められた鍵で復号し
ながら実行することにより、同じ暗号化方式で、かつ同
じ鍵で暗号化されたプログラムしか正しく実行できな
い。これにより暗号化されないウィルスによるプログラ
ムが進入した場合、このウィルスにおいては、MCMP
10の内部で全く別のでたらめなデータに変換されてし
まうことになり、ウィルスへの感染が防止される。因み
に、現在流通しているウィルスは暗号化されないプログ
ラムであるため、この方法によって防ぐことが可能であ
る。
【0036】これにより例えば電子メール等に添付され
た実行形式ファイルのウィルスをユーザが誤って実行し
ようとした場合でも、MCMP10においてプログラム
として実行できないことにより安全を確保することがで
きる。また仮にウィルスを暗号化して流布させたとして
も、復号鍵が偶然一致しない限り実行できないことによ
り、鍵を適切に管理して安全を確保することができる。
【0037】すなわち図5に示すように、MCMP10
において、復号鍵Aでプログラムを復号して実行する場
合、復号鍵Bの暗号化ウィルス、暗号化されていないウ
ィルスについては、感染を防止することができる。これ
により機械語ウィルスについては、感染を防止すること
ができる。
【0038】これに対してマクロウィルスは、データに
感染することにより、コンピュータ3、4内のデータ全
てを暗号化することにより、マクロウィルスにつても、
感染を防止することができる。すなわち機械語ウィルス
対策の場合と同様に、コンピュータ3、4内の全てのデ
ータを一つの鍵で暗号化し、それを処理する際にはデー
タが実際に暗号化されているかどうかに拘わらず、常に
あらかじめ決められた鍵を使って復号しながら処理す
る。なおこの場合、データを暗号化する鍵は、プログラ
ムを暗号化する鍵と同一の鍵を使用しても良く、また個
々のデータごとに鍵を換えても良い。このようにして各
データを処理するようにすれば、外部から侵入したマク
ロウィルスを含むデータが暗号化されていない場合に
は、アプリケーションにとってこのようなデータは認識
できない無意味なデータとなり、ファイルを開くことも
できず、その結果、マクロウィルスへの感染も防止する
ことができる。
【0039】しかしながら例えば電子メール等の外部と
のデータ交換の必要性から、特定対象に暗号化鍵を通知
する場合も考えられ、この場合に、この鍵を知る相手が
ウィルスを含むファイルを暗号化して配付すると、ウィ
ルスに感染してしまうことになる。すなわちこの場合マ
クロウィルスを防止できなくなる。
【0040】またこのような外部とデータ交換する場合
には、何ら暗号化処理されていないデータも処理するこ
とが必要な場合もあり、この場合、MCMP10におい
て、暗号化の処理を中止することになる。このような場
合には、マクロウィルスへの感染を防止できなくなる。
【0041】またJavaアプレットを含むWeb文書
等においては、不特定多数がアクセスすることにより、
個々のユーザに合わせて暗号化することは困難であり、
またホームページの作成者が信頼できるとは限らないた
め、仮に暗号化されている場合でも安全と言いきれな
い。これにより中間言語ウィルスについても、感染を完
全に防止できなくなる。
【0042】このためこの実施の形態において、このパ
ーソナルコンピュータ3及び4に実装されるアプリケー
ションプログラムは、ユーザーによりマクロの実行が指
示されると、図1に示す処理手順を実行する。すなわち
MCMP10は、ユーザーによりマクロの実行が指示さ
れると、ステップSP1からステップSP2に移り、実
行対象のマクロの内容を検査する。さらに続いてステッ
プSP3に移り、ここで危険な命令が検出されたか否か
判断する。
【0043】すなわちマクロ命令の中には、ファイルを
削除したり、外部の装置等にデータを入出力できるよう
なものもある。またメールソフトのマクロにおいては、
アドレス帳に記録されたアドレスに対して、自動的にメ
ールを送信することもできる。これらの命令が、何れも
悪意を持った使い方の場合(すなわちマクロウィルスに
よる命令の場合)、システムや他のコンピュータに対し
て重大な問題を引き起こす可能性がある。
【0044】このためこのアプリケーションプログラム
においては、事前にこのようなマクロウィルスにより実
行して重大な事故を発生する恐れのある命令について
は、ソフトウエア開発者により、命令の実行を禁止でき
るスイッチ(以下、危険命令禁止スイッチと呼ぶ)が登
録されるようになされ、MCMP10は、実行対象のマ
クロにこのような危険命令禁止スイッチの命令が含まれ
ているか否か判断することにより、危険命令の有無を判
定する。
【0045】ここでこのような危険命令が含まれていな
い場合、MCMP10は、ステップSP4に移り、この
マクロを実行した後、ステップSP5に移ってこの処理
手順を終了する。これによりこの場合、マクロウィルス
が侵入したとしても、被害を最小限に食い止めることが
できるようになされている。
【0046】これに対して危険命令が検出された場合、
MCMP10は、ステップSP3からステップSP6に
移り、所定のメッセージを表示して危険命令が含まれて
いることをユーザーに通知した後、ステップSP5に移
ってこの処理手順を終了する。これによりマクロウィル
スが侵入した場合に、このマクロウィルスへの感染を防
止できるようになされている。
【0047】これに対して危険命令が含まれている場合
でも、十分に信頼できる第3者より送られたマクロの場
合であって、ユーザーにより確実にマクロウィルスでな
いと判断できる場合もある。また一旦この処理手順の実
行により、危険命令が含まれていると判断されたマクロ
であっても、ウィルス検査ソフトにより確認が得られる
場合も考えられる。
【0048】このためMCMP10は、危険命令禁止ス
イッチを一時的に解除するボタンを表示するようになさ
れ、このボタンのユーザーによる操作により危険命令禁
止スイッチを一時的にしてこの処理手順を実行する。な
おユーザが危険命令禁止スイッチを常時オフ状態に設定
すると、ウィルスに対する保護機能が実質的に機能しな
くなることにより、この実施の形態では画面上の分かり
やすい位置にこのボタンが表示され、クリック等の簡単
な操作で設定を切り換えることができるようになされて
いる。また危険命令禁止スイッチをオフにした状態は、
ウィルスから守れない危険な状態であることを示すため
に、ボタンの色、文字を目立つように表示し、また実行
を開始する場合には、警告のダイアログを出すようにな
されている。また新たなデータを組み込んだ場合、初期
状態では危険命令禁止スイッチをオンに設定し、実行前
に必ず危険命令禁止スイッチを解除しなければならない
ようになされている。
【0049】この機能により、この実施の形態では、マ
クロウィルスを含むデータを誤って開いたとしても、マ
クロウィルスが行おうとする危険な処理の実行を禁止す
るようになされ、その分、被害を最小限に食い止めるこ
とができるようになされている。
【0050】さらにこのコンピュータ3及び4におい
て、中間言語プログラムは、中間言語を実行する仮想マ
シン内のみアクセスできるように、すなわちこの仮想マ
シンの外側であるユーザのディスク、メモリ、ネットワ
ークなどの情報には一切アクセスできないように設定さ
れる。またネットワーク2を介して外部より送られる中
間言語については、ユーザーの設定により、実行を禁止
できるようになされている。またディジタル署名等によ
り各URL(Uniform Resource Locator)の信頼性を判
定し、信頼性を有するURLについてのみ、又はユーザ
ーが指定したURLに限り、中間言語の配信を許可する
ようになされている。
【0051】これらによりパーソナルコンピュータ3及
び4については、中間言語ウィルスについて、感染を予
防して被害を防止するようになされている。
【0052】(1−2)第1の実施の形態の動作 以上の構成において、コンピュータ3及び4においては
(図3)、外部記憶装置13、外部メモリ12等の記録
がMCMP10に順次ロードされて暗号化が解除されな
がら、この暗号化が解除されてなるデータの処理により
一連のプログラムが実行される。
【0053】これによりこのコンピュータ3及び4にお
いては、同じ暗号化方式でかつ同じ鍵で暗号化されたプ
ログラムしか正しく実行することが困難で、これにより
暗号化されないウィルスによるプログラムが進入した場
合、さらには異なる鍵で暗号化されたウィルスによるプ
ログラムが進入した場合、このウィルスにおいては、M
CMP10の内部で全く別のでたらめなデータに変換さ
れてウィルスへの感染が防止される。これにより例えば
電子メール等に添付された実行形式ファイルのウィルス
をユーザが誤って実行しようとした場合でも、安全を確
保することができ、これにより機械語ウィルスについて
は、感染を防止することができる。
【0054】これに対してデータに感染するマクロウィ
ルスについては、機械語ウィルス対策の場合と同様に、
常にあらかじめ決められた鍵を使って復号されながら処
理され、これにより外部から侵入したマクロウィルスを
含むデータが暗号化されていない場合には、アプリケー
ションにとってこのようなデータは認識できない無意味
なデータとなり、マクロウィルスへの感染を防止するこ
とができる。
【0055】また例えば電子メール等の外部とのデータ
交換の必要性から、特定対象に暗号化鍵を通知する場合
も考えられ、この場合に、この鍵を知る相手がウィルス
を含むファイルを暗号化して配付すると、単にMCMP
10による処理によっては、ウィルスに感染してしまう
ことになる。また何ら暗号化処理されていないデータを
処理する場合にも、マクロウィルスへの感染を防止でき
なくなる。
【0056】このためコンピュータ3及び4では、悪意
を持った使用によりシステム、他のコンピュータに重大
な問題を引き起こす可能性のあるマクロ命令について
は、事前に危険命令禁止スイッチが登録され、ユーザー
によるマクロの実行指示により、実行対象のマクロにこ
のような危険命令禁止スイッチの命令が含まれているか
否か判断され、危険な命令が含まれていない場合に、マ
クロが実行される。また危険な命令が含まれている場合
には、マクロの実行を中止し、ユーザーによるウィルス
検査ソフト等による確認等により危険命令禁止スイッチ
が一時的にオフ状態に設定された場合に限り、実行され
る。
【0057】これによりこの実施の形態では、仮にマク
ロウィルスに感染した場合でも、影響を最小限度に留め
るようになされている。
【0058】これに対して中間言語ウィルスについて
は、中間言語を実行する仮想マシン内のみアクセスでき
るように設定され、またネットワーク2を介して外部よ
り送られる中間言語については、ユーザーの設定によ
り、実行を禁止できるようになされ、さらにディジタル
署名等により各URLの信頼性を判定し、信頼性を有す
るURLについてのみ、又はユーザーが指定したURL
に限り、中間言語の配信を許可するようになされ、これ
らによりウィルスの感染を防止できるようになされてい
る。
【0059】このようにしてマクロウィルス、中間言語
ウィルスに対して対策を施しても、万一ソフトウエア自
身がウィルス(通常は機械語で作成された機械語ウィル
ス)に感染し、これらのマクロウィルス対策の機能を無
効にされてしまうようなことがあると、このような対策
を有効に実施することが困難になる。
【0060】この場合に、ソフトウエアに電子署名を付
けておき、実行前や実行中などにそれを確認することで
改ざん(すなわちウィルスの感染)を検出することも考
えられる。しかしながら電子署名は、基本的にソフトウ
エアのファイルに対して付けられるものであるため、実
行中にコンピュータのメモリ内でウィルスに感染し、異
常な動作を行うような場合には、これを防止することが
困難になる。因みに、元のファイルにウィルスが感染し
た場合は、電子署名との整合が崩れることにより、ウィ
ルスへの感染を検出することができる。
【0061】しかしながらこの実施の形態において、コ
ンピュータ3及び4は、MCMP10により暗号化され
たソフトウエアを直接実行して、機械語ウィルスへの感
染を防止できることにより、このような機械語ウィルス
によりマクロウィルス対策、中間言語対策の機能を無効
にされてしまうような情況を有効に回避することがで
き、これによってもウィルスによる感染を有効に回避す
ることができる。
【0062】(1−3)第1の実施の形態の効果 以上の構成によれば、悪意を持った使用によりシステ
ム、他のコンピュータに重大な問題を引き起こす可能性
のあるマクロ命令を登録し、この登録された命令が含ま
れている場合に、マクロの実行を中止することにより、
従来に比して格段的にユーザーの負担を軽減してウィル
スへの感染を予防することができる。
【0063】またこのとき暗号化を解除しながら順次プ
ログラムを処理することにより、このようなマクロウィ
ルスに対する設定を無効にするような機械言語によるウ
ィルスの感染を防止することができ、これによっても格
段的にユーザーの負担を軽減してウィルスへの感染を予
防することができる。
【0064】(2)第2の実施の形態 この実施の形態においては、第1の実施の形態について
上述した事前の確認により他のコンピュータに重大な問
題を引き起こす可能性のあるマクロ命令が含まれている
か否かの確認に代えて、マクロ命令を逐次実行しなが
ら、各命令毎に、このような危険な命令か否か判断し、
危険な命令が検出された場合には、処理を中止する。な
おこの実施の形態では、このようなマクロの処理が異な
る点を除いて、第1の実施の形態と同様に構成される。
【0065】すなわちこの実施の形態において、MCM
Pは、図6に示すように、ユーザーによりマクロの実行
が指示されると、ステップSP11からステップSP1
0に移り、外部記憶装置、外部メモリ等よりマクロのス
クリプトを1行分ロードし、続くステップSP13にお
いて、このロードした内容が危険命令か否か判断する。
ここで肯定結果が得られると、MCMPは、ステップS
P14に移り、ユーザーに対してメッセージを表示した
後、ステップSP15に移ってこの処理手順を終了す
る。これによりこの実施の形態においては、ユーザーの
指示によりウィルス検査ソフトによりマクロを検査する
等の処理を実行することになる。
【0066】これに対してステップSP13で否定結果
が得られると、MCMPは、ステップSP16に移る。
ここでMCMPは、ロードしたスクリプトを実行した
後、ステップSP17に移り、マクロの処理を完了した
か否か判断する。ここで肯定結果が得られると、MCM
Pは、ステップSP15に移り、この処理手順を終了す
るのに対し、否定結果が得られると、ステップSP10
に移って次のスクリプトを1行分ロードする。
【0067】この実施の形態の構成によれば、マクロ命
令を逐次実行しながら、各命令毎に、危険な命令か否か
判断するようにしても、第1の実施の形態と同様の効果
を得ることができる。
【0068】(3)第3の実施の形態 この実施の形態においては、安全なマクロを登録するよ
うにし、この登録の有無によりマクロの処理を中止す
る。なおこの実施の形態においても、このようなマクロ
の処理が異なる点を除いて、第1の実施の形態と同様に
構成される。
【0069】すなわちこの実施の形態において、ウィル
ス検査ソフトは、ウィルス検査して安全であることが確
認されたデータについては、対応するアプリケーション
プログラムにより認識可能に登録するようになされてい
る。またこのパーソナルコンピュータに保持されたアプ
リケーションプログラムにより作成されたマクロについ
ても(すなわちユーザー自身が作成したマクロであ
る)、このアプリケーションプログラムにより認識可能
に登録されるようになされている。なおこのような登録
においては、具体的に、ウィルス検査の済んだファイル
に対して、ウィルス検査ソフトウエアによる電子署名を
付す場合、ユーザの作成したデータに対してはユーザ自
身の電子著名を付ける場合等が考えられる。またこのよ
うな電子署名は、データファイルに埋めこむ場合と、デ
ータとは別のファイルに記録する場合とが考えられ、何
れの方法を用いるかは、システムヘの適合性、目的、用
途等に応じて適宜設定することができる。
【0070】このような登録によりMCMPは、このよ
うなアプリケーションプログラム上において、マクロの
実行がユーザーにより指示された場合、図7に示す処理
手順の実行によりマクロを実行する。
【0071】すなわちMCMPは、ユーザーによりマク
ロの実行が指示されると、ステップSP21からステッ
プSP22に移り、ユーザーにより実行が指示されたマ
クロが登録されているか否か判断する。ここで否定結果
が得られると、MCMPは、ステップSP22からステ
ップSP23に移り、ユーザーにメッセージを通知した
後、ステップSP24に移ってこの処理手順を終了す
る。
【0072】これに対してステップSP22で肯定結果
が得られると、ステップSP22からステップSP25
に移り、マクロを実行した後、ステップSP24に移っ
てこの処理手順を終了する。
【0073】この実施の形態によれば、安全なマクロを
登録するようにし、この登録の有無によりマクロの処理
を中止することにより、第1の実施の形態と同様の効果
を得ることができる。
【0074】またこの登録を電子署名により実行するこ
とにより、仮にウィルスが検出された場合に、そのデー
タの署名者からウィルスの発生源を容易に特定すること
ができる。
【0075】(4)第4の実施の形態 この実施の形態においては、第3の実施の形態について
上述した電子署名による登録に代えて、安全なデータに
ついては、ファイル名、サイズ、日付、データ内容のチ
ェックコード等を登録してデータベースを構築する。ま
たこのようにデータベースの登録によりマクロを実行す
るようにする。ここでデータ内容のチェックコードは、
登録した時点からデータの内容が書き換えられていない
ことを確認するためのもので、バイナリ単位でのチェッ
クサム、CRC、ハッシュ関数、電子署名等を利用する
ことができる。
【0076】これによりこの実施の形態において、MC
MPは、このデータベースへの登録の有無によりマクロ
の処理を実行する。またこのときこれらファイル名、サ
イズ、日付、データ内容のチェックコード等により、デ
ータが書き換えられていないことを確認し、書き換えら
れている場合には、処理を中止する。
【0077】すなわちファイル名、サイズ、日付情報に
よりデータが書き換えられたか否か判断することも可能
ではあるが、この方法の場合、これらファイル名、サイ
ズ、日付等が併せて書き換えられる恐れもある。しかし
ながらこの実施の形態のように、データ内容のチェック
コードを設定し、これのチェックコードを併せて使用し
て書き換えを検出するようにすれば、このようなデータ
ベースへの攻撃に対しても、有効に防御することができ
る。
【0078】第4の実施の形態によれば、データベース
への登録の有無によりマクロの処理を中止するようにし
ても、第1の実施の形態と同様の効果を得ることができ
る。
【0079】またこのときこのデータベースにファイル
名、サイズ、日付、データ内容のチェックコードを登録
し、これらによりデータの書き換えを検出することによ
り、このようなデータベースへの攻撃に対しても、有効
に防御することができる。
【0080】(5)第5の実施の形態 この実施の形態においては、マクロの保存場所に応じて
マクロの実行を中止する。すなわちウィルスは、一般
に、フロッピーディスク等のリムーバブルメディア、電
子メールの添付ファイル等により外部から侵入する。こ
のためウィルスの侵入経路となる場所に保存されたファ
イルについて、マクロの実行を禁止し、ウィルス検査し
た場合に限り実行する。
【0081】なおこのように実行を制限する保存場所の
ファイルとしては、フロッピーディスク、CD−ROM
/R/RW、DVD−ROM/R/RW、MO、Zip
等のリムーバブルメディア上のファイル、電子メールの
添付ファイル(添付ファイルを開いたときに作成される
一時ファイルも含む)、ネットワーク上のファイル(特
にインターネット上のファイル)、ダウンロードファイ
ルの保管場所に保存されているファイル等が該当する。
【0082】MCMPは、マクロの実行がユーザーによ
り指示されると、このマクロのパスを判定し、事前に設
定された上述の保存場所のファイルの場合、ウィルス検
査した場合に限りマクロの処理を実行する。これに対し
てこのような保存場所以外に保存されたマクロの場合、
マクロを実行する。
【0083】このように保存場所に応じてマクロの処理
を中止するようにしても、第1の実施の形態と同様の効
果を得ることができる。
【0084】(6)第6の実施の形態 この実施の形態においては、暗号化の有無によりマクロ
の処理を実行する。すなわち通常、データを暗号化する
のは、秘密裏にデータを交換する場合であり、信頼でき
る当事者同士がデータ交換する場合と考えられる。この
ような当事者間のデータ交換おいては、ウィルスを含ま
ない安全なものであると考えられる。
【0085】これによりこの実施の形態において、MC
MPは、処理対象のファイルが暗号化されている場合に
は、即座にマクロの処理を実行する。これに対して処理
対象のファイルが暗号化されていない場合には、ウィル
ス検査した場合に限りマクロの処理を実行する。
【0086】この第6の実施の形態のように、暗号化の
有無によりマクロの処理を実行するようにしても、第1
の実施の形態と同様の効果を得ることができる。
【0087】(7)第7の実施の形態 この実施の形態においては、暗号化の方式、鍵の値によ
りマクロの処理を実行する。すなわち暗号化されたもの
が全て安全とは限らない場合もある。しかしながらこの
ような場合でも、暗号化の方式、鍵の値により、信頼性
を判断することができる。これによりこの実施の形態で
は、暗号化の方式、鍵の値が事前に登録されたものか否
か判断し、信頼性に欠ける場合には、ウィルス検査した
場合に限りマクロの処理を実行する。
【0088】この第7の実施の形態のように、暗号化の
方式、鍵の値によりマクロの処理を実行するようにして
も、第1の実施の形態と同様の効果を得ることができ
る。
【0089】(8)他の実施の形態 なお上述の実施の形態においては、各マクロを実行する
アプリケーションプログラムにより各処理を実行する場
合について述べたが、本発明はこれに限らず、オペレー
ティングシステムにこれらの機能を担わせるようにして
もよい。
【0090】また上述の実施の形態においては、それぞ
れ命令、登録等によりマクロの実行を制限する場合につ
いて述べたが、本発明はこれに限らず、これらを組み合
わせてマクロの実行を制限するようにしてもよく、さら
にはこれらと他の条件との組み合わせによりマクロの実
行を制限するようにしてもよい。
【0091】さらに上述の実施の形態においては、MC
MPによる演算処理部により一連の処理を実行する場合
について述べたが、本発明はこれに限らず、通常の中央
処理ユニットにより一連の処理を実行する場合にも広く
適用することができる。
【0092】
【発明の効果】上述のように本発明によれば、登録され
た命令の有無によりマクロの実行を中止することによ
り、又はマクロの安全性を登録し、この登録に基づいて
マクロの実行を中止することにより、又はマクロの保存
場所に基づいてマクロの実行を中止することにより、さ
らにはマクロの暗号化に基づいて、マクロの実行を中止
することにより、特にマクロウィルスに関して、従来に
比して格段的にユーザーの負担を軽減してウィルスへの
感染を予防することができる。
【図面の簡単な説明】
【図1】本発明の第1の実施の形態に係るコンピュータ
のMCMPの処理手順を示すフローチャートである。
【図2】図1のコンピュータによるシステムを示す略線
図である。
【図3】図1のコンピュータを示すブロック図である。
【図4】通常のコンピュータにおけるウィルスの感染の
説明に供する図である。
【図5】図1のコンピュータにおけるウィルスの説明に
供する図である。
【図6】本発明の第2の実施の形態に係るコンピュータ
のMCMPの処理手順を示すフローチャートである。
【図7】本発明の第3の実施の形態に係るコンピュータ
のMCMPの処理手順を示すフローチャートである。
【図8】ウィルスの種別を示す図表である。
【符号の説明】
1……情報処理システム、2……インターネット、3、
4、5……コンピュータ、10……MCMP、12……
外部メモリ、13……外部記憶装置

Claims (16)

    【特許請求の範囲】
  1. 【請求項1】マクロより、登録された命令の有無を検出
    する危険命令検出のステップと、 前記危険命令検出のステップによる検出結果に基づい
    て、前記マクロの実行を中止するマクロ中止のステップ
    とを有することを特徴とするデータ処理方法。
  2. 【請求項2】前記危険命令検出のステップと、前記マク
    ロ中止のステップとが、前記マクロを実行するアプリケ
    ーションプログラムにより実行されることを特徴とする
    請求項1に記載のデータ処理方法。
  3. 【請求項3】前記マクロの実行に供する演算処理部が、 暗号化を解除しながら順次プログラムを処理するプロセ
    ッサであることを特徴とする請求項1に記載のデータ処
    理方法。
  4. 【請求項4】マクロの安全性を登録する登録のステップ
    と、 前記登録のステップによる登録に基づいて、前記マクロ
    の実行を中止するマクロ中止のステップとを有すること
    を特徴とするデータ処理方法。
  5. 【請求項5】前記登録のステップが、ウィルスを検査す
    るソフトにより実行され、 前記マクロ中止のステップが、前記マクロを実行するア
    プリケーションプログラムにより実行されることを特徴
    とする請求項4に記載のデータ処理方法。
  6. 【請求項6】前記マクロの実行に供する演算処理部が、 暗号化を解除しながら順次プログラムを処理するプロセ
    ッサであることを特徴とする請求項4に記載のデータ処
    理方法。
  7. 【請求項7】マクロの保存場所を判定する保存場所判定
    のステップと、 前記保存場所判定のステップによる判定に基づいて、前
    記マクロの実行を中止するマクロ中止のステップとを有
    することを特徴とするデータ処理方法。
  8. 【請求項8】前記保存場所判定のステップ、前記マクロ
    中止のステップが、前記マクロを実行するアプリケーシ
    ョンプログラムにより実行されることを特徴とする請求
    項7に記載のデータ処理方法。
  9. 【請求項9】前記マクロの実行に供する演算処理部が、 暗号化を解除しながら順次プログラムを処理するプロセ
    ッサであることを特徴とする請求項7に記載のデータ処
    理方法。
  10. 【請求項10】マクロの暗号化を判定する暗号化判定の
    ステップと、 前記暗号化判定のステップによる判定に基づいて、前記
    マクロの実行を中止するマクロ中止のステップとを有す
    ることを特徴とするデータ処理方法。
  11. 【請求項11】前記暗号化判定のステップ、前記マクロ
    中止のステップが、前記マクロを実行するアプリケーシ
    ョンプログラムにより実行されることを特徴とする請求
    項10に記載のデータ処理方法。
  12. 【請求項12】前記マクロの実行に供する演算処理部
    が、 暗号化を解除しながら順次プログラムを処理するプロセ
    ッサであることを特徴とする請求項10に記載のデータ
    処理方法。
  13. 【請求項13】マクロより、登録された命令の有無を検
    出する危険命令検出のステップと、 前記危険命令検出のステップによる検出結果に基づい
    て、前記マクロの実行を中止するマクロ中止のステップ
    とを有することを特徴とするデータ処理方法のプログラ
    ム。
  14. 【請求項14】マクロの安全性を登録する登録のステッ
    プによる登録に基づいて、前記マクロの実行を中止する
    マクロ中止のステップとを有することを特徴とするデー
    タ処理方法のプログラム。
  15. 【請求項15】マクロの保存場所を判定する保存場所判
    定のステップと、 前記保存場所判定のステップによる判定に基づいて、前
    記マクロの実行を中止するマクロ中止のステップとを有
    することを特徴とするデータ処理方法のプログラム。
  16. 【請求項16】マクロの暗号化を判定する暗号化判定の
    ステップと、 前記暗号化判定のステップによる判定に基づいて、前記
    マクロの実行を中止するマクロ中止のステップとを有す
    ることを特徴とするデータ処理方法のプログラム。
JP2001153373A 2001-05-23 2001-05-23 データ処理方法及びデータ処理方法のプログラム Pending JP2002351686A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001153373A JP2002351686A (ja) 2001-05-23 2001-05-23 データ処理方法及びデータ処理方法のプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001153373A JP2002351686A (ja) 2001-05-23 2001-05-23 データ処理方法及びデータ処理方法のプログラム

Publications (1)

Publication Number Publication Date
JP2002351686A true JP2002351686A (ja) 2002-12-06

Family

ID=18997899

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001153373A Pending JP2002351686A (ja) 2001-05-23 2001-05-23 データ処理方法及びデータ処理方法のプログラム

Country Status (1)

Country Link
JP (1) JP2002351686A (ja)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005267605A (ja) * 2004-02-16 2005-09-29 Hitachi Ltd Web表示方法、装置及びプログラム
JP2006524396A (ja) * 2003-04-17 2006-10-26 ネットワークス アソシエイツ テクノロジー インコーポレイテッド 移動通信フレームワークに使用するためのプラットホーム独立のスキャニングサブシステム
JP2006526222A (ja) * 2003-04-17 2006-11-16 株式会社エヌ・ティ・ティ・ドコモ 移動通信フレームワークにおいてコンテンツ/セキュリティ分析機能にアクセスするためのapiシステム、方法、及びコンピュータプログラム製品
WO2007086469A1 (ja) * 2006-01-30 2007-08-02 Naoto Takano 情報通信システム
JP2007524902A (ja) * 2003-04-17 2007-08-30 株式会社エヌ・ティ・ティ・ドコモ 移動通信装置を使用してコンテンツ/コンテクストの高感度スキャニングを行うシステム、方法及びコンピュータプログラム製品
JP2008077157A (ja) * 2006-09-19 2008-04-03 Fujitsu Ltd 情報保護装置、情報保護方法、および情報保護プログラム
WO2018159010A1 (ja) * 2017-03-03 2018-09-07 日本電信電話株式会社 選択装置、選択方法及び選択プログラム

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006524396A (ja) * 2003-04-17 2006-10-26 ネットワークス アソシエイツ テクノロジー インコーポレイテッド 移動通信フレームワークに使用するためのプラットホーム独立のスキャニングサブシステム
JP2006526222A (ja) * 2003-04-17 2006-11-16 株式会社エヌ・ティ・ティ・ドコモ 移動通信フレームワークにおいてコンテンツ/セキュリティ分析機能にアクセスするためのapiシステム、方法、及びコンピュータプログラム製品
JP2007524902A (ja) * 2003-04-17 2007-08-30 株式会社エヌ・ティ・ティ・ドコモ 移動通信装置を使用してコンテンツ/コンテクストの高感度スキャニングを行うシステム、方法及びコンピュータプログラム製品
JP2005267605A (ja) * 2004-02-16 2005-09-29 Hitachi Ltd Web表示方法、装置及びプログラム
WO2007086469A1 (ja) * 2006-01-30 2007-08-02 Naoto Takano 情報通信システム
JP2008077157A (ja) * 2006-09-19 2008-04-03 Fujitsu Ltd 情報保護装置、情報保護方法、および情報保護プログラム
WO2018159010A1 (ja) * 2017-03-03 2018-09-07 日本電信電話株式会社 選択装置、選択方法及び選択プログラム
JPWO2018159010A1 (ja) * 2017-03-03 2019-11-07 日本電信電話株式会社 選択装置、選択方法及び選択プログラム
US11256803B2 (en) 2017-03-03 2022-02-22 Nippon Telegraph And Telephone Corporation Malware detection: selection apparatus, selection method, and selection program

Similar Documents

Publication Publication Date Title
JP5613232B2 (ja) コンピュータ・システム中の安全オブジェクトに対するサポート
JP5285075B2 (ja) セキュア・カーネル設計による安全基準の差別化
US8555089B2 (en) Program execution apparatus, control method, control program, and integrated circuit
AU2007211962B2 (en) Information processing system, information processing method, information processing program, computer readable medium and computer data signal
JP4498735B2 (ja) オペレーティングシステムおよびカスタマイズされた制御プログラムとインタフェースする安全なマシンプラットフォーム
JP4774049B2 (ja) セキュアなプラットフォーム間およびプラットフォーム内通信のための方法およびプログラム
TWI567580B (zh) 用於防止惡意軟體執行的方法與系統
US20050060568A1 (en) Controlling access to data
US8195953B1 (en) Computer program with built-in malware protection
CN110659458A (zh) 支持软件代码数据保密可信执行的中央处理器设计方法
JP2004038939A (ja) 対称鍵暗号化に基づくデータの保存および検索
CN103856481B (zh) 使用在线认证和经加密代码执行的代码保护方法和系统
Suciu et al. Horizontal privilege escalation in trusted applications
US12135657B2 (en) Architecture, system and methods thereof for secure computing using hardware security classifications
US9256731B2 (en) System, information processing apparatus, secure module, and verification method
JP2007525752A (ja) コンピュータ保安装置、コンピュータ保安方法、及び記録媒体
EP2492833A1 (en) Method and apparatus for detecting malicious software
Zaidenberg Hardware rooted security in industry 4.0 systems
Tychalas et al. SGXCrypter: IP protection for portable executables using Intel's SGX technology
JP2002351686A (ja) データ処理方法及びデータ処理方法のプログラム
Mogage et al. Supply chain malware targets sgx: Take care of what you sign
Chen et al. A Malicious Code Immune Model Based on Program Encryption
CN119862551B (zh) 一种防破解方法、电子设备、存储介质和程序产品
Yao et al. Firmware Secure Coding Practice
KR101197182B1 (ko) 컴퓨터 시스템에서의 해킹 방지 장치 및 방법