問題文: Decrypt please
Ocmln. up.’g.bjf abanfoco odrgne er yd. ypcjt d.p. /,.nnw urp yd. mroy lapy=v
Ydco y.qy ,ao ,pcyy.b gocbi a ol.jcan t.fxrapew br bry .pirbrmcjw frg aoodayv
WdcbyV Yd. t.f frg ap. nrrtcbi urp co yd. bam.oat. ru ydco t.fxrapev WzdcbyV
超訳:どうぞ、復号してください。暗号部分略。
とりあえず、問題を眺めますw
短い単語に着目しながら色々考えてみます。
文字を置き換えるだけの暗号の場合、短い単語だと
「it」「do」「us」「we」「to」「me」などなど
当たりをつけていきやすいからです。
基本中の基本
ROT系を試してみたりもしました。
そこでふと、それを否定するようなものを見つけました。
gocbi a ol.jcan
この部分です。
1文字の部分。
1文字なのに「a」ですね。
原文が英語だとするとこの時点で少なくとも「a」は置き換わっていない。
と推測されます。
暗号文の中に記号がかなり混入していることを考えると
何かの配列に置き換えてるのでは?とぼんやり考えました。
そこでGoogleで「キーボード」「配列」で検索し
キー配列 -Wikipedia
に辿り着きました。
上記ページのココを見ると色々なキーボードが並んでいます。
そこでQWERTY系の配列以外のもので「a」の位置が同じものを探すと
Dvorak配列がそれに該当しました。
試しに、2文字の単語を置き換えてみます。
「er yd.」は「do the」になりました。
ということでこの配列に従って暗号文をDvorak配列からQWERTY配列に置き換えました。
置き換え結果は以下の通りです。
Simple frequency analysis should do the trick here [well, for the most part].
This text was written using a special keyboard, no not ergonomic, you asshat.
<hint> The key you are looking for is the namesake of this keyboard. </hint>
注目すべきはhintの部分。
超訳すると
「あなたが探しているキーはこのキーボードの同名の人です。」
暗号文を復号するまでもなく答えは既に見ていたようです。
というわけで答えは
「dvorak」
DEFCON 18 CTF Crypto Badness 100(c100) writeup
DEFCON 18 CTF Binary L33tness 100(b100) writeup
問題文: Find the key
超訳:キーをみつけて。
問題ファイル
問題ファイルが何かを確認。
pentest@pubuntu:~/ctf/binary100$ ls
b100_4c5cd364e89fd34.bin
pentest@pubuntu:~/ctf/binary100$ file b100_4c5cd364e89fd34.bin
b100_4c5cd364e89fd34.bin: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, stripped
Linuxバイナリなので、実行してみます。
pentest@pubuntu:~/ctf/binary100$ ./b100_4c5cd364e89fd34.bin「キーをお願いします。」と言われます。
Please supply a keypentest@pubuntu:~/ctf/binary100$
引数に何か与えるパターンっぽいですね。
適当に色々試してみる。
pentest@pubuntu:~/ctf/binary100$ ./b100_4c5cd364e89fd34.bin a文字数があまり関係ない?
I hope you got it! Good luck
&0iE.m5 J
]{>=5tC!B
pentest@pubuntu:~/ctf/binary100$ ./b100_4c5cd364e89fd34.bin aaaa
I hope you got it! Good luck
&0iE.m5 J
]{>=5tC!B
pentest@pubuntu:~/ctf/binary100$ ./b100_4c5cd364e89fd34.bin b
I hope you got it! Good luck
ۓ{%ԥN^!xJ ¶_nä
pentest@pubuntu:~/ctf/binary100$ ./b100_4c5cd364e89fd34.bin bbbbbbbbbbbbb
I hope you got it! Good luck
ۓ{%ԥN^!xJ ¶_nä
ということで分析もせず、色々記号をためしてみました。
pentest@pubuntu:~/ctf/binary100$ ./b100_4c5cd364e89fd34.bin #あら?何も入力しなかったのときと同じ挙動ですね。
Please supply a keypentest@pubuntu:~/ctf/binary100$ ./b100_4c5cd364e89fd34.bin ###
Please supply a keypentest@pubuntu:~/ctf/binary100$
というわけで色々試しているうちに下記のような挙動。
「”"」って文字列長ゼロってことでしょうか。
pentest@pubuntu:~/ctf/binary100$ ./b100_4c5cd364e89fd34.bin ""
I hope you got it! Good luck
M.+Q
The real key is: bob's yer mom
pentest@pubuntu:~/ctf/binary100$
ということで正解は
「bob’s yer mom」
でした。
DEFCON 18 CTF Crypto Badness 300(c300) writeup
問題文: Would you like to play a game
超訳:あなたはゲームをしたいですか?
問題ファイル
とりあえず、問題ファイルが何かという確認。
pentest@pubuntu:~/ctf/crypto300$ ls
c300_f75bec6f545034716.gz
pentest@pubuntu:~/ctf/crypto300$ file c300_f75bec6f545034716.gz
c300_f75bec6f545034716.gz: gzip compressed data, from Unix, last modified: Sun May 23 05:00:16 2010
pentest@pubuntu:~/ctf/crypto300$ gunzip -d c300_f75bec6f545034716.gz
pentest@pubuntu:~/ctf/crypto300$ ls
c300_f75bec6f545034716
pentest@pubuntu:~/ctf/crypto300$ file c300_f75bec6f545034716
c300_f75bec6f545034716: POSIX tar archive (GNU)
pentest@pubuntu:~/ctf/crypto300$ tar xvf c300_f75bec6f545034716
c300_f75bec6f545034716.xls
pentest@pubuntu:~/ctf/crypto300$ file c300_f75bec6f545034716.xls
c300_f75bec6f545034716.xls: CDF V2 Document, Little Endian, Os: Windows, Version 5.1, Code page: 1252, Name of Creating Application: Microsoft Excel, Create Time/Date: Wed Jul 26 11:18:57 2006, Last Saved Time/Date: Wed May 26 19:41:29 2010, Security: 1
エクセルファイルのようです。
Read More »
DEFCON 18 CTF Trivial Pursuits (t100) writeup
書き残すほどでも、解説するほどでもないかもしれませんが
とりあえず書いておきます。
問題文: What common linux command was quoted in the movie spiderman?
超訳:映画スパイダーマンからの引用が使われている一般的なlinuxコマンドは何?
スパイダーマンからの引用といえば
ベンおじさんの名言
“with great power comes great responsibility”
「大きな力には、大いなる責任が伴う」的な感じでしょうか。
spider-Man Wikiperia
で、この名言が表示されるコマンドを調べてみます。
with great power comes great responsibility linux command
でgoogleで検索すると
sudo – Wikipedia
がヒットしました。
ユーザーがアクセスを拒否されたときに表示されるようです。
また、こちらによると
初回起動時にでも出るそうです。
ちなみにこの問題、手動ブルートフォースでも解けますね。
common linux commandですからw
というわけで答えは
「sudo」
でした。
John The Ripper 1.7.3.4 インストールメモ
徐々にバージョンアップが繰り返されることで手元のものとバージョンが離されていることが気になっていた「John The Ripper」。
作りかけの検査用VMもあり、折角なので最新版のインストールをしました。
そのときのメモです。
環境は、Ubuntu 9.10です。
Read More »
8080(Gumblar)はFFFTPも狙うのだそうです。
仕事始めから間も無くして世間を騒がせている。そんな、Gumblar(便宜上こう呼びます)。
情報が出尽くしてきた感もあったのですが
ここにきてFFFTPは危ないよーという話題がでてきているようです。
危ないと言われている理由は
「暗号化されたパスワードがシステム内に保存されてしまっている。」
ということだそうです。
日本中が、少しずつ出てくる情報に振り回されている感が満載なので
ボクも振り回されてみることにしました。
というわけで「FFFTP」をインストールしてどのようにパスワードが保存されているのか。
どうすればシステム内から消えるのかという確認をしてみました。
# ボクの自宅の環境下で手前味噌な検証なので
# みなさんの環境でも同じかどうかの確証はないです。すいません。
Read More »

