完全保存版 Ragexe.exe を読む:準備編

2015年4月20日

SimpleROHook の保守のために、ここに必要な知識を残しておきます。今回から複数回にわたり解説して行きます。

ツールの入手

以前、「デバッグやマルウェア解析等に関する有力ツール」という記事で紹介しましたが、 IDA Debugger を用意して下さい。非商用の用途であれば IDA Pro 5.0 相当のフリーエディションが使用可能です。

IDA Support: Freeware Version
https://www.hex-rays.com/products/ida/support/download_freeware.shtml

ida-freeware-version

製品版のIDA Pro 6.x 系ではフレームワークにQtが採用され、操作性が向上しています。

Ragexe.exe の Unpack

諸事情により、このサイトでは解説できません。 圧縮判定には Exeinfo PE 等のソフトを使用しましょう。

Ragexe-info-from-ExeinfoPE

これによると、 jRO の Ragexe.exe は Themida & WinLicense 2.x の構造であると判定されます。あとはこの情報を元にWebを検索して復元方法を探してみましょう。

前回の記事にヒントが書いてあります。

「ハイプリーストになりたい」を探せ!

screen000

韓国公式サイトで以前配布されていた二次創作ゲームが存在しました。ROのメインドットを担当された方が作成した物で、当時のクライアントのデバッグ情報が入っています。

シンボル情報、構造体や列挙型の情報が含まれるため、現行のクライアントと照らし合わせてソースコードの予想することが出来ます。

韓国語と日本語のバージョンが公開されていましたが、現在は公式サイトからの入手不可能です。

webアーカイブで検索すると当時のサイトの様相とファイル名が判明するので頑張って探してみましょう。なお、Web Archiveからはファイルの入手は出来ません。ファイルに関しては以前の記事でもチョロっと触れています。

  • HighPriest.exe
    MD5: 9653AD4C49F8B8DCCE2BA4604883F71C
    SHA-1: A2467EA306FC2A6059F8E116A746A60966966C49
  • HighPriest.pdb
    MD5: B52FDECD2CBC54D2CE35D608849B0758
    SHA-1: 5628FE92C8D7F2D686FCC95FB826410CC8CC1C2F

ragnarok-kr-2009

Ragexe.exe と HighPriest.exe を IDA で分析する

それぞれのファイルを IDA で開きます。

select-new-IDA

PE実行形式を選択してファイル選択ダイアログで目的のexeファイルを選択してください。

select-pe-exe-IDA

続くオプションはデフォルト設定で構いません。コードの解析にしばらく時間がかかるのでコーヒーでも飲みながら待ちましょう。この間にツールバーを自分好みにカスタマイズしておくといいかも知れません。ヘルプを見て使い方に慣れておくのもいいでしょう。

ida-on-desktop

 

これで準備は終了です。

次回からは、解析の糸口の見つけ方等、実践的な事を解説して行きます。