[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[harden-mac:0629] Re: First Mac OS X Trojan Horse
- To: harden-mac@xxxxxxxxxx
- Subject: [harden-mac:0629] Re: First Mac OS X Trojan Horse
- From: SHIROYAMA Takayuki <puresnow@xxxxxxx>
- Date: Fri, 9 Apr 2004 13:15:08 +0900
しろやまです。
# このML、添付ファイル駄目なのですね...とりあえず再送します。
> コンセプトファイルでは、MP3のID3タグの中に、
> Joy!peffpwpc
> で始まる一連のコードが存在していました。
要するに LaunchCFMApp が本来 PEF(CFM)バイナリでないものを
実行できてしまうというのが問題なのではないでしょうか?
っというわけで、ちょっと実験してみました。
1. http://www.eternal.nest.or.jp/~shiro/tmp/fl.c にある
ソースをコンパイルし、LaunchCFMApp という名前の実行バイナリを作る
2. cd /System/Library/Frameworks/Carbon.framework/Versions/A/Support
3. sudo mv LaunchCFMApp LaunchCFMApp.orig
4. sudo cp ~/LaunchCFMApp ./LaunchCFMApp
この作業を行う事で、少なくともコンセプトファイルをダブルクリックしてもアプリケー
ションは実行されない事を確認しました。
ソースの方は見れば自明ですが、「LaunchCFMApp に渡されたバイナリの頭をちょ
っと読んで、「Joy!peffpwpc」があるかを確認しています。
file コマンドの magic を見る限りは、0バイト目からこのシグネチャがあるのがPEF
バイナリの条件のため、この識別方法は問題ないと考えております。
(何故Cで書いたかですが、どうも LaunchCFMApp はどこかで自身の実行ファイル
のパスをチェックしているらしく、argv[0]にはその名前が入ってないといけない模
様だからです。execv 相当の事ができるなら、スクリプト言語を使っても問題ない
でしょう。)
昼休みでちょこっとためしただけなので、不正な場合は何も起こりません。ただ、これ
もちょっと凝ればアラートパネルを出すぐらいはすぐにできるでしょう。
---
SHIROYAMA Takayuki
--[PR]------------------------------------------------------------------
お得な 懸賞情報 あつめました。
FML懸賞
http://ad.freeml.com/cgi-bin/ad.cgi?id=cCyB0
------------------------------------------------------------------[PR]--
<GMO GROUP> Global Media Online www.gmo.jp