Hacktory はサイバーセキュリティに関する知識やスキルを学べるオンライン学習プラットフォームらしく、ゲーミフィケーションの要素を取り入れた「夢中になれるサイバーセキュリティ教育プラットフォーム」と自身のことを紹介していました。
少しだけ遊んでみましたが、実際に手を動かして試すことができるようブラウザからアクセス可能な仮想環境がユーザ毎に提供されていました。また序盤は Linux を初めて利用する人向けの説明なども含まれおり、事前知識ゼロでも楽しめそうな雰囲気がありました。
なお、調べた限り運営組織が不明なので、利用される場合はこの点ご留意ください。
- Hacktory | Immersive cybersecurity educational platform
https://hacktory.ai/
Hacktory の紹介
Hacktory には Web セキュリティコース と Java セキュアプログラミングコース の2種類が用意されています。今回は Web セキュリティコースを選んでみました。なおコースはいつでも途中で変更できました。
Web セキュリティコースは15個の章に分かれており、ひとつひとつをクリアすることで次の章に進めるようになっています。 各章には冒頭に教科書的なページが用意されており、その章で必要となるツールや前提知識などが図や動画などを用いて解説されていました。
章の中身は、基本的には「解説」「選択式の設問(ない場合もある)」「実技(仮想環境を起動してチャットbotの問いに答える形で進める)」の3つから構成されていました。仮想環境での実技はコマンドやコマンドの実行結果から得られる単語などを答える形のもので、CTF のフラグを見つけるのに似ていました。
解説が丁寧に作られているので、事前知識ゼロでも楽しめそうな印象です。また各エクササイズも短くまとめてあるので、サクッと楽しめました。
クリアしていくとポイントが獲得でき、ランキングページで他のユーザと競ったり、結果を進捗画面で振り返ることができます。進捗の記録は毎日がんばると綺麗な芝生が生えそうな雰囲気がありました。*1
実績解除もあります。少しゲームっぽい感じが出ていました。
序盤はチャットbotが優しく誘導してくれるので、特にストレスなく進めますし、実際にカタカタカッターン!とできるのでやっている感もあっていい感じでした。実際に環境を用意する手間もなく、手を動かして試せるのは楽しかったです。
付録
仮想環境について
エクササイズ用にツールや環境が準備してあるので、基本的にはブラウザを起動すると解く対象サイトが表示されるところまでお膳立てされています。解くのに使うコマンドなどは解説のページに載っているほか、チャットbot が引数も含めて教えてくれるときもありました。なお、Webセキュリティだけで69個の仮想環境が用意されているようです。
仮想環境はユーザ毎に都度初期化された環境が提供されます。ブラウザ越しの操作のせいかそれなりにラグを感じるので、無理というほどではないですが、少し操作はしずらいです。ここが改善されるとカタカタカッターンが捗るように思いました。
仮想環境の起動と終了には1~2分程度かかるのでその間は進捗率を眺めながら待機です。また、起動直後からカウントダウンがされていたので、一定時間で自動終了するのだろうと思っていたのですが、プレミアムプランに入ると30分制限がなくなるようです。
なお、仮想環境へのアクセスで失敗する場合はブラウザを切り替えてみるといいかもしれません。
仮想環境のドメイン名(hcktrgw.com)について
仮想環境に接続する際に利用される「hcktrgw.com」については、セキュリティ機器によっては新規取得ドメイン名としてレピュテーションに引っかかる場合があるようです。
Java セキュアプログラミングコースについて
脆弱性のあるコードを参照してコードを修正する形で進めるようです。セキュアコーディングを題材に実際のコード修正までできるサイトは珍しいように思いました。
初回ログイン後に表示される解説について
初回ログイン後に「Attack」「Defence」という選択肢が表示されます。見たい解説の方を選べばよく、これによって何か変わるといったことはないようでした。また後から見たい場合は画面右上にあるユーザアイコンから「Help」を選び「Practice assignments」を選択することで見ることができます。
Hacktory の動画について
解説に含まれている動画が公開されているようだったので貼っておきます。
- Searching for files and directories - YouTube
https://www.youtube.com/watch?v=7emQ_yyWaMo
対応言語について
今のところ日本語には対応していないようでした。選択画面からは「英語」「ドイツ語」「フィンランド語」「フランス語」「ロシア語」などが確認できました。ただ、切り替えを行ったときに英語以外で表示されたのはロシア語のみでした。
運営組織が不明
運営組織についての情報が見つけられませんでした。*2
更新履歴
- 2021/01/04 新規作成
- 2021/01/04 一部表記を修正、「Java セキュアプログラミングコースについて」を追記