TimberLandChapel's Tech Blog

TimberLandChapel provide Tips, tech note and scribbling.
Updated my site as English site for APAC users.
TLC.com .Metrix 4.0 Beta1 released

サイトの日本語化方法はこちら

Syndication

News

INETAJ

情報処理関係官公庁

SQL Server

TLC.com

Microsoft

クリエイティブ・コモンズ

http://www3.clustrmaps.com/
シマンテック社のBloodHoundテクノロジとかち合ってしまった。。。
シマンテック社のBloodHoundテクノロジは,未知のウィルスにいち早く対応するために,疑わしい動作をするコードを発見するように仕組まれています。
BloodHoundの1カテゴリにExcelMacroがあって,オカシナ挙動をするVBAコードを書いてしまうと,未知のウィルスとして認識されてしまいます。

BloodHoundが動作する1パターンとして,
  • ".bas",".frm",".cls",".vbs"などそれっぽい拡張子でファイルIOを行う
  • VBproject.VBComponents.Importを使用する
  • VBproject.VBComponents.Exportを使用する


この3つの要素をもつコードがExcelに含まれていると,そのxlsファイルは感染ファイルとして認識されます。
3つの要素の順番には依存しません。

・サンプル
Private Sub BloodMain()
    Dim FileNo As Integer
    Dim TestFileName As String
    Dim ImportName As String
    Dim MeName As String

    TestFileName = "C:\test.frm"
    MeName = "BloodHound"

    FileNo = FreeFile
    Open TestFileName For Output Lock Read Write As #FileNo
    Close #FileNo

    ThisWorkbook.VBProject.VBComponents(MeName).Export TestFileName 
    ThisWorkbook.VBProject.VBComponents.Import (TestFileName)
End Sub

増殖しそう。っていうコードパターンに引っかかるようです。
実際のファイルIOが不穏なコードを吐き出す必要もないし,インポート/エクスポートの順番が論理的におかしくても反応します。

Excelシートに設定情報なんかを書き込んで,簡単なコードジェネレータをつくったりするとやたら怒られつづけます。

Published 2004年7月18日 21:58 by timberlandchapel

Comments

No Comments