セキュリティ・ミニキャンプ in 東京 2022 参加記
この記事は SecHack365 Advent Calendar 2022の19日目の記事です。
セキュリティ・ミニキャンプ in 東京 2022に参加したので、その参加記を書いた。
セキュリティ・キャンプとは
「セキュリティ・キャンプ」は、学生に対して情報セキュリティに関する高度な技術教育を実施し、次代を担う情報セキュリティ人材を発掘・育成する事業です。2004年に開始され、現在は全国大会を首都圏で毎年1回、2013年に開始された地方大会を毎年各地で10回程度開催しています。(セキュリティ・キャンプ:IPA 独立行政法人 情報処理推進機構より引用)
セキュリティ・キャンプの主な活動は,毎年夏に行われる全国大会と年に10回程度行われる地方大会である。大会といっても参加者同士で競い合うわけではない。全国大会と地方大会の内容は,情報セキュリティの専門家の講義を受けることである。
全国大会は毎年夏に約一週間にわたって行われる。(2022年度の日程は2022年8月8日(月)〜2022年8月12日(金))
地方大会は1年に5,6回行われる。私が参加したのはこの地方大会(通称:ミニキャンプ)の方である。
セキュリティ・ミニキャンプ in 東京 2022
セキュリティ・ミニキャンプ in 東京 2022は12月17日(土)〜18日(日)の2日間でオンライン開催された。
トラックは3つ用意されており,受講者はその中から事前に選択した1つのトラックを受講する。
トラック
- Aトラック:モダンWebで学ぶWebセキュリティ入門,暗号目線で俯瞰するSSL/TLS,ペネトレーションテストを通じて学ぶAWSセキュリティ
- Bトラック:WEBアプリケーション診断入門(ハンズオン)(初学者向け)
- Cトラック:IoT機器の脆弱性診断をしてみよう〜メーカーにおける製品セキュリティへの取り組み〜
トラックの選択ではWebセキュリティに興味があったのでAトラックとBトラックの2つで悩んだが,Webセキュリティの知識がほとんどなかったので,初学者向けと書かれていたbトラック:WEBアプリケーション診断入門(ハンズオン)を受講した。
Bトラック WEBアプリケーション診断入門(ハンズオン)
講義は主に3つのブロックに分かれていた。
- OWASP ZAPを使用したwebアプリの脆弱性診断
- OWASP ZAPを使用したOWASP Juice Shopの脆弱性診断
- OWASP Juice ShopのChallange Level1,Level2にトライ
それぞれの内容と感想を次節で紹介する。
OWASP ZAPを使用したwebアプリの脆弱性診断
OWASP ZAPとはオープンソースのWebアプリ脆弱性診断ツールである。Webサイト脆弱性診断に関わる様々なことができる。OWASP ZAP
内容
このブロックでは、OWASP ZAPの基本的な使い方の説明と用意していただいたwebサイト(ローカル)に対して脆弱性診断を行いSQLインジェクション,XSS,XSRFを実際に行って,その挙動を確認した。
感想
これまでWebアプリ脆弱性について名前を知っている程度であったが,実際に手を動かすことで,どうしてこの脆弱性が危険なのかを知ることができた。
beutifyされたjsコードが逆コンパイルされたソースコードみたいで,慣れないと解析は難しそうだなと感じた。
OWASP ZAPを使用したOWASP Juice Shopの脆弱性診断
OWASP Juice ShopはOWASPが提供するやられサイトで,ジュース販売サイトぽい見た目をしている。OWASP Juice Shop | OWASP Foundation
内容
OWASP Juice Shopに対して,一般的なWebアプリ診断の流れに基づいた診断を行なった。
講義で紹介されたWebアプリ診断の流れをいかに示す。一部は講義内で行わなかった。
- クローリング
- アイソレート
- スキャン
- 手動診断
- リスク評価(未実施)
- 対策の提案(未実施)
感想
クローリング表を作ることで,Webアプリの全体像をつかめるので,未知のWebアプリに触れる上でクローリング表の作成は欠かせないなと感じた。
OWASP ZAPのスキャン機能が便利すぎたので,個人開発でWebアプリを作ったら必ずスキャンをかけようと思った。
CVSSを使用したリスク評価は計算が大変そうだなと思った。
OWASP Juice ShopのChallange Level1,Level2にトライ
内容
OWASP Juice ShopにはWebアプリ脆弱性に関するChallangeが用意されている。
Challangeは難易度によってLevel1~ Level6のレベル分けがされていて、各レベルに10~20個程度のChallangeがある。
本ブロックでは,Level1~Level2のChallengeを7つ行った。
- ScoreBoard
- Privacy Policy
- DOM XSS
- Bonus Payload
- Missing Encoding
- Login Admin
- View Basket
感想
検証者ツールを睨んで脆弱性を探す感じが宝探しをしているようで楽しかった。Challange DOM XSSはDOM XSS自体を理解せずに取り組んだので,大変苦戦した。htmlの内容をかえず,DOMツリー自体をいじるは面白い方法だなと思った。
全体の感想
とても学びのある2日間だった。よりセキュリティに興味を持ち,特にWebアプリ脆弱性楽しい!となったので,もっと勉強したい。
謝辞
最後にこの場を借りて貴重な機会を用意していただいた講師の方々,セキュリティ・キャンプ運営の方々に感謝を申し上げます。ありがとうございました。