脳内テキストの垂れ流し

プログラミングとか絵とか色々

リバースエンジニアリング初心者向け HackThisSite アプリケーションチャレンジ 4

 

今回はApplication Challenge 4

Hack This Site!からapp4win.zipをダウンロードしてきましょう。

 

「クリックしてー」と書いてあるのでクリックしようとすると・・・

f:id:ibuninngu:20170926171038g:plain

おお・・・なんかうざいw

マウスを重ねるとグレーアウトしてクリックすることが出来なくなります。

 

今回クリックするだけ?なんか簡単に終わりそうな気がしてきました。

 

・とりあえずデバッガで見てみる

エントリーポイントを抜けるまで進めてからインポートされたDLLを見てみると、なんだか珍しい(?)というか見慣れないDLLがいくつかインポートされているのが分かりました。

f:id:ibuninngu:20170926172652p:plain

特にmsvbvm60.dllは大ヒントでしょう。

これはMicrosoft Visual Basic 6.0に含まれるランタイムライブラリで、Visual Basicで書かれたプログラムを走らせる際に読み込まれます。

つまりこのプログラムはVBで書かれているということです。

しかし古いなあ・・・昔の本にはよく出てきたけど、今では絶滅危惧種じゃなかったっけ

 

VBは全然いじったことないんでまるで勝手が分からないのですが、幸いなことにVB Decompilerという便利なソフトウェアがあるのでそいつで覗いてみます。

f:id:ibuninngu:20170926181215p:plain

 

見て分かるとおり、上のボタンが押された時は"0x402AD0"が呼ばれ、マウスカーソルが重なった時は"0x402810"が呼ばれます。

なので"0x402810"にある命令を

"jmp 0x402AD0"にでもすればクリアできそうです。

f:id:ibuninngu:20170926182242p:plain

 

この状態で上のボタンにマウスカーソルを重ねると、クリックされた時の処理に飛びます。

f:id:ibuninngu:20170926183125p:plain

まだまだ簡単ですね。クリアです!