nknskn ネタ置き場

IT使ってなんかやってる人間のたわごと

SECCON2015 冬に参加しました

最後の30分ぐらい問題を見るだけ見ました。
とりあえず解けたやつの write up です。

==================================================================================
Start SECCON CTF 50
ex1
Cipher:PXFR}QIVTMSZCNDKUWAGJB{LHYEO
Plain: ABCDEFGHIJKLMNOPQRSTUVWXYZ{}

ex2
Cipher:EV}ZZD{DWZRA}FFDNFGQO
Plain: {HELLOWORLDSECCONCTF}

quiz
Cipher:A}FFDNEVPFSGV}KZPN}GO
Plain: ?????????????????????
===========================================
ex1, ex2 を見ると置換されていることが分かりますね。
なのでおそらく換字式暗号を使った暗号化でしょう。
というわけでサクッとスクリプトを書いて終わり。
これは Execises ですし簡単ですね。
==========================
$ python
>>> s1 = 'PXFR}QIVTMSZCNDKUWAGJB{LHYEO'
>>> s2 = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ{}'
>>> c = 'A}FFDNEVPFSGV}KZPN}GO'

>>> for i in range(0, len(c)):
... for j in range(0, len(s1)):
... if c[i] == s1[j]:
... print s2[j],

S E C C O N { H A C K T H E P L A N E T }
スペースを削除して投入、正解。

SECCON{HACKTHEPLANET}
==================================================================================
Connect the server

login.pwn.seccon.jp:10000
===========================================
とりあえずブラウザでアクセスしたらファイルが落ちてきました。
「connect」として保存して、 file でこいつが何か見てみました。
==========================
$ file connect
connect: ASCII English text, with CRLF line terminators, with overstriking
==========================
ASCII English text とのことなので、中身を見てみます。
==========================
$ vim connect
CONNECT 300< <
Welcome to SECCON server.<<
The server is connected via slow dial-up connection.<
Please be patient, and do not brute-force.<
S^H ^HE^H ^HC^H ^HC^H ^HO^H ^HN^H ^H{^H ^HS^H ^Ho^H ^Hm^H ^He^H ^Ht^H ^Hi^H ^Hm^H ^He^H ^Hs^H ^H_^H ^Hw^H ^Hh^H ^Ha^H ^Ht^H ^H_^H ^Hy^H ^Ho^H ^Hu^H ^H_^H ^Hs^H ^He^H ^He^H ^H_^H ^Hi^H ^Hs^H ^H_^H ^HN^H ^HO^H ^HT^H ^H_^H ^Hw^H ^Hh^H ^Ha^H ^Ht^H ^H_^H ^Hy^H ^Ho^H ^Hu^H ^H_^H ^Hg^H ^He^H ^Ht^H ^H}^H ^H<
login:-<<
Login timer timed out.<
Thank you for your cooperation.<<
HINT: It is already in your hands.<<
Good bye.<
==========================

ファッ!?なんか「SECCON」らしき文字が見えます。
※「<」は vim の設定で表示されたものです。
==========================
$ cat connect_base
CONNECT 300

Welcome to SECCON server.

The server is connected via slow dial-up connection.
Please be patient, and do not brute-force.

login:

Login timer timed out.
Thank you for your cooperation.

HINT: It is already in your hands.

Good bye.
==========================
ふむ、cat では SECCON~ が表示されない。
cat を使った人への妨害なのかしら...とか思いつつとりあえず「^H ^H」を消してフラグに入れてみました。

SECCON{Sometimes_what_you_see_is_NOT_what_you_get}

正解でした。
正攻法は何だったんでしょうか...
==================================================================================
Last Challenge (Thank you for playing)
50 points
ex1
Cipher:PXFR}QIVTMSZCNDKUWAGJB{LHYEO
Plain: ABCDEFGHIJKLMNOPQRSTUVWXYZ{}

ex2
Cipher:EV}ZZD{DWZRA}FFDNFGQO
Plain: {HELLOWORLDSECCONCTF}

quiz
Cipher:A}FFDNEA}}HDJN}LGH}PWO
Plain: ??????????????????????
===========================================
最初の Exercises と同じですね。
省略。

SECCON{SEEYOUNEXTYEAR}
==================================================================================

他には例のごとくバーコード問題があったり、BONSAI さんがカムバックしてたりと色々ありました(手元に Mac しかなかったり時間無かったりであまり見れませんでしたが)。

そういえば apk をいじる問題がちょいちょいありましたね。
2015 横浜大会のときも android アプリが題材になってましたし、スマートフォン(iOS は問題にできるのかな...)の知識と経験が今後も求められるかもしれないなーなんて思いました。

さて、次回はちゃんと時間をとって挑みたいものです。
以上です。