アンチウイルス機能が正しく動作しているのをコマンドやデバッグモードで確認するには new!

Enterprise II 版に実装されているアンチウイルス機能(ウイルス検査や隔離・通知など)が正しく動作するのかをコマンドやデバッグモードで確認する事項をあげてみました。ここでは検査対象のファイルとしてテストウイルスが用意されていることを前提に説明してみました。

(a). VMCSサービスが停止している場合と起動している場合の違い
管理者権限でコマンドプロンプトを開き、カレントディレクトリを "C:\Program Files\EPOST\MS" に移動したら、コマンド "kasp" を呼び出し、検査対象のファイルであるテストウイルスなどを引数に指定して実行すると、VMCSサービスが停止しているときはパイプ通信のエラー "pipe err = 2" が出力されます。VMCSサービスが起動しているときは同エラーは出力されず、ウイルスが見つかったことを示す "nResult = 0" が出力されます。なお、ウイルスが見つからなかった場合は "nResult = 1 ()" が出力されます。
--------------------------------------------------------
VMCSサービス(スキャンエンジン)が停止している場合
--------------------------------------------------------
C:\Program Files\EPOST\MS> kasp C:\mail\eicar\eicar.com
[eicar] argv[1] = C:\mail\eicar\eicar.com
[eicar] Source = C:\mail
[eicar] Start Virus scan.
[eicar] pipe err = 2  ←※パイプ通信での通信ができない表示
[eicar] End Virus scan.(C:\mail\eicar\eicar.com, )
[eicar] nResult = 1 ()
--------------------------------------------------------
VMCSサービス(スキャンエンジン)が起動している場合
--------------------------------------------------------
C:\Program Files\EPOST\MS> kasp C:\mail\eicar\eicar.com
[eicar] argv[1] = C:\mail\eicar\eicar.com
[eicar] Source = C:\mail
[eicar] Start Virus scan.
[eicar] End Virus scan.(C:\mail\eicar\eicar.com, VIRUSBATEICAR-TEST-FILE)
[eicar] nResult = 0 (VIRUSBATEICAR-TEST-FILE)
[eicar] send alert = C:\mail\eicar\eicar.com
[eicar] _execl(vcpisc "C:\PROGRA~1\EPOST\MS\vcpisc.exe" tsuchisaki@eposttest.jp -subject="ウイルス警告 VIRUSBATEICAR-TEST-FILE" -message="ウイルスが発見されました。(Message-ID: eicar)"
-attach="C:\mail\eicar\eicar.txt"
※最下行はウイルス発見の通知メール指定が設定されているときの表示
----------------------------------------------------------

(b). VMCSサービス(スキャンエンジン)を停止させた上でデバッグモードで確認
VMCSサービス(スキャンエンジン)をデバッグモードで確認することができます。
VMCSサービスをデバッグモードで確認するには、VMCSサービスをいったん停止させた上で、管理者権限のコマンドプロンプト1つめを開き、"modifys -debug" よりデバッグモードを開始、ウイルス検査を実行しているときの挙動を確認することができます。
まず "modifys -debug" によりデバッグモードを開始したら、"Skip download diff database...." が表示されるまで待ちます。
 ---コマンドプロンプトその1(管理者権限)-----------
 C:\Program Files\EPOST\MS> modifys -debug
   :
   :
   :
 [12:33:04:522] Skip download diff database....
 --------------------------------------------------------

次に管理者権限のコマンドプロンプト2つめを開きます。上記 (a).で解説した内容の通り、コマンド "kasp" を呼び出し、検査対象のファイルであるテストウイルスなどを引数に指定して実行、ウイルス検査を行ってみます。
このとき、コマンドプロンプトその2側から、コマンドプロンプトその1側にスキャン要求が届くと、スキャン検査内容がコマンドプロンプトその1に表示されるのを確認することができます。その2で検査を実施、その1のスキャン検査という一連の流れを見てください。
 ---コマンドプロンプトその2(管理者権限)-----------
 C:\Program Files\EPOST\MS> kasp C:\mail\eicar\eicar.com
   :
 [eicar] nResult = 0 (VIRUSBATEICAR-TEST-FILE)
   :
 --------------------------------------------------------
   ↓ "C:\mail\eicar\eicar.com" のスキャン依頼のパイプ通信
 ---コマンドプロンプトその1(管理者権限)-----------
 Scan file readmemory. ok.
 Scanning... C:\mail\eicar\eicar.com
 Scan file readmemory. ok.
 Check PLAIN_DB
   :
   :
 Scanner() end.
 --------------------------------------------------------
(関連FAQ)
アンチウイルス機能の有効化と検出ログを確認するには