Devlympics 2023:振り返り

Devlympicsとは?
Devlympicsは、Secure Code Warriorがアジャイル学習プラットフォーム上で開催する年次世界大会であり、開発者のセキュアコーディングスキルを試す場です。
24時間開催されるこの大会では、世界中の開発者が、各自が選択したプログラミング言語を用いて、攻撃および防御のコーディング課題に挑戦しました。開発者は、さまざまなスキルを持つ仲間と競い合い、ポイントを獲得してリーダーボードの頂点を目指しました。
本レポートでは、Devlympics 2023の結果の概要に加え、数百人の開発者が課題を通じて明らかにした強みと改善の機会を深く掘り下げます。さらに、業界別、言語別、そして開発者が取り組んだ一般的なCWE(共通脆弱性タイプ一覧)のトレンドを紹介し、セキュアコーディングの学習を次のレベルへ引き上げるためのヒントを提供します。
DevlympicsとSecure Code Warriorに対する開発者の声
「Secure Code Warriorは、他の参加者と競い合いながらスキルを向上させるのに最適なプラットフォームです。」
「Secure Code Warriorは、インタラクティブなコードレビューのようなアプローチを採用しています。」
「Secure Code Warriorは、興味深い競争を通じてトレーニングができる最高のプラットフォームの一つです。」
「エキサイティングでスリル満点、最高でした!」
開発者に愛されるSecure Code Warrior
イベント終了後に200名以上の参加者を対象にアンケートを実施したところ、多くの開発者がこの大会を高く評価していることが数字で示されました。

開発者のエンゲージメント
Devlympicsへの参加者数は年々増加しており、2023年の大会では1000名を超える開発者が参加しました。Devlympicsは、世界中のセキュリティ専門家や、多様な業界・プログラミング分野の開発者から注目を集めています。昨年の2倍のエンゲージメントを記録したことは、セキュアコーディングの習得に対する開発者の関心が高まっている傾向を示しています。Devlympicsは、セキュリティスキルを持つ開発者のコミュニティを育成することで、脆弱性からコードを守るための第一線として、開発者が持つ価値を証明し続けています。

Devlympicsに参加した業界
セキュアなコードはあらゆる業界にとって重要ですが、特定の分野においては極めて不可欠なものです。特に銀行・金融サービスやテクノロジーといった業界からの参加者数が多く、これらの業界がセキュアコーディングに継続的に注力し、重視していることがうかがえます。

業界別の使用言語
各業界では多種多様なプログラミング言語が活用されています。Web、モバイル、フロントエンド、API、クラウド、マッシュアップの6つのカテゴリーにおいて、30種類以上の言語が利用可能です。ここでは、各業界でトレンドとなっている言語の一部をご紹介します。

止まらない挑戦
Devlympicsの参加者は、プラットフォーム上で平均3時間近くを費やし、総プレイ時間は4,152時間に達しました。
リーダーボードのトップに立つ開発者たちは、さらにその上を行きました。プレイ時間が最も長かった上位20名の平均プレイ時間は14時間。まさに献身の賜物です!

フルスタック開発者
Devlympicsでは、41%の開発者が少なくとも2つ以上の言語でプレイし、4分の1近くが3つ以上の言語を扱いました。
Stack Overflowによると、2つ以上の言語で本番環境のコードをコミットする開発者は、フルスタック開発者と見なされます。
貴社のトレーニングプログラムでは、開発者がコードをコミットするすべての技術について習得できていますか?Secure Code Warriorのプラットフォームなら、63種類以上の言語とフレームワークに対応しており、万全のサポートを提供します。

技術スタックのトレンド
一般公開されるコードにおいて、セキュアなコーディングは最優先事項です。
すべての業界において、開発者はWebまたはAPI言語を使用してプレイしました。
本大会で最もプレイされた言語は、Java SpringとDocker Basicでした。

セキュリティチャンピオンのコミュニティ
今年のDevlympicsには精鋭たちが集結しました。その大半はすでにSecure Code Warriorの顧客であり、結果にもそれが反映されています。すべての業界において、Devlympicsの参加者は、Secure Code Warriorのプラットフォームにおける評価の業界ベンチマークを大きく上回るパフォーマンスを発揮しました。
Secure Code Warriorプラットフォーム上で、献身的なセキュリティチャンピオンのコミュニティを構築し続けることで、これらの数値は年々向上していくものと期待しています!

主要な脆弱性 - Web & API
Devlympicsの参加者は、OWASP Top 10の「インジェクション」および「脆弱なサードパーティ製コンポーネント」のカテゴリーにおいて、高いスキルレベルを示しました。これらの脆弱性が、時間の経過とともにOWASP Top 10リストから減少していくことを期待しています。
Mass Assignment(大量割り当て)は依然として大きな問題です。この特定の脆弱性に対する開発者のスキルレベルは低水準でした。この分野では自動化ツールやテストが不足しているため、深刻な懸念材料であり、注視する必要があります。この分野の教育を強化することで、この脆弱性に対応するセキュリティチームの負担軽減にもつながるでしょう。


CWE Top 25:最も危険なソフトウェア脆弱性
Common Weakness Enumeration(CWE)の「最も危険なソフトウェア脆弱性トップ25」は、現在最も一般的かつ影響力の大きいソフトウェアの脆弱性を毎年リストアップし、開発者に提供しています。
Devlympicsにおいて最も正答率が低かったのは、1位のCWE-787(メモリ破損)、9位のCWE-352(クロスサイトリクエストフォージェリ)、10位のCWE-434(ファイルアップロード)でした。
3位のCWE-89(SQLインジェクション)、5位のCWE-78(OSコマンドインジェクション)、8位のCWE-22(パス・トラバーサル)といったインジェクション関連の脆弱性は、Devlympicsで最も高いスコアを記録しました。開発者のスキル向上に伴い、CWEトップ25やOWASPトップ10といった業界リストにおいて、これらの脆弱性の順位が下がっていくことが期待されます。
脆弱性の順位

結論
2023年のDevlympicsは、世界中の開発者が楽しみながら学び、成長できる場であることを証明しました。大会に参加する誇りだけでなく、実践的なシナリオを通じて知識を定着させ、学んだことを実際の開発現場へ容易に応用できる点が、この大会の大きな意義です。
Secure Code Warriorは、開発者がセキュアなコードを書くために必要なスキルを習得できるよう支援する、業界をリードするアジャイル学習プラットフォームです。
Secure Code Warriorを活用すれば、貴社の開発チーム向けにDevlympicsのようなトーナメントを開催できます。楽しみながら競い合うゲーミフィケーション形式の大会を通じて、チーム全員でソフトウェアの脆弱性を発見、特定、修正する方法を学びましょう。
成長を続けるコミュニティに参加する
私たちのビジョンは、セキュリティスキルを備えた開発者のグローバルコミュニティを刺激し、予防的なセキュアコーディング文化を浸透させることです。攻撃や脅威、リスクの発生を最小限に抑えてセキュリティレジリエンスを強化し、変革とイノベーションを加速させることを目指しています。私たちは、コーチングとメンタリングこそが、開発者コミュニティに参加する上で不可欠な要素であると信じています。
Devlympics 2024に登録し、Xでフォローして、最新情報を受け取りましょう。
AI主導の開発をリリース前にガバナンスする
AIを活用したリスク測定、コミット時のセキュアコーディングポリシーの強制、そしてSDLC全体を通じたセキュアなデリバリーの加速を実現します。
他のリソースを見る
セキュアコーディング、AIガバナンス、ソフトウェアリスク管理に関する専門的なコンテンツをご覧ください。

DigitalOcean Decreases Security Debt with Secure Code Warrior
DigitalOcean's use of Secure Code Warrior training has significantly reduced security debt, allowing teams to focus more on innovation and productivity. The improved security has strengthened their product quality and competitive edge. Looking ahead, the SCW Trust Score will help them further enhance security practices and continue driving innovation.
AIを活用した開発をリリース前にセキュアに
開発者のリスクを可視化し、ポリシーを適用することで、ソフトウェア開発ライフサイクル全体における脆弱性を未然に防ぎます。
