2011/07/05

EnigmaGroupのSoftware Cracking 11

前回はcrackingのレベル9を紹介しましたが、少しの間別のことをしていたら順位がどんどん落ちていることに気がついたのでまた少し進めました。
今回はレベル10と11をやったんですがレベル11がレベルの数にしてはものすごく簡単で、クリアしたときにゲットしたポイントもレベル10が500に対して250と、かなり少なめでした。

レベル10で入力するのは数字です。 入力した後、CreateThreadで4つ程スレッドをつくって、Sleepをなんども呼びながら、なんかよく分からない数字を出力してますが、これらは入力した値の判定に何の関係もないので全部NOPで上書きしたりJMPでその処理をスキップしたりしても大丈夫でした。


 後は入力した値とメモリ上の値を比較しているところが見つかるので、それが正解の数字です。

なかなか楽しめたですが、その次にやったlevel11が何故かいきなり簡単になりました。
 scanfで入力された文字からstrncmpでそれが合っているかの比較まで、一箇所にまとまっているのですぐ見つけられます。しかも、strncmpの引数にそのまま正解の値と入力した値を渡してるので、簡単答えが分かります。さらに、そのすぐ後のJNZをNOPなどに書き換えたりするだけでも正解の分岐に進みました。レベル9・10では出来なかったので、レベル9から条件付きジャンプの書き換えだけでは正解できないようにしているのかと思ってました。
 そんな感じですごく簡単なためかクリア時のポイントも少なかったんですが。

他のカテゴリのMissionは分かりませんけど少なくともSoftware Crackingでは、どうやらMissionのレベルの順番が、そのまま難易度順ではないと言う事みたいですね。これより上のレベルのでも難易度が高くなかったらちょっと残念です。

現在Software Crackingの1~11までやって2989ポイントで313位です。

0 件のコメント:

コメントを投稿