/var/log/Sawada.log

SAINO中毒患者の備忘録。

セキュリティ・ミニキャンプ in 北海道 2016に参加してきた

一週間前のお話です。

はじめに

北大の情報基盤センターで開催されたセキュリティ・ミニキャンプ in 北海道 2016に参加してきました。以下のサイトから詳細と様子を知る事ができます。
security-camp.org
togetter.com
今まではFaceBookに投稿してきましたが、折角ですからこれを機に、はてなで備忘録をつけようと思います。そのうち、今年参加したイベント関連もこっちに書こうかな。

目次です。

講義など

きっかけ

今年の夏休みにCTF for ビギナーズに参加して以来、通信の解析や仮想サーバのセキュリティに興味があったので応募した次第です。今年の講義は、基礎的な話からサーバサイドアプリケーションの脆弱性調査、クラウドセキュリティ、情報系の法と倫理などなど幅広い内容なので、様々な問題を知ることができるかなと楽しみでした。そうは言っても大した知識がないので、講義内容について行けるか不安もありましたが...。

1日目

セキュリティ・キャンプ全国大会へ行こう

全国大会でどのような講義が行われているか、また全国大会へ応募するときにどんな事を書けば良いのかについてでした。残念ながら既に応募資格はありませんが、来年の問題は楽しんで解いてみようと思います。何事も熱意が大事。

セキュリティ基礎

ここ最近何かと耳にする機会の多いIoTについて、最近のセキュリティ問題*1を踏まえた上で、地方で安全な実装とメンテナンスを行うにはどうしたら良いかグループでのディスカッションを行いました。port23のTelnetは認証や通信を暗号化する仕組みが存在しないので、機器に対する攻撃を目的としたアクセスが増えているそう*2。解決策として

  • port22でssh接続する仕様に変更
  • 出荷時のpasswordをセキュアなものに変更する
  • 不穏な動き(ボット活動)を検知して自らshutdownする機能

など様々な案がありましたが、難しい問題なだけに根本的な解決策は思い浮かびませんでした。こういったディスカッションでは、他のグループが全く違う視点で考えていたりするので、はっと気付かされることが多いです。最後にIoTが汚染されないために、あえて清濁併呑な仕様でAIに不穏検知を任せる試みが提案され、面白いなぁと感心しつつも、もっと知識を増やさないといけないなと思ったりしていました。

スマホゲームでサーバサイドアプリケーションへの攻撃と対策を学ぼう

スケジュールが変更になり、OSS2016'doで"ひげ"の講演*3をなさっていた岸谷先生による講義と演習です。多くのスマホのアプリはHTTPプロトコルでサーバと通信するので、RequestとResponseの内容を操作して脆弱性診断をするそう。この演習が一番楽しかったです。使用したツールは「Burp Suite」。スマホにBurp Suiteを起動したPCを経由させることで、ムリゲー仕様のアプリのHTTP通信を解析し、「脆弱性を利用してクリアする」のがお題でした。
自分の攻撃によるダメージ量を示すRequestを書き換えることはわかりましたが、相手からのダメージを無効にすることに四苦八苦。結局、Request自体を破棄すれば良かったようです。ぐぬぬ。また、強力なステータスをもつユーザへの変更の際に、SQLインジェクションをするのかと思い、あれこれ試してみたけど、上手くいかず...それもそのはずDBはNoSQLでしたというオチ。ただNoSQLにも隙があることを学べたのでとても勉強になりました。講義で使用したゲームアプリ配布してほしかったなぁ...

若者相手のネットワークと法・倫理問題

みんなで自動運転やARをつかったアプリに関するケーススタディを行いました。法律と倫理問題の難しさを痛感。例えば、「通行人を助けるために自動運転のAIは運転者を犠牲にするべきか」という問題では、トンネル内において目の前に女の子がいる場合、停止できる速度ではない想定の下、

  1. 直進して女の子を犠牲にする
  2. 曲がって壁に激突して運転手が犠牲になる

の2択を選び、意見を出し合いました。

  • 車は乗ってる人の安全を第一に考えて通行人を轢く
  • 人でない可能性もある中で運転手が犠牲になるのはおかしい
  • 更に犠牲者を増やさないために壁に衝突すべき

など、人によって問題とする観点が違うので面白かったです。その他にもWinny著作権などのお話がありました。

2日目

朝方、準備していただいたホテルから外を眺めると冬になってました。昼には晴れていたので、紅葉と雪のコントラストが美しかったです。


クラウドセキュリティ基礎

正直、この講義が一番ついて行けるか不安でした。サーバ関連のインフラ技術は全くの初心者だったからです。応募の時もそんな事を書いたような気がします。講義の内容はwebシステムにおけるサービスの運用から、そのためのインフラ設計へと話が進み、メインテーマのクラウドからサーバレスの考え方へと移っていったと思います。

クラウドの登場でサーバはペットから家畜へ
実物のサーバを購入して運用しても、5年も経たないうちに「電気代を食うゴミ」になるので、一つ一つのサーバを管理する体制から、IaaSでサーバを大量に確保し、おかしな動作をしたサーバは手軽に捨てシステムの維持をしようという考え。インパクトが強い表現ですね。

そうした環境のもとでサービスを絶え間なく継続させるためには、アプリケーションを動かす事に特化し、追加削除を手軽にできるstatelessサーバと、データベースとして用いるstatefulサーバに分けて運用するそうです。つまり、データベースのセキュリティに全力を注ぐ訳ですね。他にも今後10年でクラウドはサーバをどのように変化させていくのか、などクラウドについて内容が濃く興味深い講義でした。

Linuxによるハードウェア制御の初歩

RaspberryPiをつかってハードウェアを制御するための基礎的な演習でした。が、仮想環境にUbuntuやらArchやら導入してる自分ではssh接続がちょっと面倒な事に。偶然(?)筆箱に入ってたKali(USB)に助けて貰いsudoeditで/etc/ssh/ssh_configを弄ってなんとか演習開始です。RPiでLEDを点滅させたり、モーター制御をしました。演習時間の関係から予め用意されたソースコードの実行のみだった為、少し残念な気もしました。講義資料を見ながら自分で作ってみる必要がありそうです。まずはRPiを入手しないと

まとめ&今後のこと

とてもとても濃い2日間でした。毎度のことですが、勉強会や講習は大学の講義と違って「刺激的」です。他の参加者からも気迫を感じるので、否応なしにもっと勉強したい意欲が高まります。ネットワークセキュリティをテーマに研究がしたいと考えていた時期もありましたが、こうして様々なお話を聞くと、より広く浅く他分野に手を出してみるべきだなと感じました。セキュリティもその一つ。こうしたイベントには積極的に参加していきたいです。
さて今後ですが、年内はCTF4bのおさらいも兼ねてSECCONの予選に参加と、さくらインターネット様より2万円分のクーポン券を貰ったのでwebサーバか、或いは演習室から接続するためのVPSを構築したいと考えています。演習で扱ったツールをより理解する為にThe Hacker Play Bookも買ってしまいました(ついでに仮想環境で無線を認識するためのアダプタも)。やるべきことは色々ありますので、このモチベーションを維持しつつ年末まで過ごしたいです。

サイバーセキュリティテスト完全ガイド ~Kali Linuxによるペネトレーションテスト~

サイバーセキュリティテスト完全ガイド ~Kali Linuxによるペネトレーションテスト~

終わりに

セキュリティ・ミニキャンプin北海道の凄いのは何と言っても、参加費、食費、宿泊費の全てが無料なことで、これだけ手厚くサポートして貰って勉強できる機会は道内じゃ滅多にありません。更に今回は交通費も特急利用(ここ重要)で支援を受ける事ができました。講師やチューター、実施協議会をはじめ、LOCAL、サポーターズの皆様、本当にありがとうございました。