アダルトサイトのいわゆる「ワンクリックウェア」で実行されるVBS(VScripts)ファイルを解析した

最近流行のワンクリックウェア → ワンクリックウェア - Wikipedia。引っかかってる男性陣多いと思います。で、ちょっと機会があったのでそのソフトウェアを入手して解析してみた。
基本的な動作は

  • フォルダ(この症例はMy Documentsフォルダ)に自分自身をコピー
  • レジストリ(HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\)にログオン時自動実行するためのエントリを追加、値に自分自身をセット。
  • (あるいは、他のvbsによってMyDocumentsにコピーされエントリが追加された?)
  • PC起動時にワンクリックウェア実行。
    • ここでおもしろいのが、
    • CreateObject関数でIEのオブジェクトを生成
    • 不可視状態にこのオブジェクトを設定。
    • YahooのトップページにNavigateする。
    • objIEがBusy状態が終わるまで待つ。
    • Navigateしたページのタイトルを取得
    • タイトルが”Yahoo! JAPAN”だったら、インターネットに接続しているものと判定。接続してなければそのままプログラム終了。(へー、こうやって判定させてるのか。じゃあプロキシとか使ってタイトルを違う物にしたら実行されないね!)
    • 子供には見せられない画面が連続で出てくるよ!!!(MSHTAを使って表示させる)

とまぁこんな動作。
対処法はわかってれば何のことはない。

  • 怪しいサイト行くな。てかそんなアダルトサイト、ワンクリックウェアに引っかかるの承知で行ってるんだよね。

まぁこれだけでは何なので、駆除方法

  • HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Run\に怪しいエントリを探す
  • タスクマネージャーでMSHTA.EXEのプロセスを殺す
  • 上記の見つけたエントリを削除
  • レジストリエディタを)F5連打で値が復活しないことを確認
  • 怪しいエントリにファイル名とか書いてあったらそのファイルとかフォルダを削除
  • Vista/7の場合、タスクスケジューラーにも登録されてる可能性あるから要チェックだよ!
  • -

解析余談

今回の症状のVBSファイル見てて一人で大爆笑してた。コードが難読化されてるようで難読化されてなかった。変数宣言と実際使ってる場所が隣り合わせだったから、難読化の意味が無い。あ、これ時刻なんだろうな、とか思いつつ該当変数をわかりやすいようにメモ帳で置換していったら、普通に読めた。
そして難読化っぽかったのは最初だけ。中でIEのオブジェクト定義している変数が、そのまんま「objIE」だった。解析しやすくて助かったわー。