書き溜めたエントリなんだけど、これから更新する機会が減りそうなので進んだところまで一気にBlogに上げてしまうことにした。
願わくば、これをみて解析の道に入り込む人が増えることを。

なんか今でも君主の多重やマクロを知りたがる人がいるらしい。
このBlogのアクセスはすっかりらいつべバルーン一色になったのだけれど、ネトゲを弄る需要って言うのは尽きないらしい。

君主は最近のネトゲには必ず付いてくるルートキットはなかったし、exe圧縮の難読化もされてなかったからollydbgで楽に中を見られたんだよなぁ。
一時期はデータのテキストも暗号化掛けてなかったし。
まぁ、マイナーネトゲは資金もないだろうしこんなもんかも知らん。
最近はガメポのプロテクトが凶悪らしいと風の噂で聞くけれど、カーネルに常駐するとか、APIフックするとか、たかがゲームがやって良い事ではないと思う。

というわけで、割と有名どころのテイルズウィーバーの解析をしてみる事にした。
まぁ、簡単な分岐潰すくらいの能力しかないので無理だとは思うのだけれど。

とりあえず、クライアントをダウンロード、んでインストール。
まずは普通に起動してみる。
TalesWeaver.exe が基点になるのか。Webから起動するタイプではないのね。
ollydbgで TalesWeaver.exe を覗いて見る。以外にも難読化はされていない模様。
が、そのまま進めるとデバッガ検出だとかで落とされる。
ProcessExplorer でツリーを見てみると、TalesWeaver.exe から InphaseNXD.EXE が起動されている。
ProcessExplorer で起動パラメータをコピーして InphaseNXD.EXE を実行してみる。
どうやらこれがゲーム本体らしい。

ここまで判ったところで、まずは小手調べに TalesWeaver.exe から InphaseNXD.EXE を起動しているところを特定しようとollydbgで検索してみるも、まったくそれらしいところがヒットしない。
新しいプロセスを起動しているのだから、 CreateProcess か ShellExecute のどちらかだと思ったのだけれど、どちらにも該当せず。
結局1~2日悩んで、ステップ実行させた結果、WinExec なるAPIを発見する。
リファレンスを引くと、Win32以前の互換性を保つために残されているAPIらしい。
こんなAPIがWindowsXPにまで残されていたのも驚きだけれど、そんなAPIを使うプログラムも驚きだ。
そんなこんなで、どうにか小手調べ完了。
しかし、これは初っ端から先行き暗いなぁ……

2009/10/01:コメントなしろじ

コメントを残す

メールアドレスが公開されることはありません。