セキュリティミニキャンプ in 沖縄
12/8,9の2日間,セキュリティミニキャンプ in Okinawaに参加してきました.
どのような講義を受け何を学んだのか記していきたいと思います┏( .-. ┏ ) ┓
受講した講義
- Webアプリケーションセキュリティ入門
- セキュリティツール開発入門 ~Webサーバのセキュリティを検査する~
- 疑似スマートホームセキュリティ検証で学ぶIoTセキュリティ基礎
- IoT機器リバースエンジニアリング入門
個人的にはWebアプリを製作途中なので「Webアプリケーションセキュリティ入門」は学ぶことが多かったと思います. IoTの講義が多いのは生活に身近になってきたので重要度が増してきたのかなと.
Webアプリケーションセキュリティ入門
一番興味があった講義です.
用意されたチケットサイトにXSSやSQL Injectionといった攻撃を仕掛けてみて,どのような脆弱性が存在しどう対処すべきか学ぶ実践的な講義でした.
一見して何の変哲もないサイトなのですが,入力フォームにスクリプトやSQLを埋め込むと簡単にクラックできてしまったので驚きました.
きちんとセキュリティ対策を行わないと,いとも簡単に顧客情報等の情報が漏れてしまい社会的な信用も失うことになることがわかり,セキュリティの重要性を感じました.
また,ある程度意識しなくともRails等のフレームワークではセキュリティ対策が行われていることを知り,先人の知恵が詰まったフレームワークの素晴らしさを知ることとなりました.(Webアプリ作成時XSSとかSQL Injectionとか全く意識してないけど対策されてた...)
一度フレームに頼らずWebアプリつくってみて,どういった脆弱性があるか検証してみたいです. すごく大変そうだけど(^_^;)
攻撃手法を知ることで守る術を学ぶことができる授業でした^_^
セキュリティツール開発入門 ~Webサーバのセキュリティを検査する~
WebサーバApacheのセキュリティツールをPython2を使って作成していく講義でした.
個人的には最初のお話が良くて得ることが多かったです.
自分でセキュリティツールを作る意味とか,自動化する理由など,これからのエンジニア人生で活かせそうな考え方を教わったと思います.
個人的に思っていた「なんでPython2なの?」もちゃんとした理由があってすごく納得しました.
「開発者の負担を最小限かつセキュアに.」セキュリティエンジニアならではの考え方だなと. ただPython3に移行するコストを考えると,なかなか判断が難しいところじゃないかなーと思います.
環境構築でオワタ\(^o^)/
実際にセキュリティツールを作成しようと作業に取り掛かったのですが,VMのssh等の環境構築につまずきPythonモジュールをimportしたところで息絶えました(笑)
ほんとはプログラムをいじってツールを作りたかったですが,環境構築のノウハウを学べたので収穫はあったと思います(震え
VMをもらえたので時間あるときいじりたいです.
疑似スマートホームセキュリティ検証で学ぶIoTセキュリティ基礎
スマートホーム環境へのペネトレーションテストをチームで行い,脆弱性検証を行う講義でした.
簡単なパスワードが設定されている無線LANに,ツールで辞書攻撃を仕掛けると容易にパスワードクラックできてしまったので,簡単なフレーズまたは初期設定のままの状態がいかに危険か実感しました.
セキュリティツールやネットワーク関連コマンドの基本的な使い方を学びつつ,IoT機器の脆弱性について考えるきっかけとなりました.
コナンの映画みたいにポットが爆発したら怖いわなあ...
また今回CTF形式での授業だったので,チームで協力して作業を進めることができ純粋に楽しかったです.課題をクリアした時は達成感もあって,大会にも参加してみたいと思いました.
IoT機器リバースエンジニアリング入門
IoT機器を対象にリバースエンジニアリングを行い,脆弱性分析をおこなう授業でした.
私が所属している学科では,3年生までの授業でハードウェアを扱うことがあまりないので新鮮な作業でした.
時間の都合上,IoT機器からのデータの抜き出し等は行なえませんでしたが,OSのシステムファイルを抜き出すことが可能だと知り,身近なIoT機器もそうなる可能性があるのはこわいなと思いました./etc/passwdとか取られたらヤバそう...
個人的にIoTの分野はハードからソフトまで幅広く触れるところが魅力だと思います.IoTのリバースエンジニアリングができる人は両方触れるので本当にすごい...
まとめ
様々な視点からセキュリティについて勉強していきましたが,一番大事なことはダークサイドに落ちない倫理観じゃないかなと感じました.
セキュリティについての知識は攻撃にも使えるので,今回講義で学んだことを悪用してクラッキングができてしまいます.
なぜセキュリティエンジニアがそういうことに力を使わないのか.と考えると,仕事に対して誇りを持ってるからだろうなと思います. 人のためにスキルを活用できるってすごく働きがいがありそうですしね^_^
将来はWebエンジニアを目指しているので, 今回学んだことを活かして, 人の訳に立つWebサービスをセキュアに構築できる2刀流エンジニアになりたいです.