■Basic missions level 1のチャレンジの結果
この問題はHTMLを知っているかを問う問題。
HTMLのソースファイルを開くと回答がコメント文で記載さているので
それをPasswordに記入すればクリア
|
■Basic missions level 2のチャレンジの結果
問題文をとりあえず翻訳サイトにて訳してみると、
「ネットワークSecurityサムはパスワード保護スクリプトをセットアップしました。
彼は、それに非暗号化されたテキストファイルから本当のパスワードをロードして、
ユーザが入力するパスワードとそれを比較させました。 しかしながら、彼は、
パスワードファイルをアップロードするのを忘れました…」
Passwordに空文字(なにもぜす)submitを押せばクリア。
|
■Basic missions level 3のチャレンジの結果
問題文をとりあえず翻訳サイトにて訳してみると、
「今回、Network Securityサムは、忘れずにパスワードファイルをアップロードしましたが、それより深い問題がありました。」
ソースを見てみる。
<input type="hidden" name="file" value="password.php" />
hiddenタイプにてpassword.phpが動き、これが記入されたパスワードと比較されるようなので、URL(URI)に直接こいつを記入。
http://www.hackthissite.org/missions/basic/3/password.php
なにやら文字列がでてきた「512bfae4」この文字列をpasswordに記入すればクリア
|
■Basic missions level 4のチャレンジの結果
問題文をとりあえず翻訳サイトにて訳してみると、
「今回、サムは、スクリプトにパスワードをhardcodedしました。 しかしながら、パスワードは、長くて、
複雑です、そして、サムはしばしば忘れっぽいです。
それで、彼は彼が忘れたときのために自動的に彼のパスワードを彼にメールするスクリプトを書きました。
ここに、スクリプトがあります:」
正直問題文はどうでもよくなった・・・。Send Password to Samの文字だけでクリックするとパスワードをSamに
送るようになっているのは一目瞭然。
ソースを見てみると
<input type="hidden" name="to" value="webmaster@hulla-balloo.com" />
<input type="submit" value="Send password to Sam" /></form></center><br /><br />
このあたり。
とりあえず、メールアドレスを自分のものに書き換えてみる。その際絶対パスで記載されている文はhttp://〜に修正。
send password to samをクリック。
自分のメールアドレスに送られてくるかと思いきや、ブラウザにパスワードが出てきた。とりあえずクリア。
|
■Basic missions level 5のチャレンジの結果
refererを偽装すればいいようだが、解答できてない。
|
■Basic missions level 6のチャレンジの結果
encryptでpasswordを暗号化しているよう。暗号化されたパスワードは「43:g=:?k」
暗号化の法則を見つけるのが先決。とりあえず適当な文字列をいれてみると、a→a aa→ab aaa→abc abc→ace
どうやら「文字+桁数ずらしたASCIIコードの値」の様子。
で、あれば、暗号化されたpasswordを逆に桁数文ASCIIコードを戻してあげればいいことになる。
4 - 0 = 4
3 - 1 = 2
: - 2 = 8
・・・・
とやればクリア
ASCIIコード表は「http://ja.wikipedia.org/wiki/ASCII」を参考
|
■Basic missions level 7のチャレンジの結果
カレンダーを表示するプログラムの様子。viewに年を入れればその年のカレンダーが表示される。
内部的にはcalコマンドを読み出し、viewの数字を引数で渡しているだけっぽい。
とりあえず、2010;lsとか入れてみたら、lsコマンドが普通に動いた。
あやしげなphpファイルがあるので、アドレスにいれてみたら、パスワードがあわられるので
passwordに入れてあげればクリア。
|
■Basic missions level 8のチャレンジの結果
問題文を翻訳サイトで翻訳
「残りは、それでも、あいまいにされたパスワードファイルが最も良い考えですが、
彼がカレンダープログラムでへまをしたと確信していますか?
サムは/var/www/hackthissite.org/html/missions/basic/8/の非暗号化された
パスワードファイルを保存しました。
しかしながら、サムの若い娘ステファニーは、PHPでプログラムを作ることをちょうど学んだところです。
年の割りには有能ですが、彼女はセキュリティに関して何も知りません。
彼女は、最近ファイルを保存することに関して学びました、そして、挑戦するためにスクリプトを書きました。
とりあえず、
aaaとやってみると
Hi, aaa!
Your name contains 3 characters.
入力した名前に対しwcで値をかえしているのだろうか・・・・
<script>msgbox("alert")</script>
とかやってみる。
Hi, <>msgbox("")</>!
Your name contains 27 characters.
<>は変換されてるのに、scriptの文字消えてる。
とりあえず、入力した文字をファイルにおとして、HTML内で動かしている様子。
パイプやセミコロンでコマンドを続けてもうまいこと実行されないので
<!--#exec cmd="ls" -->
とかやってみる。
tmpディレクトリ配下で動いていたようでここにはパスワードらしきファイルなかった。
一階層もどる。
<!--#exec cmd="ls .." -->
あやしげなファイルがあるのでアクセスするとクリア
#ゲーム用に作られているので、echoなどのコマンドは受け付けてもらえなかった。
|
■Basic missions level 9のチャレンジの結果
問題文を翻訳サイトで訳すと
ネットワークSecurityサムは船もろともに沈む予定です--彼はパスワードファイルを見えなくし続けると決心しています、
人々が何回何とかそれを回復しても。 今回、ファイルは/var/www/hackthissite.org/html/missions/basic/9/に保存されます。
しかしながら、最後のレベルでは、人々を使用に制限する私の試みでは、サーバ側はレベル8だけにリストアップされている
ディレクトリをディスプレイに含めて、私はどこかで誤ってへまをしました。
あいまいにされた平らな9パスワードを得る方法があります。
どのようにを見積もることができるかどうかを見てください…
このレベルははるかに扱いにくく思えます、次に、実際にあります、そして、
それがスクリプトがどうユーザの入力を有効にするかに関する理解を持つのを助けます。
'スクリプトは'<の最初のoccuranceを見つけ'て、ことを見る面相はそれ直後続きます。
なんとなく、level8で使ったものを使いまわす様子。
level8の問題に戻って、
<!--#exec cmd="ls ../../9" -->
をいれてあげると
Hi, index.php p91e283zc3.php!
Your name contains 24 characters.
パスワードが発見できる。
|
■Basic missions level 10のチャレンジの結果
■Basic missions level 11のチャレンジの結果
実行するとほかの問題とはまったく傾向が違う。
とりあえず、URLにindex.htmlを入れてみたら、同じ。。。今までの傾向と対策によりindex.phpを
入力するとなにやらEnter correct passwordと。。。。どうやらここでパスワードを入れるらしい。
ヒントは、次々でてくるElton Johnの音楽。
最後に.htaccessにアクセスするとなにやら不思議な
IndexIgnore DaAnswer.* .htaccess
すかさず、DaAnswerへアクセス。
The answer is right here! Just look a little harder.
「答えがちょうどここにあります! ただ少し困難に見えてください。」
なんのことやら、、、passwordは「right here!」でした。
|