ふるつき

私は素直に思ったことを書いてるけど、上から目線だって言われる

SECCON福島「サイバー甲子園」に行ってきたよ

 去る某日、福島県会津大学にて行われました、SECCON福島大会、名をサイバー甲子園。それに参加してきました。これは18歳以下の学生が集う大会で、甲子園の名の通りに学校ごとにチームを組んで戦いました。私はptr-yudaiと共にinsecureというチームで出場しました。

まとめ

 まとめると、2位でした。すごい。これによって、SECCON intercollegeの参加権を獲得しました。とはいえ、頑張ったのは私ではなくてptr-yudaiの方で、点数のほとんどは彼の功労でした。

write up

とはいえ、私だって一問も解いていないというわけじゃない。数問解きましたので憶えている範囲でのwrite upを行います。問題名とか適当です。

[unknown] 100pt invisible flag

pngが渡されます。問題文は「pngが壊れているのかな?」みたいな文章でした。開いてみると確かに真っ黒でしたが開けたので壊れたわけではないはず→stegsolveで解けました。FLAGはSECCON{INVISIBLE_FOR_HUMAN}でした。画像だったので手打ち。

f:id:Furutsuki:20151108174021p:plainf:id:Furutsuki:20151108174029p:plain

[unknown] 100pt PDF

なんかPDFがあります。「黒塗りには気をつけよう」みたいな問題文。疲れからか……。 それはそれとして、PDFを見るとなんかいろいろ文章があるんですが、ところどころ黒塗りになっています。SECCON{______}みたいなのを見つけたので、そこを選択してコピー&ペッと適当な場所に。するとFLAG書いてありました。上から黒く塗っても意味ないよという話。頑張ってキャッシュからpdf探したけど黒塗りされた部分しかわからなかったので上げない。SECCON{kuronuri_chuui}

 追記

 @yuikibis さんが問題もってました。感謝!

https://drive.google.com/open?id=0B_HdShSGuMe9SEFkNnZvdlhsVms

[crypt] 100pt ?

ptr-yudaiに言われて解いた。rot_13するだけ問題。最近のrot13は<?php echo str_rot13("_");が流行り。FLAGだけ残してたのであげるとSECCON{seeyouonthenextsecconday}。たしか、ローマ字で、こういうFLAG書けっていう指示があった。

追記

 これも@yuikibisさんに頂いた。頭が上がらん……

lbhxbfb frxhxbaab fnvon-xbhfuvraur. xbab zbaqnvab shenthab {} ab anxnzvun, ghtvab frxhxbaab uvav nvznflbh, gbvh ohafubhjb rvtbavfuvgn ohafubhqrfh. anxnzvabfhorgrabzbwvun rvxbzbwvqr, unaxnxh fhcr-fhun unohxvznfh. lbzvun fv-lh-baa-mn-arxhfhgb-frxhxba-qrv.

[binary] 200pt reversed porland

ptr-yudaiに「解ける?」って言われて苦戦してた。こういうのに時間を取られるからだめ。問題としては、逆ポーランド記法で書かれた長い数式(しかも数が大きい)が渡されて、それをごにょごにょする。ちょっと詳しく書く。

  1. 数式の各数値は2〜36進数で記述されていて-?\w+([0-9]+)って感じになってる(つまり、数値をあらわす数桁の後に弧で括られた基数がある)。まずはこれを揃える。都合よくpythonのint関数は36進数まで対応している(なぜなら、0-9A-Zで36だから)。ところで-がつくやつをちゃんとパースしなかった結果最終的な数値がアでアだった。

  2. 直したら数式を計算する。ポーランド記法にしてschemeに突っ込めばいいやと思ってたけど甘かった。schemeとかほぼほぼ触ってないしむりだった。結局pythonのコード引っ張ってきた。

  3. 結果を16進にする。そして1byteずつに区切って英字としてみる。するとフラグだ。

pythonのソルバ書いたのであげときます。

SECCON福島大会 サイバー甲子園 Programming 200pt

[binary] 300pt baseball

甲子園ということで本家に肖りて、野球の問題。ncで接続した先のゲームをシミュレーションする。ptr-yudaiは野球のルールしらないらしくて投げてきた。 これが曲者というかばぐらせまくってじかんぎりぎりまでかかった。ドラマが生まれた。HitとDeadBallの違いがわかってなかった。細かい話は実装をみてくれ。これに時間を取られている間にptr-yudaiが問題を解きまくってscryptosに追いすがってた。感謝しか無い

SECCON福島大会 サイバー甲子園の Programming 300pt問題


多分writeupおわり。最終スコアは2300位だったから私の貢献は大体三割くらい。圧倒的ptr-yudai力。それでも私が口を挟んだところもあるしptr-yudaiに相談したところ、これやれって言われたところはあるので、ちーむちーむ。というかProgrammingに時間食われすぎたなぁ。

雑感とか

  • 交通費出たの大変有難うございます。これがなかったら会津まで来てない。さらに宿泊費まで持ってもらって手配までしてもらって至れり尽くせり。スポンサ様方のお陰かしら。助かりました。
  • CTF前というのにHSPばかり書く一週間を過ごしていた。アレはよくない。過去問題とかいろいろちゃんとみとくべきやね。
  • ForensicsとかExploitとか出なかったのは手加減かしら。出していいのよ。解けないだろうけれど。