JPH09128232A - プログラム正常性確認装置 - Google Patents

プログラム正常性確認装置

Info

Publication number
JPH09128232A
JPH09128232A JP7284706A JP28470695A JPH09128232A JP H09128232 A JPH09128232 A JP H09128232A JP 7284706 A JP7284706 A JP 7284706A JP 28470695 A JP28470695 A JP 28470695A JP H09128232 A JPH09128232 A JP H09128232A
Authority
JP
Japan
Prior art keywords
program
length
virus
file
time
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.)
Withdrawn
Application number
JP7284706A
Other languages
English (en)
Inventor
Masao Kobori
政雄 小堀
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 JP7284706A priority Critical patent/JPH09128232A/ja
Publication of JPH09128232A publication Critical patent/JPH09128232A/ja
Withdrawn legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)
  • Storage Device Security (AREA)

Abstract

(57)【要約】 【課題】プログラムがウイルスに汚染されているか否か
を簡単に判断可能にすること。 【解決手段】プログラムの長さを保持するプログラム長
管理手段3と、プログラムのローディング時或いはプロ
グラムの転送時にそのプログラムの長さが前記プログラ
ム長管理手段3に記入された長さと一致するか否か比較
する比較手段5と、この比較手段における比較により長
さが一致したときプログラムが正常であると判断し、不
一致のときこのプログラムに異物が混入していると判断
する制御手段2を具備する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はプログラム正常性確
認装置に係り、特にプログラムがウイルスに汚染されて
いるか否かを簡単に判断可能にしたものである。
【0002】
【従来の技術】例えばパソコン(パーソナル・コンピュ
ータ)のプログラムがウイルスに汚染されていないこと
を確認するため、各種のウイルスチェックプログラムが
有り、システムの立ち上げ時や、一定の周期で使用され
ている。このウイルスチェックプログラムは一般には全
ディレクトリのチェックを行っており、そのデータパタ
ーンをみてウイルスの有無をチェックしている。
【0003】
【発明が解決しようとする課題】ところが、従来のウイ
ルスチェックでは下記の問題が存在する。 (1) 従来のやり方では、そのチェックがシステム立ち上
げ時に行われるものであれ、定期的に行われるものであ
れ、実際にプログラムが実行される時にはウイルスチェ
ックを行っていないので、システム立ち上げ時のウイル
スチェック後に、ネットワークを通じてプログラムのダ
ウンロードを行ったとき等で感染した場合の検出はでき
ない。このようにシステム立ち上げ時や、定期的にチェ
ックするケースでは、他システムや他プログラムへの感
染を防止することができない。
【0004】(2) 従来のやり方では、データパターンを
みてウイルスチェックを行っているので、そのパターン
が既知のウイルス、つまり既に認知されたウイルスのみ
がチェックの対象になるという後追い状態になり、新規
のウイルスの検出は困難である。
【0005】従って、本発明の目的は、このような点に
対しても有効な、プログラム正常性確認装置を提供する
ことである。
【0006】
【課題を解決するための手段】前記目的を達成するた
め、本発明では、図1(A)に示す如く、正常なプログ
ラム本体P0 の長さがL0 のものが、ウイルス汚染され
たとき、汚染されたウイルス長だけ長さが延びるため、
汚染されたプログラムP1 の長さがL1 となることに着
目したものである。
【0007】なお図1(A)において、汚染されたプロ
グラムP1 において、両端に記載したウイルス長は、こ
れら前後の部分のみに汚染したウイルスが存在すること
を示すものではなく、ウイルスの存在により単にこれら
の分だけ長くなったことを示したものである。実際にウ
イルスはプログラム本体中に混在しているものである。
【0008】本発明では、図1(B)に示す如く、プロ
グラム保持部4に保持されているプログラムA、プログ
ラムB・・・の長さを予めプログラム長管理ファイル3
に登録しておく。例えばプログラムAの長さL1 (バイ
ト長)、プログラムBの長さL2 ・・・を登録してお
く。
【0009】そして、例えばアプリケーションの実行に
より、プログラムAを動作する必要が生じたとき、プロ
グラムロード制御部2が動作し、プログラム長管理ファ
イル3からプログラムAの長さL1 を読み出し、またプ
ログラム保持部4からプログラムAを読み出し、メモリ
1にローディングする。
【0010】このとき、プログラムロード制御部2では
読み出したプログラムAの長を数え、プログラム長比較
部5にて前記L1 と比較する。このとき長さが一致すれ
ば、メモリ1にローディングされたプログラムAは正常
なものと判断し、これを起動する。
【0011】しかしこのとき長さが不一致の場合は、異
常としてプログラムAのロードの中断、或いはメモリ1
をクリアする。その後、ウイルスチェック・プログラム
を起動し、ウイルスの特定及びその対処を行う。なお、
プログラム長管理ファイル3へのプログラム長登録は、
該当プログラムの初期登録時に行う。
【0012】このようにプログラムの長さを予め登録し
ておき、該当プログラムのロード前、或いはLAN等ネ
ットワークを介して転送する前に、実際のプログラム長
と比較を行い、ウイルス感染の有無を簡単な手段で判定
することができる。
【0013】
【発明の実施の形態】本発明の第1実施例を図2及び図
3にもとづき説明する。図2は本発明の一実施例構成
図、図3はその動作説明図である。図中、11はOS、
12は主記憶、13はファイル、14は操作入力部、1
5は表示部、16はプログラムロード制御部、17はプ
ログラム長比較部、18はプログラム長管理ファイル
部、19はプログラム群ファイル部、20はウイルスチ
ェック・プログラムである。
【0014】OS11は、パソコン等の情報処理装置を
動作するプログラムの実行を制御するものであって、実
行すべきプログラムを主記憶12にローディング制御し
たり、資源の割振りを行ったりするものであり、プログ
ラムロード制御部16、プログラム長比較部17等を具
備する。
【0015】主記憶12は実行すべきプログラムが一時
保持されるものである。ファイル13は、プログラムや
データ等が格納される外部補助記憶装置であって、プロ
グラム長管理ファイル部18、プログラム群ファイル部
19、ウイルスチェック・プログラム20等を有するも
のである。
【0016】操作入力部14は、パソコンにおける動作
に必要な事項を入力制御するものであり、キーボードや
マウス等を有するものである。表示部15は、プログラ
ムの入力に必要な事項を表示し、オペレータに入力要求
を行うものである。
【0017】プログラムロード制御部16は、パソコン
の動作に必要なプログラムをファイル13から読み出し
て主記憶12にローディングするものであり、プログラ
ム長比較部17を有する。ローディングに際して、ファ
イル13のプログラム長管理ファイル部18からローデ
ィングするプログラムの長さを読み出し、プログラム長
比較部17にセットしたり、該プログラムをファイル1
3から読み出すときその長を計数し、プログラム長比較
部17にセットされた前記バイト長と比較するものであ
る。
【0018】プログラム長比較部17は、プログラム群
ファイル部19から読み出し、主記憶12にローディン
グするプログラムの長さが、プログラム長管理ファイル
部18に記入されていた当該プログラム長と一致するか
否かをチェックするものである。
【0019】プログラム長比較部17には、例えばカウ
ンタが設置されている。プログラム長管理ファイル部1
8からローディングすべきプログラム長が読み出された
とき、カウンタにこの長さの値(バイト長)をセットす
る。そしてプログラム群ファイル部19からこのプログ
ラムが読み出されて主記憶12にローディングすると
き、その長さをバイト長でチェックし、1バイト毎にカ
ウンタを−1する。そしてローディング終了のときカウ
ンタが0になれば一致したことがチェックできる。勿
論、プログラム長比較部17の構成はカウンタに限定さ
れるものではなく、他の構成でも使用できる。
【0020】プログラム長管理ファイル部18は、ファ
イル13に格納されているプログラムの長さLが格納さ
れるものであって、図3に示す如く、プログラム名対応
にその長さと、この長さを登録した時刻が記入される。
このプログラム長管理ファイル部18へのプログラム長
Lの登録は、該当プログラムがファイル13に最初に登
録される初期登録時に行われる。
【0021】プログラム群ファイル部19は、情報処理
に必要なプログラムが格納されるものであり、これにプ
ログラムA、B、C・・・が最初に格納されるとき、プ
ログラム長管理ファイル部18に、プログラム名、プロ
グラム長、登録時刻等が登録されるものである。
【0022】ウイルスチェック・プログラム20は、プ
ログラムがウイルスに汚染されていたことが検出された
とき、その汚染されたウイルスを除去するための処理を
行う既知のプログラムである。
【0023】本発明の第1実施例の動作を図3に基づき
説明する。 (1) 例えば、オペレータが操作入力部14からコマンド
を入力すると、OS11ではこれを解読してプログラム
Aをロードすることが必要と認識すると、プログラムロ
ード制御部16がファイル13のプログラム長管理ファ
イル部18からプログラムAの長さ2567(バイト)
を読み出し、プログラム長比較部17のカウンタにセッ
トする。
【0024】(2) 次にプログラムロード制御部16は、
ファイル13のプログラム群ファイル部19からロード
すべきプログラムAを順次読み出し、主記憶12にロー
ドする。このとき読み出したプログラムAの長さをチェ
ックし、例えば1バイト単位でプログラム長比較部17
のカウンタを減算する。
【0025】(3) プログラムAが主記憶12にロード終
了したとき、プログラム長比較部17のカウンタがゼロ
になれば、つまり主記憶12にローディングしたプログ
ラムAの長さと、プログラム長管理ファイル部18から
読み出したプログラムAの長さとが一致すれば、ローデ
ィングされたプログラムAにはウイルス感染がないもの
と判定し、これを実行する。
【0026】(4) しかし、長さが不一致で、プログラム
長比較部17のカウンタが主記憶12へのローディング
が終了しないうちにゼロになれば、プログラムロード制
御部16は異常メッセージを出力し、例えば表示部15
にこれを表示し、オペレータに通知する。
【0027】(5) プログラムロード制御部16は更に、
主記憶12に対するプログラムAのロード処理を中断す
る。 (6) プログラムロード制御部16は続いて主記憶12に
ローディング中であったプログラムAをメモリクリアし
て消去する。
【0028】(7) プログラムロード制御部16は、続い
てファイル13に保持されているウイルスチェック・プ
ログラム20を起動し、プログラムAに対してウイルス
の退治を開始させる。これによりウイルスチェック・プ
ログラム20が起動して、プログラムAが感染している
ウイルスの特定と、その対処を行う。このとき、プログ
ラムAが感染しているウイルスが既知のものであれば、
そのデータパターンよりその種別を判定して、表示部1
5にこれを表示する等の手段でこれをオペレータに通知
し、ウイルス部分を除去してこれを退治する処理を行
う。しかし未知のウイルスに感染している場合には、そ
の種別の表示や退治は行わず、種別検出できずと表示
し、オペレータに通知する。
【0029】なお、前記説明は、プログラムをローディ
ングする場合の例であるが、本発明はこれに限定される
ものではなく、プログラムを例えばLAN等のネットワ
ークを経由して転送する場合においても同様にその長さ
をチェックし、ウイルスに感染されていると判断された
とき転送を中止し、転送先のプログラムを消去処理する
ことができる。
【0030】本発明の第2実施例を図4に基づき説明す
る。本発明の第2実施例では、プログラムの初期登録の
ときのみプログラム長管理ファイルにプログラム長等の
記入を可能にしておき、プログラムがウイルスに汚染さ
れた場合でもウイルスに基づく書き替え能力によるプロ
グラム長管理ファイルへの書き替えができないようにし
たものである。
【0031】このため、プログラム長管理ファイルは、
動的には書き替えることができないようにプロテクトさ
れており、初期登録のときのみプロテクトを解除して、
プログラム長管理ファイルに対しプログラム名、プログ
ラム長等が登録できるように構成される。
【0032】本発明の第2実施例の動作を図4により説
明する。 (1) オペレータがプログラムの入力用コマンドを入力す
る。このとき、初期登録の場合、入力すべきプログラム
が格納されているフロッピィ・ディスクを、パソコンの
フロッピィ・ディスク装置FDDにセットしておく。こ
れによりプログラムロード制御部16はフロッピィ・デ
ィスクより読み出された所定のプログラムと、そのプロ
グラム長を読み出し、そのプログラムを主記憶に順次ロ
ードする。
【0033】(2) このとき、プログラムロード制御部
は、このプログラムが初期登録か否かを判別する。 (3) 初期登録か否かの判別は、例えばフロッピィ・ディ
スクからプログラムをローディングするときは、初期登
録であると判断する。この場合、フロッピィ・ディスク
から読み出されたプログラムのローディングであるの
で、初期登録であると判別する。初期登録でなければ、
ローディングのみで終了する。
【0034】(4) プログラムロード制御部16は、ファ
イルのプログラム長管理テーブルへのプロテクトを解除
し、これにロードしたプログラムのプログラム名、プロ
グラム長、登録日等を登録する。これにより例えばPF
に示す如きプログラム長管理ファイルPFが作成され
る。
【0035】本発明の第2実施例によれば、プログラム
長管理テーブルの書き替えを初期登録、つまりプログラ
ムがウイルスに感染していない状態でのときにだけ可能
にしたので、初期登録以後にプログラムがウイルスに感
染されてもこれに基づきプログラム長管理テーブルの長
さを書き替えようとしてもそれが不可能である、つまり
第2実施例では動的にプログラム長管理テーブルの書き
替えが不可能なため、プログラム長管理テーブルに記載
された正確なプログラム長を維持することができる。従
ってプログラムがウイルスに感染したとしてもこれらの
長さの比較によりこれを正確に検出することができる。
【0036】本発明の第3実施例を図5に基づき説明す
る。第3実施例では、プログラムのチェックを予め決定
された時間毎に周期的にチェックしたり、コンピュータ
がひまな、例えば夜中とか昼休みのときのような予め定
められた時刻にチェックを行うようにしたものである。
【0037】(1) オペレータは、例えば一定時間t0
隔に長さチェックを行うコマンドをプログラム名を指定
して、例えばプログラムAを指定して入力する。これに
より一定時間t0 経過すると、プログラムロード制御部
16が動作開始する。
【0038】(2) プログラムロード制御部16は、ファ
イル13のプログラム長管理ファイル部18から前記指
定されたプログラムAのプログラム長を読み出し、また
プログラム群ファイル部19から同じくプログラムAを
順次読み出しそのプログラム長を、前記プログラム長管
理ファイル部18に登録され前記読み出されたプログラ
ム長とを比較する。
【0039】(3) これらが一致すれば、このプログラム
チェックは終了する。 (4) しかし不一致の場合、読み出したプログラムAはウ
イルスに感染されているものと判断し、前記(2)にお
いて長さチェックのためにプログラムAを読み出して保
持させた主記憶の使用エリアをメモリクリアする。そし
てオペレータにこれを通知するため、例えば表示部15
に異常検出メッセージを出力してこれを表示させる。
【0040】(5) プログラムロード制御部16は、続い
てファイル13に保持されているウイルスチェック・プ
ログラム20を起動し、前記第1実施例と同様にプログ
ラムAに対してウイルス退治を行う。
【0041】なお、前記(1)において、一定時間間隔
に長さチェックを行うコマンドを入力する代わりに、オ
ペレータが一定時間に長さチェックを行うコマンドを入
力しても、同じく長さチェックを行って、指定されたプ
ログラムがウイルス感染しているか否かを判断すること
ができる。
【0042】このように本発明の第3実施例によれば、
プログラムが実際に動作されない場合でもチェックする
ことができるので、もしもウイルス汚染されていたと
き、早くこれを検知して、リカバリを早く行うことがで
きる。
【0043】
【発明の効果】請求項1に記載された本発明によれば、
簡単な手段により、プログラム実行時に、短時間でウイ
ルスに感染されているか否かの検知ができるので、もし
も感染されていたとき、他への感染を効果的に防止でき
る。
【0044】請求項2に記載された本発明によれば、プ
ログラム実行前にそのウイルスに感染されたプログラム
部分を消去することができ、他の感染をこれまた効果的
に防止できる。
【0045】請求項3に記載された本発明によれば、プ
ログラムの初期登録の場合のみプログラム長管理手段に
登録することができ、ウイルスに感染されていないこと
が確実なときのプログラム長を正確に登録することがで
き、ウイルス感染の有無を正確に判断することができ
る。
【0046】請求項4に記載された本発明によれば、プ
ログラムに対するウイルス感染のチェックを、実行時よ
りも早く行うことが可能となり、ウイルス感染されてい
てもそのリカバリを早くすることができる。
【図面の簡単な説明】
【図1】本発明の原理図である。
【図2】本発明の一実施例構成図である。
【図3】本発明の一実施例の動作説明図である。
【図4】本発明の第2実施例の動作説明図である。
【図5】本発明の第3実施例の動作説明図である。
【符号の説明】
1 メモリ 2 プログラムロード制御部 3 プログラム長管理ファイル 4 プログラム保持部 5 プログラム長比較部 11 OS 12 主記憶 13 ファイル 14 操作入力部 15 表示部 16 プログラムロード制御部 17 プログラム長比較部 18 プログラム長管理ファイル部 19 プログラム群ファイル部 20 ウイルスチェック・プログラム

Claims (4)

    【特許請求の範囲】
  1. 【請求項1】プログラムの長さを保持するプログラム長
    管理手段と、 プログラムのローディング時或いはプログラムの転送時
    にそのプログラムの長さが前記プログラム長管理手段に
    記入された長さと一致するか否か比較する比較手段と、 この比較手段における比較により長さが一致したときプ
    ログラムが正常であると判断し、不一致のときこのプロ
    グラムに異物が混入していると判断する制御手段を具備
    したことを特徴とするプログラム正常性確認装置。
  2. 【請求項2】前記制御手段によりプログラムに異物が混
    入していると判断されたとき、プログラムのローディン
    グ処理または転送処理を中断し、ローディング済みまた
    は転送処理済みのプログラム部分を消去することを特徴
    とする請求項1記載のプログラム正常性確認装置。
  3. 【請求項3】前記プログラム長管理手段へのプログラム
    長書込処理は、プログラムの初期登録の場合にのみ行う
    ようにしたことを特徴とする請求項1記載のプログラム
    正常性確認装置。
  4. 【請求項4】前記比較手段におけるプログラム長の比較
    動作を、一定周期毎に或いはコマンドに記入された時刻
    において行うことを特徴とする請求項1記載のプログラ
    ム正常性確認装置。
JP7284706A 1995-11-01 1995-11-01 プログラム正常性確認装置 Withdrawn JPH09128232A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7284706A JPH09128232A (ja) 1995-11-01 1995-11-01 プログラム正常性確認装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP7284706A JPH09128232A (ja) 1995-11-01 1995-11-01 プログラム正常性確認装置

Publications (1)

Publication Number Publication Date
JPH09128232A true JPH09128232A (ja) 1997-05-16

Family

ID=17681928

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7284706A Withdrawn JPH09128232A (ja) 1995-11-01 1995-11-01 プログラム正常性確認装置

Country Status (1)

Country Link
JP (1) JPH09128232A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007504553A (ja) * 2003-09-04 2007-03-01 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド メモリをクリアするように形成されるメモリコントローラを含む、高信頼実行環境を採用するコンピュータシステム
CN103198256A (zh) * 2012-01-10 2013-07-10 凹凸电子(武汉)有限公司 用于检测应用程序状态的检测系统及方法

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007504553A (ja) * 2003-09-04 2007-03-01 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド メモリをクリアするように形成されるメモリコントローラを含む、高信頼実行環境を採用するコンピュータシステム
JP4695082B2 (ja) * 2003-09-04 2011-06-08 アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド メモリをクリアするように形成されるメモリコントローラを含む、高信頼実行環境を採用するコンピュータシステム
CN103198256A (zh) * 2012-01-10 2013-07-10 凹凸电子(武汉)有限公司 用于检测应用程序状态的检测系统及方法
JP2013143126A (ja) * 2012-01-10 2013-07-22 O2 Micro Inc デバイスで実行中のアプリケーションプログラムの状態検出
US9298909B2 (en) 2012-01-10 2016-03-29 O2Micro, Inc. Detecting status of an application program running in a device

Similar Documents

Publication Publication Date Title
WO1997005547A1 (en) Virus protection in computer systems
JPH1185503A (ja) ウイルス駆除方法,情報処理装置並びにウイルス駆除プログラムが記録されたコンピュータ読取可能な記録媒体
US5828890A (en) System for interrupting program operation when an out-of-range value is encountered to correct a data value
JP2004126854A (ja) 攻撃対策装置
JPH09128232A (ja) プログラム正常性確認装置
JP3219082B2 (ja) データ格納方法
JPH11119927A (ja) プリンタ装置
JPH01205343A (ja) 電子計算機システムにおけるプロセスの中断再開方式
JPS6148741B2 (ja)
JPH0823846B2 (ja) コンピュータウィルス侵入防止装置
JPH0540668A (ja) プログラム暴走防止方式
JP2533931B2 (ja) 動的割当て領域のデ―タ内容保護方式
JP6594213B2 (ja) 制御装置およびプログラム
JP3124788B2 (ja) 組込型マルチタスクオペレーティングシステムの例外処理方法
JPS6158054A (ja) プログラムの暴走検出方式
JPH04342037A (ja) プログラムのオペランドチェック方式
JPH01251142A (ja) プログラムトレース方式
JP2002251299A (ja) プログラムトレース装置
JP2978658B2 (ja) プログラム開発支援装置
JPH0477826A (ja) マイクロプロセツサ
KR950010489B1 (ko) 전전자 교환기의 rom상주 모니터 디버거의 사용자 정의 명령어 확장방법
JPS6051961A (ja) 初期プログラムロ−ド処理方式
JPH03192452A (ja) デバイス入出力ドライバプログラムの割込処理方法
JPH02159619A (ja) 正常終了出口呼出し方式
JP2007041887A (ja) デバッグ装置、そのメモリアクセス方法およびメモリアクセス方法を実現するプログラム

Legal Events

Date Code Title Description
A300 Application deemed to be withdrawn because no request for examination was validly filed

Free format text: JAPANESE INTERMEDIATE CODE: A300

Effective date: 20030107