Pages

山王小学校でワークショップ納めをしてきた

2012年12月30日日曜日
12月27日 多賀城市内にある山王小学校で今年最後のプログラミングワークショップをやってきました。

子供たちは、目の前で「猫(キャラクター)」が動く度にワイワイキャッキャッと喜んでおりまいした。
ある程度、猫の動かし方が分かったら、今度は、「ネズミ(自キャラ)」を追加して、「猫から逃げろ!」というゲームを作ります。
一つ一つ操作方法を説明すると子供たちがゲームの作り方を覚えます。
慣れてくると自分で猫の数を増やしたり、大きさを変えたり、猫以外のサメや、バッファローを追加したり、自分でカスタマイズして楽しんでおりました。



Read more ...

荒町小学校でワークショップをやってきた

2012年12月27日木曜日
12月26日荒町小学校で開催されたプログラミングワークショップに参加して来ました。
※詳しくはこちら

今回は、冬休み期間に開催ということもあり小学1年生から6年生まで参加希望者約60名(午前と午後の2回開催)を対象に行われました。
夏に開催した「プログラミングワークショップ in 宮城」に参加した子がリピーターとして参加してくれたり、Facebookにアップした設営中の写真を見た方から参加希望の依頼を受けたり、大学生や、専門学生、高専の学生さん、小学生のScratchエンジニアさんもいたりと普段とは違った雰囲気が味わえた一日でした。

次回は、今年最後のプログラミングワークショップは多賀城市立山王小学校。
最後まで全力で楽しんでもらいます!


Read more ...

セキュリティのお勉強① ツールの準備

2012年12月25日火曜日
今更ながら、セキュリティのお勉強がてら、Metasploit 環境を構築し始めた。

今日やったこと


  1. nmap のインストール
  2. metasploit のインストール
  3. postgresql のインストール


事前準備

MacPort がインストールされていることが前提なので、ここここを参照してインストールしてください。

セキュリティ環境の準備

NMapのインストール

sudo port install nmap

Matasploitのインストール

sudo port install metasploit3

PostgreSQLのインストール

sudo port install postgresql92-server


補足


postgresql はいくつかバージョンがあります。
今回は9.2をインストールしていますが、まだ未検証なので、問題が起きたら、今後のブログで報告します。

バージョンの確認

sudo port list | grep postgresql

コマンドを実行した結果(自分の環境)


qt4-mac-postgresql91-plugin    @4.8.4          aqua/qt4-mac-postgresql91-plugin
qt4-mac-postgresql80-plugin    @4.8.4          aqua/qt4-mac-postgresql91-plugin
qt4-mac-postgresql81-plugin    @4.8.4          aqua/qt4-mac-postgresql91-plugin
qt4-mac-postgresql82-plugin    @4.8.4          aqua/qt4-mac-postgresql91-plugin
qt4-mac-postgresql83-plugin    @4.8.4          aqua/qt4-mac-postgresql91-plugin
qt4-mac-postgresql84-plugin    @4.8.4          aqua/qt4-mac-postgresql91-plugin
qt4-mac-postgresql90-plugin    @4.8.4          aqua/qt4-mac-postgresql91-plugin
qt4-mac-postgresql92-plugin    @4.8.4          aqua/qt4-mac-postgresql91-plugin
libzdb-postgresql80            @2.10.5         databases/libzdb-mysql55
libzdb-postgresql81            @2.10.5         databases/libzdb-mysql55
libzdb-postgresql82            @2.10.5         databases/libzdb-mysql55
libzdb-postgresql83            @2.10.5         databases/libzdb-mysql55
libzdb-postgresql84            @2.10.5         databases/libzdb-mysql55
libzdb-postgresql90            @2.10.5         databases/libzdb-mysql55
libzdb-postgresql91            @2.10.5         databases/libzdb-mysql55
libzdb-postgresql92            @2.10.5         databases/libzdb-mysql55
postgresql-devel               @9.1alpha       databases/postgresql-devel
postgresql-server-devel        @9.1alpha       databases/postgresql-server-devel
postgresql-unaccent            @0.1            databases/postgresql-unaccent
postgresql7                    @7.4.24         databases/postgresql7
postgresql80                   @8.0.26         databases/postgresql80
postgresql80-doc               @8.0.26         databases/postgresql80-doc
postgresql80-server            @8.0.26         databases/postgresql80-server
postgresql81                   @8.1.23         databases/postgresql81
postgresql81-doc               @8.1.23         databases/postgresql81-doc
postgresql81-server            @8.1.23         databases/postgresql81-server
postgresql82                   @8.2.23         databases/postgresql82
postgresql82-doc               @8.2.23         databases/postgresql82-doc
postgresql82-server            @8.2.23         databases/postgresql82-server
postgresql83                   @8.3.22         databases/postgresql83
postgresql83-doc               @8.3.22         databases/postgresql83-doc
postgresql83-server            @8.3.22         databases/postgresql83-server
postgresql84                   @8.4.15         databases/postgresql84
postgresql84-doc               @8.4.15         databases/postgresql84-doc
postgresql84-server            @8.4.15         databases/postgresql84-server
postgresql90                   @9.0.11         databases/postgresql90
postgresql90-doc               @9.0.11         databases/postgresql90-doc
postgresql90-server            @9.0.11         databases/postgresql90-server
postgresql91                   @9.1.7          databases/postgresql91
postgresql91-doc               @9.1.7          databases/postgresql91-doc
postgresql91-server            @9.1.7          databases/postgresql91-server
postgresql92                   @9.2.2          databases/postgresql92
postgresql92-doc               @9.2.2          databases/postgresql92-doc
postgresql92-server            @9.2.2          databases/postgresql92-server
postgresql_autodoc             @1.31           databases/postgresql_autodoc
postgresql_select              @0.1            databases/postgresql_select
ocaml-postgresql               @1.18.0         devel/ocaml-postgresql
postgresql-jdbc                @9.1-901        java/postgresql-jdbc
php55-postgresql               @5.5.0alpha1    lang/php
php54-postgresql               @5.4.9          lang/php
php53-postgresql               @5.3.19         lang/php
php5-postgresql                @5.3.19         php/php5-postgresql
py-postgresql                  @1.0.3          python/py-postgresql
py31-postgresql                @1.0.3          python/py-postgresql
py32-postgresql                @1.0.3          python/py-postgresql
py-postgresql-exception        @0.2            python/py-postgresql-exception
py-postgresql-greentrunk       @0.1            python/py-postgresql-greentrunk
py-postgresql-layout           @0.3            python/py-postgresql-layout
py-postgresql-pqueue           @0.1            python/py-postgresql-pqueue
py-postgresql-proboscis        @0.1            python/py-postgresql-proboscis
Read more ...

万葉ふれあいセンターでプログラミングワークショップをやってきた

2012年12月25日火曜日
12月23日に南相馬市鹿島区にある万葉ふれあいセンターということろで
プログラミングワークショップをやってきました。

ワークショップに使用したコンテンツは、NPO法人 CANVASさんとOtOMOのご協力もあり「プログラミングワークショップ in 宮城」でやっている「猫から逃げろ!」を使わせて頂きました。

なぜ、南相馬市でワークショップをすることになったかというと、
以前、Androidのイベントで知り合った南相馬市に住むとお方から、
 「子供たちに学習支援をする活動が開催される。
  そこで、良かったら前に話しをしていたワークショップをやってみない?」
とのこと。
なんともありがたいお申し出、土曜日に伺う旨をお伝えし、準備に取り掛かります。
※つくづく人の繋がりっておもしろいなと思う出来事でした。

会場となる万葉ふれあいセンターでは、地域の保護者の方が、大学生と協力して学習支援を行なっています。始まったのもの今年の夏からで、今回で2回目。
立ち上げ当初は、4人で順番に子供たちの面倒やボランティア学生の送り迎えなど、てんやわんやになっていましたそうですが、今回は2回目ということと、お手伝いの保護者の方が増えたお陰で少し余裕ができたそうです。
※そこで、少し内容を充実させたいと僕のところに連絡があったとのこと。

参加人数は、十数名(途中入れ替わりがあったので、正確に把握しておらず)

下は小学1年生、上は中学3年生までバラエティに飛んだワークショップとなりました。
小学生の男の子は人懐っこく、分からないことがあるとすぐにどうしたら良いのか質問してくれました。
女の子の方は恥ずかしいのか、僕のようなおっさんが嫌なのか、直接質問はしてくれませんでしたが、ボランティアの大学生を経由して質問してくれていたので良かったです。
中学生は、パソコンに慣れていることもあり、少し話しを聞くだけで自分なりのアレンジを加え、先行して独自のゲームを作ったりと、小学生とは違った雰囲気でまた良かった。
ちなみに質問があるときは、自分からではなく、小学生の男の子を経由して質問をしていましたのが、なんか微笑ましかったです。(笑)



独立したばかりで、たくさんの方々の協力を頂きながら進めております。
これからもこんな活動を続けて参りますので、ご協力頂けるかたお待ちしております。



Read more ...

CTFチャレンジジャパンにチャレンジしてきた感想 ver 最終日

2012年12月20日木曜日
前日は、エシカルハッキングや、実際のハッキング手法について勉強しました。
→参照はこちら
予選最終日は、実際にサーバーの脆弱性をつついて、フラグとなるファイルを奪取します。
※大会の制約上、詳しい事をかけないので、こんな表現になります。

全員が集まってのミーティングは、仕事の都合で1度しかできませんでした。
しかし、事前に決めていた作戦がビッタリはまり優勝!チームの方々には感謝感謝です。
結果だけみると華々しいのですが、実は、作戦といいつつも山を張って、それが当てはまっただけなのですが、、、
はまらなかったら、きっと優勝どころか入賞もできなかっただろうなぁ...

2月2日〜2月3日に本戦が開催されます。
勝ち上がってきた方々は、無知の僕でも名前を知っている方々ばかりなので、これまた楽しみが増えたことになります。
また、対戦相手もさることながら、本戦の問題は、バイナリ解析や、暗号解読など
今からワクワクしてしまう問題ばかり!
2月が楽しみですね



================================================================
以降は、かなり大雑把ですが覚えている限りの範囲で(時間を書いていますが曖昧です)
9:30 説明
 事務局から、今回のハッキングの目的や、禁止事項など、簡単な説明を受けました
10:00 予選開始
10:20 とあるチームさんが最初にフラグを取得(一番最初にフラグゲットならず)
10:30 続いて forza!TOHOKU(僕らのチーム)が1つ目フラグを取得

10:40 続けざまに forza!TOHOKUが2つ目のフラグを取得
〜〜ここからは、3つ目のフラグがなかなか取れず、周りを見る余裕すらなかったです〜〜
13:30 とあるチームさん2つ目のフラグを取得
14:00 全チームがフラグを1つずつゲット
  (全チームがフラグを取得できたのは仙台大会だけだったとか)
14:30 フラグを取得しても公開されなくなる
14:55 forza!TOHOKUが3つ目のフラグを取得

14:58 とあるチームさんが3つ目のにフラグを取得

Read more ...

CTFチャレンジジャパンにチャレンジしてきた感想 ver 初日

2012年12月20日木曜日

12月8日と9日にCTFチャレンジジャパン2012(地方予選)に参加してきました。
詳細なフラッグの取得方法や、攻略方法を書くことができないのですが、雰囲気をお伝えできたらと思います。

初日は、10時〜20時まで長丁場のオリエンテーションでした。
主なタイムテーブルは、ここと下記参照でお願い致します。

座学→練習用サーバーに攻撃→座学→練習用サーバーに攻撃というようにハンズオン形式で学習が進められます。
基礎からしっかり教えてくれるので、データベースやWebアプリケーションを自分で作ったことがある方なら、すんなりと学習できるのではないでしょうか

講義の中で自分が勉強になったのは、お客様との調整で気をつけなければいけないところでした。
実際にお客様の環境へ脆弱性のテストを実施したことがないので、要領が分かっておけただけでもありがたい話でした。


================== 以降、スケジュール ==================

10:00-12:00
エシカルハッキング
倫理的なセキュリティエンジニアリング
ペネトレーションテストと脆弱性スキャン
エシカルハッキングの種類
エシカルハッキングの流れ
クラウドとエシカルハッキング

12:00-13:00
昼休

13:00-16:30
Webアプリケーションに対する攻撃手法(原理・実例・演習・対策)
Webアプリケーションの基本的な動作
クロスサイトスクリプティング脆弱性
関連チェック不備による脆弱性
SQLインジェクション脆弱性

16:30-19:30
ネットワーク・システム基盤に対する攻撃手法(原理・実例・演習・対策)
脆弱性スキャン
セキュリティホールの悪用
パスワードクラック
ネットワーク盗聴

19:30-20:00
インターネット公開システムセキュリティの実態
セキュリティ診断結果の分析
脆弱性を埋め込まないために必要な取り組み
脆弱性を埋め込んでしまう理由
上流工程から取り組むセキュリティ

Read more ...