Home > Krack > パスチェックの回避

パスチェックの回避

  • 2008-10-02 (木) 17:44

起動時にパスワードを尋ねて、合致すれば起動するというソフトウェアには
メーラー、カスタマイズソフト、パスワード管理ソフトなどがあるが
適当に作ると簡単に解析される恐れがある。
というわけで、窓の手をターゲットに解析をしてみようw
まず、窓の手の本体であるWinHandXP.exeを実行する。
そして、取り敢えずパスワードを”test”に設定して、終了する。
すると、次回起動時からパスワードを入力するテキストボックスが表示され 合致しない限り起動が出来なくなる。
それでは解析してみようw OllyDbgでWinHandXP.exeを開き、実行する。
次に適当に文字を入力して、エラーメッセージを表示させる。
ここでOllyDbgで一時停止させて、次に「ユーザーコードまで実行」を押した後に
窓の手のエラーメッセージのボタンを押すと、

004F51E7 8945 F8 MOV DWORD PTR SS:[EBP-8],EAX

ここでブレークする。取り敢えずステップオーバーで実行させていくと

0040AD4D . 83BB 08030000>CMP DWORD PTR DS:[EBX+308],0

という所にretしてくる。少し上をみると

0040AD3C . B9 94AD4000 MOV ECX,WinHandX.0040AD94 ; ASCII “Password Error”

というのが見えるだろう。
さらに上の方法を見ていくと

0040AD10 . E8 4B64FFFF CALL

というLStrCmp関数をcallしているのが見つかる。
そういうわけで、ここにブレークポイントをセットして、再び起動時のパスワード入力をしてみる。
0040AD10でブレークするのだが、ちょっとレジスタの中身を見てみよう。
EAXには先ほど入力したパスワードが、EDXには適当に入力した文字列が表示されているのが分かる。
そういうわけで

0040AD3C . B9 94AD4000 MOV ECX,WinHandX.0040AD94 ; ASCII “Password Error”

を以下のように変更してみる。

0040AD3C 8B4E 34 MOV ECX,DWORD PTR DS:[ESI+34]

すると、間違えたときのエラーメッセージのタイトルにパスワードが表示されるようになる。
とまぁ、こんな感じで簡単にパスワードが分かっちゃいますよーと言うことですw
パスワードを扱うソフトウェアを開発している人は気をつけましょうw

Comments:0

Comment Form
Remember personal info

Trackbacks:0

Trackback URL for this entry
http://security.symphonic-net.com/krack/%e3%83%91%e3%82%b9%e3%83%af%e3%83%bc%e3%83%89%e3%81%a7%e8%b5%b7%e5%8b%95%e3%82%92%e5%88%b6%e9%99%90%e3%81%99%e3%82%8b%e3%82%bd%e3%83%95%e3%83%88%e3%82%a6%e3%82%a7%e3%82%a2%e3%81%ae%e8%a7%a3%e6%9e%90/trackback
Listed below are links to weblogs that reference
パスチェックの回避 from Security Ark

Home > Krack > パスチェックの回避

Calendar
« 1 月 2009 »
M T W T F S S
      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31  
最近のコメント

Return to page top

Security Ark is Digg proof thanks to caching by WP Super Cache!