セキュアコーディングとは
セキュアコーディング(Secure Coding)とは、ソフトウェア開発の段階から脆弱性を作り込まないよう、セキュリティを考慮したコーディングの原則・手法・実践のことです。「セキュリティ・バイ・デザイン」の考え方に基づきます。
セキュアコーディングの主要原則
①入力値の検証(信頼しないすべての入力をバリデーション)、②出力のエスケープ処理(XSS対策)、③プリペアドステートメントの使用(SQLインジェクション対策)、④最小権限の原則、⑤エラー処理の適切な実装(内部情報を漏洩させない)、⑥暗号化の適切な使用。
OWASPとは
OWASP(Open Web Application Security Project)は、Webアプリケーションセキュリティの向上を目指す非営利組織です。「OWASP Top 10」(最も重大なWebアプリ脆弱性トップ10)は世界中のセキュアコーディングの基準として参照されています。
セキュリティテスト
コードレビュー(セキュリティ観点)・SAST(静的解析ツール)・DAST(動的解析ツール)・依存ライブラリの脆弱性チェック(Software Composition Analysis)を開発パイプラインに組み込む「DevSecOps」が現代の標準的アプローチです。