システム開発

セキュリティシフトレフト せきゅりてぃしふとれふと

シフトレフトDevSecOpsセキュリティ早期検出コスト削減CI/CD
セキュリティシフトレフトについて教えて

簡単に言うとこんな感じ!

「セキュリティのチェックを開発の最初から組み込もう」という考え方だよ! 左から右へ流れる開発のタイムラインで、セキュリティチェックを「左側(早い段階)」に移動するから「シフトレフト」と呼ぶんだ。完成後に穴が見つかるより、設計段階で見つける方がはるかに修正コストが安いんだよ!


セキュリティシフトレフト(Shift-Left Security)とは

セキュリティシフトレフトは、ソフトウェア開発の後半工程(テスト・リリース段階)で行っていたセキュリティチェックを、開発の早い段階(要件定義・設計・コーディング)から実施するアプローチです。

この「シフトレフト」という言葉は、左から右へ流れる開発プロセス(要件→設計→実装→テスト→リリース)の中で、セキュリティチェックの位置を「右から左に移動する」ことを指します。

IBMの研究によると、設計段階で発見・修正したセキュリティ問題のコストを1とすると、本番リリース後に修正するコストは100倍以上になることが知られています。早期発見・早期修正が、システム全体のセキュリティ品質と開発コストの両方を改善します。


発見フェーズとコストの関係

発見フェーズ相対的な修正コスト主な手段
要件・設計脅威モデリング・セキュリティレビュー
実装(コーディング)10×SAST・IDEプラグイン
テスト15×DASTペネトレーションテスト
本番リリース前30×セキュリティ監査
本番リリース後100×以上インシデント対応・修正パッチ

シフトレフトの主な実践

実践内容タイミング
脅威モデリング設計段階で攻撃シナリオを洗い出す要件定義・設計
セキュアコーディング研修開発者へのセキュリティ教育開発者育成
IDEプラグイン開発中にリアルタイムで脆弱性を指摘コーディング
SASTコミット時に静的コード解析を自動実行CI/CD
SCA依存ライブラリの脆弱性を自動チェックCI/CD
セキュリティゲート脆弱性が残るとマージ・デプロイを自動ブロックCI/CD

歴史と背景

  • 2001年 — OWASP設立。Webアプリのセキュリティ問題が体系化される
  • 2008年 — 「シフトレフト」という概念がソフトウェア開発で使われ始める
  • 2012年 — DevOpsの普及でCI/CDにセキュリティを組み込む議論が活発化
  • 2014年DevSecOpsという用語が登場。「Security as Code」の考え方が広まる
  • 2021年 — 米国政府の大統領令でソフトウェアセキュリティの強化が義務化。シフトレフトへの関心が急増
  • 2023年 — AI/LLMを活用したセキュリティチェック自動化が登場。シフトレフトがさらに容易に

シフトレフトの実践フロー

セキュリティチェックのシフトレフト 要件・設計 脅威モデリング 実装 SAST・IDE検査 テスト DAST・ペンテスト ステージング セキュリティ監査 本番 監視・インシデント ❌ 従来:リリース直前・後にまとめてセキュリティチェック → 修正コスト大 修正箇所が多く・影響範囲が広く・スケジュールへの影響が大きい ✅ シフトレフト:各段階でセキュリティを組み込む → 修正コスト最小化

関連する規格・RFC

規格・RFC番号内容
OWASP SAMMソフトウェアセキュリティ保証成熟度モデル
NIST SSDF(SP 800-218)セキュアなソフトウェア開発フレームワーク
ISO/IEC 27034アプリケーションセキュリティの国際規格
EO 14028米国大統領令。ソフトウェアサプライチェーンセキュリティの強化を義務化

関連用語