All posts by yota

CTF入門 その2 (長田研アドベントカレンダー6日目)

M1の太田です。
さて、いろいろあって今日は12月9日ですね。
5日目の記事は某Dの先輩が某hatenaに匿名ダイアリーしたらしいです。
バランスボールについての記事でした。探してみて下さい。

CTF入門 その2

前回書いたCTF入門ですが、あれはコンピュータ寄りな内容だったので、今回はもうちょっと入門らしいこと書こうと思います。

CTFについて、前回は「セキュリティ技術を競うイベント」みたいに書いていたと思います。
でもCTFはコンピュータに限ったものではなくて、単なるなぞなぞみたいな問題も多数出題されるんです。

例えば、前回紹介したFlaggersの問題にこういうものがあります。
「タイトルは?
978410353422
978410353423
978410353425」
出題元URL

暗号みたいな感じですね。
今回はこれを解いてみたいと思います。

解いてみる

この数字でぐぐってみるとISBNという単語に当たります。
ISBNというのは書籍を特定するための番号で、学科で言えば学籍番号みたいなものです。

この数字が意味するところは…ぐぐると一発で出るので、これは自分で調べてみてください。

ついでに、ISBNにもチェックディジットがあったりするようです。
パリティっぽいですね。

これだけでは…

というわけでもう1つ解いてみます。
次の問題は以下の内容です。
「$ command1 | command2
答えは “|” を英語(小文字)で表記したものです。」
出題元URL

これはちょっとCUI触っていれば分かる通りですね。

終わりに

1つ目の問題でわかる通りですが、必ずしもコンピュータ関連の問題ばかりというわけではなく、いろいろな幅広い知識が求められる事が分かると思います。
他にもいろいろ、なぞなぞな要素だったり、それにコンピュータの知識が絡んでくるため、頭の体操とかにも良いかもしれないですね。

解いているうちに変な知識が増えてきて、すごく楽しいです。
面白そうだと感じた方は是非、CTFにチャレンジしてみてください。

511室に遊びにきてくれたら、教えきれる部分は教えます。
では、次はUMLかCSSの続きか…。
途中まで書いてるらしいUMLでもお願いしますかね。

CTF入門 (長田研アドベントカレンダー2日目)

こんにちは。
言い出しっぺなのに2日目に書く太田@M1です。

長田研のブログ、久しく更新してなかったというのと、このシーズンということで流行に乗りました。

12/3に2件投稿しているのは、12/2に1日目の記事を投稿する予定が、いろいろあって投稿時間が遅れて12/3になったためです。
そのため、1日目と2日目は同じ12/3の投稿となってます。

そんなわけで2日目のテーマですが、CTFです。

CTF ~ Capture The Flag ~

CTFというのは、セキュリティ技術を競う大会のことです。
セキュリティというより、コンピュータ全般とか?
日本ではSECCONとか、世界ではDEFCONとかがあります。

今回は、googleで
「CTF サイト」
と検索してトップに出てきたFlaggersというものをやってみます。

Flaggers

リンク: Flaggers
どうやら参加者同士で問題を出し合えるという、CTFのコミュニティサイトみたいな感じですね。

ここのeasycrackっていう問題をやってみようと思います。
問題のリンク: easycrack
簡単に問題を説明すると、
「オブジェクトファイルの中に答えあるから探してみてね」
っていう感じです。

では解いてみます。

解いてみる

貼付のファイルがあるので、それをダウンロードします。
実行ファイルですし、何があっても良いように仮想環境内で行うように注意してください。

まずは、fileコマンドを実行します。
すると、以下のように出力されます。
easycrack1.out: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, not stripped

ELFとあるので、オブジェクトファイル、実行ファイルであることが分かります。
intel 80386はi386ですね。
ファイル形式も分かったので、次はnmしてみます。

nmコマンドは、オブジェクトファイルのシンボルをリスト表示してくれるコマンドです。
特に変なことはしていなさそうです。
ということで実行してみます。

実行権限を与えて、実行してみると、
sorry…
という出力のみが得られます。

ここで実際にnmコマンドを使ってみた方は分かりますが、strcmpしている部分があります。
ので、これは実行ファイルに何らかの引数を与える必要がありそうです。

実際に引数を与えて実行してみると
wrong…
という出力に変化しました。

ここで大体予想はつきました。
どうやらこの引数の値に正しいものを入力すると良さそうです。

というわけで、objdumpでオブジェクトファイルのダンプをしてみます。
.rodataセクションを見てみると…
答えがありました。

入力するとちゃんと正解となり、ポイントもプラスされました。

終わりに

と、いうわけで今回はここまでです。

このように、コンピュータの知識を使って問題を解いていくCTF、勉強にもなるし、とても楽しいです。
競技プログラミングとか流行ってますが、この辺りもみなさん、是非挑戦してみてはどうでしょう?

次回は、M2の許田さんにお願いしようと思います。
B4の安里君とかは、ネタ考えておいて下さい〜。

青少年科学作品展に参加しました!

こんにちは、長田研仮配属生の太田陽祐です。藤原寛高ともども、よろしくお願いします。

長田研仮配生の伝統行事である青少年科学作品展に2/11(土)と2/12(日)の2日間、ブースを出展しました。

今回私たちが出展した内容は、ARとkinectの2つが中心で、自分の体を動かして体感するというものです。と、いうわけでタイトルは「体感するIT」。・・・まんまですね。

2日間で子供から大人までたくさんの方がブースに来てくれて、休む暇もなく常にバタバタしていた記憶があります。1日に何度も来てくれる方や、2日間ともに来てくれる方、いわゆるリピーターも多く見られました。

ARもkinectも不思議な技術だったようで、実際に体験してみるだけでなく、「これってどうやってるの?なんでこうなるの?」という質問も多かったです。来場してもらった方に興味を持ってもらえたように感じ、とても嬉しく思います。

今回の私たちの出展で情報工学に興味を持ってもらえていたら、魅力が伝わっていたら、これ以上のことはないですね♪

大変でしたが、とても貴重で、楽しい体験ができました。来年も参加できたら、是非行きたいものですね。

以下、会場と作品展終了後の写真です。

会場の様子です。

ARの体験中。

kinectの体験中。

私たちもやってみました。楽しいですよ♪
終わったら小さい打ち上げが…。先輩方、ありがとうございます。

伝統行事も終え、一安心です。

これから、よろしくお願いします!