無茶な実験

Windows SteadyState用がないなら、Windows Shared Computer Toolkit用のツールで何とかしよう

Microsoft Shared Computer Toolkit に対応はしていますか Microsoft Shared Computer Toolkitに対応するためのツールを、弊社にてご用意しております。

ツールのご提供はサポート担当より行なわせていただきます。お手数ですが、サポートセンターまでお問い合わせいただきますようお願いいたします。

問い合わせをしてツールを入手してみた。
ドキュメントを読んでみる

(3)osce_tool_6.5_7.0_7.3_win_jp_hfb1257.exeをCorp.サーバ上にて実行
osce_tool_6.5_7.0_7.3_win_jp_hfb1257.exeをCorp.サーバ上の任意のフォルダにコピーし、実行します。(※3)

このファイルを実行すると、まず、Corp.サーバの所定のフォルダにClnUpdNow.exeファイルがコピーされ、その後Corp.サーバで管理されているすべてのNT系OS(※4)のCorp.クライアントにClnUpdNow.exeというファイルが自動的に配信されます。

クライアントで試したいのにCorp.サーバにモジュールをインストールしなくてはいけないのか?

よくある質問
【Q6】
本書の手順(3)で、ツール(osce_tool_6.5_7.0_7.3_win_jp_hfb1257.exe)をCorp.サーバ上で実行したとき、なにが起こりますか?
また、結果をどのようにして確認すればよいですか?
【A6】
Hotfixを実行すると、Corp.サーバの所定のフォルダ(?)にファイル(ClnUpdNow.exe)がコピーされ、設定ファイル(?)に追記されます。
Corp.サーバは、??の動作を検知し、自動的にCorp.クライアントのインストールフォルダ(?)にファイル(ClnUpdNow.exe)を配信します。
この動作は、Corp.のHotfix機能と呼ばれる機能を利用しています。

インストール時の初期設定では、???は下記のとおりです。
? C:\Program Files\Trend Micro\OfficeScan\PCCSRV\Pccnt\Common\
? C:\Program Files\Trend Micro\OfficeScan\PCCSRV\Download\hotfixNT.txt
? C:\Program Files\Trend Micro\OfficeScan Client\

本書の手順(3)では、最終的にクライアントの所定のフォルダにファイル(ClnUpdNow.exe)がコピーされている必要があります。
残念ながら、Corp.サーバで、Hotfix配信の成功/失敗を確認することはできません。各Corp.クライアントにて、?の所定のフォルダにファイル(ClnUpdNow.exe)が存在するかどうかをご確認ください。

やっぱりCorp.サーバで実行しないとダメみたいだ。
 
試しにVistaマシンで実行してみたけど、エラーになって途中で止まった。
 
 
仕方ない。

  1. Microsoft Virtual PC 2007をインストールして
  2. Windows Server 2003 評価版をインストールして
  3. さらにウイルスバスターコーポレートエディションの体験版をインストールして
  4. 「ツール」を実行したところでやっと「ClnUpdNow.exe」を取り出すことに成功した。

 
っていうか、稼働中のサーバに試すだけのモジュールを気軽にインストールなんて出来る訳ないのに・・・ブツブツ
 
 
ドキュメントの最初のページには「Microsoftより提供されるモジュール」も必要らしい

Microsoft® Shared Computer Toolkit for Windows® XP が動作しているコンピュータ用のトレンドマイクロ ウイルス対策ソフトウェア製品更新スクリプト
トレンドマイクロ ウイルス対策ソフトウェア製品更新スクリプトは、マイクロソフトトレンドマイクロによって共同開発されました。このスクリプトは、Shared Computer Toolkit for Windows XPWindows ディスク保護機能がオンになっているコンピュータ上で トレンドマイクロ ウイルス対策ソフトウェア製品のウイルス定義ファイルを自動的に更新できるようにするためのものです。

こいつで入手できたファイルは2つ

  • AntiVirusUpdates.xml
  • SCTTrendMicroAntiVirus.vbs

注意事項
 
5.AntiVirusUpdates.xml をダウンロードし、%SCTPATH%\xml にコピーします。次に SCTTrendMicroAntiVirus.vbs をダウンロードし、%SCTPATH%\scripts\update にコピーします。
注意: 既定では %SCTPATH% は %ProgramFiles%\Microsoft Shared Computer Toolkit\ になります。

適用する場所も分かった。
 
 

AntiVirusUpdates.xml(SCT)

途中でテキトーに改行入ってます。

<antivirus>
 <Products>

  <Product>
   <Name>eTrust Antivirus 7.0</Name>	
   <Version>7.0</Version>
   <RegKey>HKEY_LOCAL_MACHINE\SOFTWARE\
ComputerAssociates\eTrustAntivirus\
CurrentVersion\Version</RegKey>
   <UpdateScriptname>script.vbs</UpdateScriptname>
  </Product>
・・・

 </Products>
</antivirus>

SCTTrendMicroAntiVirus.vbs

途中でテキトーに改行入ってます。

' ~~~ 
' ~~~ Force variables to be declared 
' ~~~ 
Option Explicit

' ~~~ 
' ~~~ Turn on error handling
' ~~~ 
On Error Resume Next

' ~~~ 
' ~~~ Declare global variables
' ~~~ 
Dim sTrendMicroPath, oShell, strComputer,
 oWMIService, ColProcesses

' ~~~ Create objects
Set oShell = CreateObject("WScript.Shell")

' ~~~ Set application path
sTrendMicroPath = oshell.RegRead(
"HKEY_LOCAL_MACHINE\SOFTWARE\TrendMicro\
PC-cillinNTCorp\CurrentVersion\Application Path")


'~~~ Download Virus Signature
call oShell.Run(""""& sTrendMicroPath &
 "\ClnUpdNow.exe""", 0, True)

 
ふむ。xmlレジストリキーを何かしているようで、vbsでプログラムを組み込むようにしているような感じがする。

 
 
さて、Windows SteadyStateをインストールしたパソコンにて
>D:\Program Files\Widnows SteadyState\XML\SoftwareUpdates.XML

<?xml version="1.0" encoding="utf-8" ?>
<softwareupdates>
...
  <software
    id="TrendMicro7.0"
    name="TrendMicro OfficeScan Corporate Edition 7.0"	
    detectionPath="SOFTWARE\TrendMicro\PC-cillin"
    detectionName="Application Path"
    append="pccmain.exe"
    script="SCTTrendMicroAntiVirus.vbs"
    category="Anti-Virus"  />

</softwareupdates>


>D:\Program Files\Widnows SteadyState\Scripts\SCTTrendMicroAntiVirus.vbs

' ~~~ 
' ~~~ Force variables to be declared 
' ~~~ 
Option Explicit

' ~~~ 
' ~~~ Turn on error handling
' ~~~ 
On Error Resume Next

' ~~~ 
' ~~~ Declare global variables
' ~~~ 
Dim sTrendMicroPath, oShell, strComputer,
 oWMIService, ColProcesses

' ~~~ Create objects
Set oShell = CreateObject("WScript.Shell")

' ~~~ Set application path
sTrendMicroPath = oshell.RegRead("
HKEY_LOCAL_MACHINE\SOFTWARE\TrendMicro\
PC-cillinNTCorp\CurrentVersion\Application Path")


'~~~ Download Virus Signature
call oShell.Run(""""& sTrendMicroPath &
 "\ClnUpdNow.exe""", 0, True)

なんだか同じじゃないか?
 
WSSにて自動的に検出されるセキュリティソフトの一覧がSoftwareUpdates.XMLなので、ここにウィルスバスターCorp.の情報を加えたらいけるんじゃないか?

まだまだ続く・・・
 

なまえ オリジナル 意訳 変更後
id TrendMicro7.0 他と区別する為 TrendMicro7.3
name TrendMicro OfficeScan Corporate Edition 7.0 表示用 TrendMicro OfficeScan Corporate Edition 7.3
detectionPath SOFTWARE\TrendMicro\PC-cillin レジストリのパス SOFTWARE\TrendMicro\PC-cillin
detectionName Application Path レジストリのパス Application Path
append pccmain.exe 実行するプログラム名 ?その1
script SCTTrendMicroAntiVirus.vbs レジストリ登録とClnUpdNow.exeの指定 ?その2
category Anti-Virus 分類 Anti-Virus
detectionPathとdetectionName

vbsファイルの中にあるレジストリの1行

HKEY_LOCAL_MACHINE\SOFTWARE\TrendMicro\PC-cillinNTCorp\CurrentVersion\Application Path

これから察すると「detectionPath」「detectionName」はレジストリのパスで問題なさそう。そのままでOKっぽい。

append

「?その1」は「ウィルスバスター2007」の場合はメイン画面のプログラムのようなので、Corpの場合には「PccNT.exe」が妥当っぽい。
 
D:\OfficeScan\PccNT.exe
が妥当かな?
 

script

スクリプトファイルを置く場所の指定が気になる。でも、WSSフォルダの中に「Scripts」フォルダがあるから、そこに突っ込めば良さそう。
 
出来上がったものがコレ。

  <software
    id="TrendMicro7.3"
    name="TrendMicro OfficeScan Corporate Edition 7.3"	
    detectionPath="SOFTWARE\TrendMicro\PC-cillin"
    detectionName="Application Path"
    append="D:\OfficeScan\PccNT.exe"
    script="SCTTrendMicroAntiVirus.vbs"
    category="Anti-Virus"  />

WSSの「ソフトウェア更新のスケジュール→セキュリティプログラムの更新」欄は再起動では認識しなかったので、OSの再起動を行なう。けど認識しない。

「カスタム更新」に賭けるしかない

 
もう一度vbsファイルを眺める

HKEY_LOCAL_MACHINE\SOFTWARE\TrendMicro\PC-cillinNTCorp\CurrentVersion\Application Path

このときのデータは「D:\OfficeScan NT\」となっている。そこにはClnUpdNow.exeファイルを置いてある。このままでも動きそうな予感がする。

  • 7.3
  • 8.500.1002
  • 4.591.00
  • 2007/07/10

今日のバージョンは確認した。ディスク保護を「再起動時にすべての変更を削除する」にしておいて、変化があるのか観察することにします。
 
 
今日はおしまい。