土曜日, 7月 03, 2010

マルウェアJavaScriptについて(その5)「調査デモ!」

※本件のブログ内容は「マルウェアJavaScriptについて」シーリーズの続きです、前回の内容はこちらへアクセスが出来ます⇒「1」 「2」 「3」 「4」
本日2パターンのリアルなjavascriptマルウェアの調査のデモをさせて頂きます。今回のデモ目的はもし皆様の自分のホームページに疑わしいjavascriptのコードが発見されたら最初調査が自分も分かるようにします。

私の10年間マルウェア調査の権限では、一番沢山発見されたjavascriptマルウェアは「redirector」種類です。次は「dropper」種類ですが次回に説明しますけど(dropperとはjavascriptマルウェアですがマルウェア実行プログラム/binaryファイルがjavascriptのマルウェアコードの中にあり、javascriptマルウェアを実行したらパソコンにマルウェア実行ファイルを保存されてしまいます)、若しくは「downloader」のjavascriptマルウェアです。下記のデモは2パターン「redirector」javascriptマルウェアのサンプルを使っています。

この調査デモ使っているマルウェアサンプルは「トロイjavascriptエージェント/redirector」です。ウイルス対策メーカでは色々名前を使っていますが例えば「win32.trojan.JS.redirector.xxx」若しくは「win32.trojan.JS.agent.xxx」
このjavascriptマルウェアがハッキングされたホームページに沢山発見されました。
ハッキングされたホームページには下記のコードに追加されてしまいました。このコードの場所は前回説明↓ように「<body>タグの直後、</html>タグの直後、若しくは<html>タグの前」に発見されました。では詳細な説明は下記となります↓

調査デモ・パターン1



↑javascriptマルウェアかどうかの判断について下記の注意点となります↓
※HTMLファイルに発見された場所
※見難いのコードが沢山書いてあります
「document.write();」又は「unescape();」又は「location.url();」のjavascriptコマンドを使われます。

私ですと、もっと分かりやすく為上記のコードを下記に書き直した↓

これでもっときちんと調査が出来ますので、疑わしvariableが発見されました。何故か疑わしかと「url」単語が発見されました。実は今回のコードには「url」とのキーワードが直ぐに発見されたが、見難い単語使っているjavascriptマルウェアが多いので、直ぐには見つからない可能性が高いです。
調査をつづいて、yt8a;cnyt;が危ない物だと分かりました。
次のステップはyt8a;cnyt;にはどんなバリューが持っているのは大事ですので、ここからは専門に任せて欲しいですが、自分のパソコンに実行しちゃうとマルウェアに感染になる可能性が高いのでやらないで下さい。私ですと「emulatorやsandbox」を使い結果環境が見えます↓

↑これを見るとcyntにある情報はショットカットURLだと分かりました。
後は確認の為に検索します(これも専門に任せて下さい、マルウェアに感染される可能性が高いです)↓

↑やはり同じURLで感染されたケースも出ました。危ないサイトにページを転送されると。どうやって転送されるかとjavascriptで「location.url();」にcyntに入ったURL情報に入れたら転送されます。確かに上記のコードの中に「location.url();」を発見されました。


調査デモ・パターン2


今回は下記のコードが見つけた場合の説明です↓

注意点はパターン1と同じですが…下記の画像を見て欲しいです↓

このコードをまた別のjavascriptを書くと分かりました。
どんなコードを書いたかと下記の画像へ↓

↑実はメモリーの中にこのコードを実行されてしまいます。
このやり方の目的は実はあります…ウイルスチェックの「behavior/heuristic」チェック仕方でスキャンされたら発見しにくくなります。
調査続いて、上記のコードを見たら「location.replace()」の所に隠された「wolfdalek」との単語が発見しました。気になり、wolfdalekは何だろうを調べて、残念ながら全てvariableで計算しないと最終にwolfdalekに入ったバリューが直ぐには分かりませんでした。
この時に「emulator」だけを使うと情報が足りないので「debugger」を使いました。
最終に暗号された「wolfdalek」がバリューが分かって、「unescape」をしましたら下記の結果が出ました↓

↑またショットカットURLが出ましたね、このURLをlocation.replaceに入れたらブラウザはこのURLに転送されます。
確認の為にどんなURLかと↓

↑イスラム宗教のサイバージハッドのサイトに飛ばされてしまいます。


※結論↓
⇒ javascriptマルウェアはどちから見ますとjavaエンジンで動かす物です。もしあなたはjavaやjavascriptが分かった人ですと上記の調査デモみたいなやり方で感染されたホームページHTMLの最初に調査が出来ます。
⇒ 調査の時に必ずMemulatorやdebuggerの環境の上で行って下さい。emulatorやdebuggerが分からない方々ですと専門に任せて下さい。
⇒ javascriptマルウェアに感染された環境は少なくにする方法でホームページを作って下さい。この為にホームページを作ったらHTMLのみjavascriptのみのファイルの場所が別々のダイレクトリーで分けた方が良いかと思います。HTMLのページにSCRIPTを書かないで別のJSファイルを実行する環境は一番ですね。何かあった時に調査もやりやすです。
⇒ ホームページホスティング会社には、ホームページマネージャーツールの中に少なくてもファイルサイズやMD5情報があれば助かります。

次の内容はjavascriptマルウェア「dropper」となります。
つづく…
---
http://0day.jp
マルウェアリサーチチーム
アドリアン・ヘンドリック

0 件のコメント:

コメントを投稿