公開しまーす。
問題: http://andantesoftware.com/ctf2013/
Question DetailはWhat you see is what you get.となっています。見たものが手に入るもの、ということです。実は、すでにキーの元となるものが見えています。 #questionのCSSを覗いてみてください。
#question{
background-image: url('../images/transparent.gif');
background-repeat: no-repeat;
background-position: top right;
}
#questionにはtransparent.gifという背景が適用されており、このgifがキーの元となります。transparent.gifはQRコードの黒い部分を抜いた透過gifです。背景色を黒に変更するなどして読み取ると
44Kv44Op44K544Gu44G/44KT44Gq44Gr44Gv5YaF57eS44Gg44KI77yB
という文字列が出てきます。これをBase64デコードすると
クラスのみんなには内緒だよ!
となります。 これをFind the keyのanswerとして書くと、wrong answerとなります。実はもう一つ隠されているものがあります。
Cookieを覗いてください。
message: Are+you+enjoying+the+time+of+EVE%3F
sid: 182b6673127c9752238984c4dfb8a8f2464505bf6a4f6f2caceeaecb19bde339
となっているはずです。(messageはヒントとして途中からHTMLコメントに書いた文ですね)sidはmessageのSHA2ハッシュになっています。"Are+you+enjoying+the+time+of+EVE%3F"はdecodeURIComponentすると"Are you enjoying the time of EVE?"となり、これをSHA2ハッシュ化すると"182b6673127c9752238984c4dfb8a8f2464505bf6a4f6f2caceeaecb19bde339"になることが確認できます。
ちなみに"Are you enjoying the time of EVE?"は「イヴの時間」という映像作品のサブタイトルであり、同名の喫茶店を舞台として主人公たちとロボット(アンドロイド)との関係を描いたものです。この喫茶店、とある理由のため人間の目につかないような隠された場所にあり、これが「隠されたページの入り口である」という軽いヒントのようなものになっています。
というわけで"クラスのみんなには内緒だよ!"をSHA2ハッシュ化します。すると
9bee3a81a7b82b3df00b6deed5c9d19ad0c005e6f1fc04eb6b1b8cc849aaa3aa
となります。Cookieのsidとmessageをこれらに書き換えてリロードすると、キーが表示されます。messageはencodeURIComponentでエンコードしないとうまくいかないかもしれません。
This is the key!
http://shop.oreilly.com/product/9780596158118.do
Type the title of this book.
リンクを踏むとO'Reilly社の"Programming Python, 4th Edition"という書籍のページに飛びます。"Type the title of this book."ですので、Keyは"Programming Python, 4th Edition"ということになります。
もとのページに戻るにはCookieのいずれかを変更するまたは削除すれば良いです。これでフラグを解除できます。もとのページに戻ったらKeyのinputにProgramming Python, 4th Editionと入力してSubmitすることで正解であることを伝える旨のページに飛ぶことができます。
いかがでしたでしょうか。楽しんでいただけたでしょうか。または、簡単すぎたでしょうか。。。Cookieとかいきなり関係ないところに飛ばすあたり悪問かなぁと公開してから反省しております。
というわけで最後に@masawadaへのお年玉情報です。ご協力よろしくお願いします。