【せきゅあえすでぃーえるしー】

セキュアSDLC とは?

最終更新:
💡 セキュリティは後付けじゃない、開発の最初から組み込むもの

ソフトウェア開発ライフサイクル(SDLC)全体にセキュリティの活動を組み込む考え方。要件・設計・実装・テスト・運用を通じて、脆弱性やその影響を減らすことを目指す。

📌 このページのポイント
開発から運用まで取り組みを続ける 要件 保護対象・権限 設計 脅威モデリング 実装 レビュー・SAST テスト DAST・人の試験 運用 監視・脆弱性対応 発見した問題を 次の改善に反映 ツールの検査と人の確認を組み合わせる
セキュリティ活動の例。矢印は工程と運用からのフィードバックを表す。実際の開発方式に合わせて、活動を繰り返し組み込む。
ひよこ ひよこ
セキュリティのテストをすれば十分?
ペンギン先生 ペンギン先生
テストだけでなく、何を守るかを要件で決め、設計を見直し、実装や運用にも活動を組み込むよ。開発方式に合わせて繰り返し取り組む考え方で、すべてを一度ずつ順番に済ませる必要があるという意味ではないんだ
ひよこ ひよこ
早く考えると何がいいの?
ペンギン先生 ペンギン先生
実装前に設計の弱点を見つけたり、同じ原因の問題が再発するのを防いだりできるよ。ただし修正コストが必ず何倍になるとは言えない。運用中の発見や対応も必要なので、後の確認を省く理由にはならないんだ
ひよこ ひよこ
具体的には何をするの?
ペンギン先生 ペンギン先生
例えば、要件で保護するデータや権限を決め、設計で脅威モデリング、実装でコードレビュー、テストでセキュリティ試験、運用で監視と脆弱性対応を行う。図は活動の例で、対象のリスクに合わせて内容や頻度を決めるんだ
ひよこ ひよこ
SASTとDASTは同じチェック?
ペンギン先生 ペンギン先生
SASTはコードなどを実行せずに調べ、DASTは動いているアプリの振る舞いを調べるよ。調べる範囲が違うので、ツールだけですべての問題が見つかるとは考えず、設計レビューや人による試験も組み合わせるんだ
ひよこ ひよこ
DevSecOpsとはどうつながるの?
ペンギン先生 ペンギン先生
開発・セキュリティ・運用の担当が協力して、継続的に安全性へ取り組む考え方だよ。CI/CDで検査を自動化するのも一つの方法だけど、担当間の協力や運用時の対応も含む。セキュアSDLCを実践するうえで重なる活動が多いんだ
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「セキュアSDLC」って出てきたら「開発から運用まで、セキュリティを組み込む考え方」と思えばだいたいOK!
📖 おまけ:英語の意味
「Secure Software Development Life Cycle」 = セキュリティを考慮したソフトウェア開発ライフサイクル
💬 Secure(安全な)とSoftware Development Life Cycle(ソフトウェア開発ライフサイクル)を組み合わせた言葉だよ。特定の一つの工程表や、脆弱性がゼロになる保証を指すわけではないんだ

参考資料

← 用語集にもどる