TOP

アクティビティ

コラム

エンジニアコラム

エンジニア向けセキュリティ研修レポート:BadTodoListを活用した実践的チーム学習

エンジニアコラム

広い技術領域をカバーする当社の機械学習エンジニアが、アカデミア発のAI&機械学習技術を紹介&解説いたします。

エンジニア向けセキュリティ研修レポート:
BadTodoListを活用した実践的チーム学習

2025.7.28
株式会社Laboro.AI システム開発エンジニア 田上 諭

概 要

当社でももちろん、AI開発に当たってセキュリティを重視しており、そのための取り組みの一環として、「BadTodoList」という教材を活用して、当社のエンジニアリング部のメンバーを対象にオンラインでセキュリティ研修を実施しました。参加者同士の活発な議論と実践的な演習が実施され、結論として大変有意義な研修となりました。その研修の様子と得られた学びについて紹介します。

目 次

セキュリティ研修を実施した背景
研修概要:実践的な教材「BadTodoList」を活用
実施形式:アンサンブルでチーム学習を促進
 ・環境面の工夫:すぐに取り組める仮想開発環境
 ・参加者の声:実践から得た気づき
 ・スペシャルゲスト・徳丸浩様からの貴重なアドバイス
研修後の質疑応答セッション
 ・質問1:脆弱性対応の優先度について
 ・質問2:アジャイル開発におけるセキュリティ診断のタイミング
今後の展望:セキュリティを開発一人ひとりの我が事に
おわりに
謝辞

セキュリティ研修を実施した背景

当社では、カスタムAIの開発をする上で、PoC(Proof of Concept)から本番運用まで一貫して支援する体制を整えています。技術的な挑戦はもちろんのこと、お客様の課題解決に寄り添うため、品質を重視した開発を大切にしています。

報道などでご存じの通り、情報セキュリティインシデントの事例が後を絶ちません。それらは、それまで築き上げてきた信頼を文字通りたった一日で失墜させるほどの衝撃を持っています。この現実を前に、情報セキュリティの確保は、もはや「できれば取り組みたい施策」ではなく必須の課題です。だからこそ、リスクをなるべく抑える活動が重要です。

こうした背景から、当社でもセキュリティを重要視しており、エンジニア一人ひとりの意識とスキルを底上げすべく、本研修を企画・実施しました。

研修概要:実践的な教材「BadTodoList」を活用

今回の研修では、セキュリティ分野の第一人者である徳丸浩様から許諾をいただき、BadTodoListを用いて脆弱性を発見するための実践的な研修を実施しました。

BadToDoListを開発した徳丸浩様(https://www.eg-secure.co.jp/tokumaruからキャプチャ)

このBadTodoListは、Webアプリケーションにおける代表的な脆弱性(SQLインジェクションやクロスサイトスクリプティングなど)を意図的に含んだ、シンプルなTodo管理アプリです。

ウェブ健康診断仕様』『安全なWebサイトの作り方』『OWASP Top 10』『体系的に学ぶ 安全なWebアプリケーションの作り方』といった、セキュリティ分野の主要な文献で取り上げられている脆弱性を網羅しています。初心者にも扱いやすく設計されており、実際に手を動かしながら脆弱性の仕組みや影響を体感できます。

ウェブ健康診断仕様

加えて、YouTube上に導入動画もあり、初学者が自習で取り組みやすい点も大きな魅力です。

YouTube上で公開されている、BadToDoListの導入動画(https://www.youtube.com/playlist?list=PLWiFLcGkQgLzxPw23mQniahM_kPH_EsVHからキャプチャ)

実施形式:アンサンブルでチーム学習を促進

研修では、まず私が概要や目的を共有した後、参加者をGoogle Meetのブレイクアウトルームに分け、アンサンブル(共同操作・対話型学習)形式で脆弱性を発見する課題に取り組みました。

「脆弱性を発見する」という行為は、経験の浅い開発者にはハードルが高く感じられるかもしれません。しかし他のメンバーと一緒に手を動かしながら「ここが怪しいですね」「SQLインジェクションはどう攻撃するんでしたっけ?」といった会話を重ねる中で、自然と気づきや学びが広がっていきました。

参加者からは「チームで調べながら進めることで、自分とは違う視点に気づけた」「一人で取り組むよりも、皆でワイワイできて楽しかった」といったポジティブな感想が多く寄せられました。

環境面の工夫:すぐに取り組める仮想開発環境

今回の研修では、実践をスムーズに進めるために、以下のような環境面での工夫を行いました。

GUI付きのUbuntu仮想マシンを準備:社内のサーバーを活用し、チームごとに共通の仮想環境を提供。

開発環境の事前整備:BadTodoListと「BurpSuite」を事前にインストールし、環境構築の負担を最小限に。

リモートデスクトップ接続:当日は参加者がリモートデスクトップ経由で仮想マシンにアクセス。

これらの工夫により、参加者は環境構築に時間を取られることなく、研修開始早々からセキュリティという本質的な学びに集中できました。

参加者の声:実践から得た気づき

参加したメンバーからは、「実際に手を動かしたからこそ得られた気づき」が数多く寄せられました。

・攻撃手法の具体的な実行方法を知ることができました。脆弱性の対応を行う必要性を再認識しました。
・名前だけ知っていた攻撃についても、実際に操作することで動作原理を理解できました。
・実際にSQLインジェクションを行ってみることで、攻撃者がどのように脆弱性を悪用するのかを体感し、守る立場としてもその視点を持つことの大切さを理解できました。

このように、実際に手を動かすことで理解が深まったという声が多く寄せられ、私自身もその効果を改めて実感しました。こうした実践的な学びの機会を継続的に持つことが、セキュリティリテラシーの向上はもちろん、万が一の際の“対応力”を養う上でも、今後ますます重要になってくると考えています。

スペシャルゲスト・徳丸浩様からの貴重なアドバイス

研修にご参加いただいた徳丸様からは、いくつかの非常に具体的で実践的なアドバイスをいただきました。さらに「SQLインジェクションやOSコマンドインジェクションといった難易度の高い攻撃に挑戦されていて、非常に興味深く感じました」とのお言葉もいただき、私たちのチャレンジ精神を評価していただけたのは大きな励みとなりました。

一方で、実務への応用を念頭に置いた、重要なご指摘もいただきました。「脆弱性診断においては、脆弱性を安全に見つけるという考え方が重要です。危険なコマンドを入力すると、環境が破損する恐れもあります。実務で診断される際は、危険な入力は避けるようにしてください。『Web健康診断仕様』は、環境を壊さずに試せるよう考慮されています。そうしたものを活用して学習を進め、御社のセキュリティ強化にお役立ていただければと思います」。このアドバイスから、現場ですぐに活かせる貴重な知見を得ることができました。

実践的なアドバイスも提供していただいた徳丸浩様

研修後の質疑応答セッション

研修後の質疑応答セッションでは、参加者から実践的な質問が寄せられ、徳丸様から一つひとつ丁寧にご回答いただきました。

質問1:脆弱性対応の優先度について

Q:脆弱性の対応には優先度があると思いますが、どこから対処すべきか、指針のようなものはありますか?

A:はい、「脆弱性の危険度』という概念があります。SQLインジェクションやOSコマンドインジェクションは危険度が高く、そうでないものもあります。私の著書や『Web健康診断仕様』にも、危険度が高、中、低で記載されています。危険度が高いものから優先的に対応するのが大原則です。ただし、攻撃に内部情報が必要な場合など、攻撃の成立条件によっては、同じ危険度でも実質的な優先度は下がることがあります。

この回答により、単純な危険度評価だけでなく、実際の攻撃シナリオや現実的なリスクを考慮した、総合的な判断の重要性を学びました。

質問2:アジャイル開発におけるセキュリティ診断のタイミング

Q:ウォーターフォール開発ではテスト期間が明確なため、脆弱性診断のタイミングを確保しやすいです。一方、アジャイル開発の場合は、どのタイミングで脆弱性診断を実施すべきでしょうか。

A:それは近年注目されているテーマで、DevOpsにSecurityの観点を加えた「DevSecOps」という考え方が主流になりつつあります。これは、開発サイクルの中で継続的にセキュリティテストを実施していくアプローチです。具体的には、ソースコードが完成するたびに静的解析ツールをかけたり、動的なスキャンツールを自動実行したりします。そして、QAの段階では、自動化ツールでは見つけにくい箇所を手動で重点的に診断する、といったかたちになります。

Q:なるほど、開発サイクルの中に脆弱性診断のプロセスを組み込んでいく、ということですね。

A:おっしゃる通りですが、実現は容易ではありません。しかし、それに取り組むしかないのが現状です。

このやり取りを通じ、当社メンバーからは「実現するためには、組織的にナレッジを蓄積していく必要があると理解しました」という、次なる課題への気づきも得られました。

今後の展望:セキュリティを開発一人ひとりの我が事に

今回の研修はゴールではなく、これからの取り組みに向けた第一歩です。私たちが目指しているのは、セキュリティが特別なルールとして意識されるのではなく、日々の開発業務における当たり前の習慣にしていくこと。いわば、開発者一人ひとりが我が事として意識するようになることです。

「作ってから守る」のではなく、「作りながら守りを固める」のが当然の開発スタイルへ−−。そのために、今後は、DevSecOpsに関する取り組みを継続的に推進していきます。

おわりに

Laboro.AIでは、技術力の向上とセキュアな開発の両立を目指し、エンジニアが成長できる環境づくりに力を入れています。本コラムを読んで当社でエンジニアとして働くことにご興味をお持ちでしたら、ぜひ一度、採用ページをご覧ください。現在、エンジニアを積極的に採用中です。

謝辞

今回の研修実施に当たり、BadTodoListの使用を許諾していただき、さらに当日もスペシャルゲストとしてご参加くださり、貴重なアドバイスをくださいました徳丸浩様に、心より感謝申し上げます。

実践的な教材と、専門家の視点からの直接的なフィードバックにより、参加者一同、セキュリティの重要性と具体的な対策について、深い学びを得ることができました。今回いただいた知見は、当社のセキュリティ文化を構築する礎として、大切に活用させていただきます。

執筆者

システム開発エンジニア 田上 諭

宮崎大学大学院工学研究科を修了。株式会社ベリサーブにて、ソフトウェアテストに関するサービス提供や、テスト技法支援ツールの開発に従事。2025年からLaboro.AIにシステム開発エンジニアとして参画し、現在はAI関連システムの開発を担当している。

閉じる お問い合わせは
こちら