ゲーミフィケーションがソフトウェアセキュリティを向上させる鍵となる理由

2018年08月01日掲載
ピーテル・ダンヒョウ著
ケーススタディ

ゲーミフィケーションがソフトウェアセキュリティを向上させる鍵となる理由

2018年08月01日掲載
ピーテル・ダンヒョウ著
リソースを見る
リソースを見る

AppSecマネージャー、CISO、CIO、サイバーセキュリティの専門家など、ソフトウェア開発とセキュリティに携わる私自身のキャリアの中で、世界中のあらゆる企業で働く多くの人たちと話をしてきました。

どんなに状況が異なっていても、どんなに経験豊富なチームであっても、変化し続けるデジタルの世界でどんなに時間が経過しても、いつも変わらない問題があります。それは、セキュリティに関して開発チームを積極的に巻き込むことができないということです。セキュリティはいまだに汚い言葉であり、チーム間の対立の原因であり、業界の悩みの種なのです。

しかし、ソフトウェア・セキュリティは、私たちの一般的な考え方からすると、あまりにも重要であるため、このままではいけません。私たちは、セキュリティがすべての開発者の仕事に不可欠な要素となるように、会話を変える努力をしなければなりません。そのための最良の方法のひとつが、ゲーミフィケーションなどを通じて開発者にセキュリティに関する権限を与え、参加させることだと思います。

現在の状況

開発者は、安全なコードを提供するための実践的な知識をほとんど持たずに大学を卒業し、セキュリティトレーニングが優先されることのない仕事に従事します(優先される場合でも、たいていは健康と安全に関する義務的なコンプライアンスビデオの一部であり、安全なコーディングに関心を持つ人がいないような退屈なものです)。多くの場合、彼らが初めてセキュリティに触れたのは、監査やテストのバグレポートであり、それによって将来のリリースが突然中止され、彼らの創造性が即座に最優先事項として妨げられることになります。彼らは、セキュリティレポートの責任者と対立することになり、彼らの中で「セキュリティ」は「批判」と同義語になってしまいます。困ったものだ。

ソフトウェアセキュリティに対するこのような否定的な認識が蔓延しているのは、正直言って本当に残念なことです。というのも、私のキャリアの中で最も良い思い出は、ソフトウェアセキュリティを学んだことに関連しているからです。ハッキングを始めたばかりの頃は、カンファレンスに参加して、仲間と自分のスキルを試すだけでなく、自分と同じようにソフトウェアを壊すことを楽しんでいる同じ考えを持った人たちとの出会いを楽しみにしていました。

BruCon、DefCon、BlackHat......これらのイベントでは、私のような人間が自分のスキルを競い合って切磋琢磨することができた。私はそのような反社会的なことに参加しているとは決して認めませんが、中には他の参加者の携帯電話に侵入してハッキングの腕前を披露し、その情報をプレゼンテーション画面に表示して誰もが見られるようにする人もいました。ソフトウェアをより良いものにするために、欠陥を見つけ、それを利用し、修正することがゲームになったのです。数年前、私は中東で何百人もの子供たちを前にして、サイバーセキュリティについて教える機会に恵まれました。生徒の中には8歳の女の子がいて、ゲームをしながらパスワードのブルートフォースやBase64エンコーディングについて学んでいたのを今でも覚えています。

ゲーミフィケーションは、コーディングスキルの指導にも活用されています。世界中の教育機関では、この手法を利用して、幼い子どもから高校生までを対象にコーディングを教えています。CodeCampのような休日の取り組みには、4歳の子供たちも定期的に参加していますし、Pythonやその他の言語でのコーディング方法を教える素晴らしいオンラインプログラムも数多くあります。私は4歳の娘のために、画面を使わない素晴らしいコーディングツール「Cubetto」を購入しました。

しかし、このような楽しみや進歩にもかかわらず、ギャップがあります。ゲーミフィケーションを活用して、開発者が安全なコードを書く方法をトレーニングできる可能性については、誰も考えていませんでした。

まあ、ほとんど誰もいませんが。数年前、私は、セキュリティを再び刺激的なものにして、開発者が参加してプレイできるようにする必要があると考えました。

ゲーミフィケーション。シンプルな方法です。

私の中には、開発者にセキュリティの知識を身につけてもらいたいという深い思いがあり、その思いがSecure Code Warrior を設立するきっかけとなりました。ソフトウェアセキュリティは非常に重要であり、本当にエキサイティングなことです。

考えているのは私だけではありません。

ゲーミフィケーションを使えば、どんなに平凡な仕事でも楽しくなり、人々は遊び続け、勝ち続け、進歩し続けたいと思うようになります。「ポケモンGO」では、怠け者の人でもソファから離れて屋外に出て架空の生き物を探したり、「FitBit」では多くの人が歩数を増やすことを毎日の目標にしています。しかし、目標が達成されなかったり、記録が途切れたり、バッジが獲得できなかったりすると、非常にリアルな失望感に襲われます。

さて、話をセキュリティトレーニングに戻します。ゲーミフィケーションは、組織内のセキュリティ文化を変革し、AppSecと開発チームの間の橋渡しをするだけでなく、一般的に高水準のソフトウェアを構築するための鍵となることを、私たちは多くのお客様と実証してきました。

今のところ、セキュリティは開発者の優先事項ではありません。あなたのトレーニング方法に、親しみやすく、競争的で、魅力的な要素を加えることで、彼らが「プレイ」するだけでなく、より多くのポイントを獲得したり、ハイスコアを更新したり、より正確になったり、仲間のチームメンバーに挑戦したりするために、何度も足を運ぶように動機づけられます。

成功するトレーニングとは、次のようなものだとわかっています。

  • 開発者は、実際のコードや自分の言語/フレームワークを使って作業することができます。
  • 課題は短く、一般的なセキュリティの脆弱性をすべて網羅している
  • 課題は常に拡大・更新されるため、開発者は時間をかけてスキルを高めていくことができます。
  • 課題は複雑さが異なるため、上級者だけでなく経験の浅い開発者にも魅力的な内容となっています。
  • 開発者とその上司は、どの課題を完了したか、長所と短所、トレーニングに費やした時間、全体的な精度など、進捗状況を確認することができます。

ある大手企業は、ゲーミフィケーション・プラットフォームの真の魅力を導入時に示しました。開発者にはテーマ別のチームウェアを用意し、ゲームの勝者には素晴らしい賞品を提供し、tournament は本当に忘れられない日になりました。その後、国際的な大会が開催されるようになり、今でもチーム全員が真剣にトレーニングに励んでいるとのことです。

あなたのソフトウェア革命はここから始まります。オーストラリアの銀行業界は、従来の(あるいは退屈な)トレーニングを覆すような、真に革新的なアプローチで、不良コード対策のためにゲーミフィケーションを取り入れてリードしています。当社のクライアントが次のレベルのtournament で行ったことをご覧ください。あなたのチームをレベルアップする準備はできていますか?

私たちは、開発者にとってセキュリティが仕事をする上で欠かせないものになるように、会話を変える努力をしなければなりません。そのためには、ゲーミフィケーションなどを通じて、開発者にセキュリティに関する権限を与え、協力してもらうことが有効だと思います。
リソースを見る
リソースを見る

著者

ピーテル・ダンヒユー

Pieter Danhieuxは、セキュリティコンサルタントとして12年以上の経験を持ち、SANSの主席講師として8年間、組織、システム、個人をターゲットにしてセキュリティの弱点を評価する方法に関する攻撃的なテクニックを教えている、世界的に有名なセキュリティエキスパートです。2016年には、オーストラリアで最もクールな技術者の一人として認められ(Business Insider)、Cyber Security Professional of the Yearを受賞(AISA - Australian Information Security Association)、GSE、CISSP、GCIH、GCFA、GSEC、GPEN、GWAPT、GCIA認定を保有している。

もっと知りたい?

セキュアコーディングに関する最新の知見をブログでご紹介しています。

当社の豊富なリソースライブラリは、安全なコーディングアップスキルに対する人間的なアプローチを強化することを目的としています。

ブログを見る
もっと知りたい?

開発者主導のセキュリティに関する最新の研究成果を入手する

ホワイトペーパーからウェビナーまで、開発者主導のセキュアコーディングを始めるために役立つリソースが満載のリソースライブラリです。今すぐご覧ください。

リソース・ハブ

ゲーミフィケーションがソフトウェアセキュリティを向上させる鍵となる理由

2024年1月22日発行
Pieter Danhieux著

AppSecマネージャー、CISO、CIO、サイバーセキュリティの専門家など、ソフトウェア開発とセキュリティに携わる私自身のキャリアの中で、世界中のあらゆる企業で働く多くの人たちと話をしてきました。

どんなに状況が異なっていても、どんなに経験豊富なチームであっても、変化し続けるデジタルの世界でどんなに時間が経過しても、いつも変わらない問題があります。それは、セキュリティに関して開発チームを積極的に巻き込むことができないということです。セキュリティはいまだに汚い言葉であり、チーム間の対立の原因であり、業界の悩みの種なのです。

しかし、ソフトウェア・セキュリティは、私たちの一般的な考え方からすると、あまりにも重要であるため、このままではいけません。私たちは、セキュリティがすべての開発者の仕事に不可欠な要素となるように、会話を変える努力をしなければなりません。そのための最良の方法のひとつが、ゲーミフィケーションなどを通じて開発者にセキュリティに関する権限を与え、参加させることだと思います。

現在の状況

開発者は、安全なコードを提供するための実践的な知識をほとんど持たずに大学を卒業し、セキュリティトレーニングが優先されることのない仕事に従事します(優先される場合でも、たいていは健康と安全に関する義務的なコンプライアンスビデオの一部であり、安全なコーディングに関心を持つ人がいないような退屈なものです)。多くの場合、彼らが初めてセキュリティに触れたのは、監査やテストのバグレポートであり、それによって将来のリリースが突然中止され、彼らの創造性が即座に最優先事項として妨げられることになります。彼らは、セキュリティレポートの責任者と対立することになり、彼らの中で「セキュリティ」は「批判」と同義語になってしまいます。困ったものだ。

ソフトウェアセキュリティに対するこのような否定的な認識が蔓延しているのは、正直言って本当に残念なことです。というのも、私のキャリアの中で最も良い思い出は、ソフトウェアセキュリティを学んだことに関連しているからです。ハッキングを始めたばかりの頃は、カンファレンスに参加して、仲間と自分のスキルを試すだけでなく、自分と同じようにソフトウェアを壊すことを楽しんでいる同じ考えを持った人たちとの出会いを楽しみにしていました。

BruCon、DefCon、BlackHat......これらのイベントでは、私のような人間が自分のスキルを競い合って切磋琢磨することができた。私はそのような反社会的なことに参加しているとは決して認めませんが、中には他の参加者の携帯電話に侵入してハッキングの腕前を披露し、その情報をプレゼンテーション画面に表示して誰もが見られるようにする人もいました。ソフトウェアをより良いものにするために、欠陥を見つけ、それを利用し、修正することがゲームになったのです。数年前、私は中東で何百人もの子供たちを前にして、サイバーセキュリティについて教える機会に恵まれました。生徒の中には8歳の女の子がいて、ゲームをしながらパスワードのブルートフォースやBase64エンコーディングについて学んでいたのを今でも覚えています。

ゲーミフィケーションは、コーディングスキルの指導にも活用されています。世界中の教育機関では、この手法を利用して、幼い子どもから高校生までを対象にコーディングを教えています。CodeCampのような休日の取り組みには、4歳の子供たちも定期的に参加していますし、Pythonやその他の言語でのコーディング方法を教える素晴らしいオンラインプログラムも数多くあります。私は4歳の娘のために、画面を使わない素晴らしいコーディングツール「Cubetto」を購入しました。

しかし、このような楽しみや進歩にもかかわらず、ギャップがあります。ゲーミフィケーションを活用して、開発者が安全なコードを書く方法をトレーニングできる可能性については、誰も考えていませんでした。

まあ、ほとんど誰もいませんが。数年前、私は、セキュリティを再び刺激的なものにして、開発者が参加してプレイできるようにする必要があると考えました。

ゲーミフィケーション。シンプルな方法です。

私の中には、開発者にセキュリティの知識を身につけてもらいたいという深い思いがあり、その思いがSecure Code Warrior を設立するきっかけとなりました。ソフトウェアセキュリティは非常に重要であり、本当にエキサイティングなことです。

考えているのは私だけではありません。

ゲーミフィケーションを使えば、どんなに平凡な仕事でも楽しくなり、人々は遊び続け、勝ち続け、進歩し続けたいと思うようになります。「ポケモンGO」では、怠け者の人でもソファから離れて屋外に出て架空の生き物を探したり、「FitBit」では多くの人が歩数を増やすことを毎日の目標にしています。しかし、目標が達成されなかったり、記録が途切れたり、バッジが獲得できなかったりすると、非常にリアルな失望感に襲われます。

さて、話をセキュリティトレーニングに戻します。ゲーミフィケーションは、組織内のセキュリティ文化を変革し、AppSecと開発チームの間の橋渡しをするだけでなく、一般的に高水準のソフトウェアを構築するための鍵となることを、私たちは多くのお客様と実証してきました。

今のところ、セキュリティは開発者の優先事項ではありません。あなたのトレーニング方法に、親しみやすく、競争的で、魅力的な要素を加えることで、彼らが「プレイ」するだけでなく、より多くのポイントを獲得したり、ハイスコアを更新したり、より正確になったり、仲間のチームメンバーに挑戦したりするために、何度も足を運ぶように動機づけられます。

成功するトレーニングとは、次のようなものだとわかっています。

  • 開発者は、実際のコードや自分の言語/フレームワークを使って作業することができます。
  • 課題は短く、一般的なセキュリティの脆弱性をすべて網羅している
  • 課題は常に拡大・更新されるため、開発者は時間をかけてスキルを高めていくことができます。
  • 課題は複雑さが異なるため、上級者だけでなく経験の浅い開発者にも魅力的な内容となっています。
  • 開発者とその上司は、どの課題を完了したか、長所と短所、トレーニングに費やした時間、全体的な精度など、進捗状況を確認することができます。

ある大手企業は、ゲーミフィケーション・プラットフォームの真の魅力を導入時に示しました。開発者にはテーマ別のチームウェアを用意し、ゲームの勝者には素晴らしい賞品を提供し、tournament は本当に忘れられない日になりました。その後、国際的な大会が開催されるようになり、今でもチーム全員が真剣にトレーニングに励んでいるとのことです。

あなたのソフトウェア革命はここから始まります。オーストラリアの銀行業界は、従来の(あるいは退屈な)トレーニングを覆すような、真に革新的なアプローチで、不良コード対策のためにゲーミフィケーションを取り入れてリードしています。当社のクライアントが次のレベルのtournament で行ったことをご覧ください。あなたのチームをレベルアップする準備はできていますか?

私たちは、開発者にとってセキュリティが仕事をする上で欠かせないものになるように、会話を変える努力をしなければなりません。そのためには、ゲーミフィケーションなどを通じて、開発者にセキュリティに関する権限を与え、協力してもらうことが有効だと思います。

弊社製品や関連するセキュアコーディングのトピックに関する情報をお送りする許可をお願いします。当社は、お客様の個人情報を細心の注意を払って取り扱い、マーケティング目的で他社に販売することは決してありません。

フォームを送信するには、「Analytics」のCookieを有効にしてください。完了したら、再度無効にしてください。