設定の不備
OWASP Top 10:2025 の A02 を取得して読み、理解した内容を自分の言葉で書いたもの。
なぜ2位に上がったか
数字が理由を語っている。
テストしたアプリケーションの100%に、何らかの設定の不備があった。
2021年版の5位から2位へ。コードの問題ではなく、設定の問題が これだけ普遍的だという結果になっている。
脆弱な状態
セキュリティの堅牢化がされていない。クラウドサービスの権限設定が不適切
不要な機能が有効になっている(ポート、サービス、アカウント、テスト用フレームワーク)
既定のアカウントとパスワードが変更されていない
エラーメッセージの扱いが不十分で、スタックトレースが露出する
アップグレードしたシステムで、セキュリティ機能が無効か安全でない設定のまま
後方互換性を、安全な設定より優先している
サーバー・フレームワーク・ライブラリ・データベースの設定が安全でない
セキュリティヘッダが欠けているか、設定が誤っている
**「後方互換性を安全な設定より優先している」**が、判断として一番難しい項目。 廃止の 「旧システムとの互換性の維持が、新しい側の発展を阻害する」と同じ構図が セキュリティにも出ている。
対策
繰り返し実行できる堅牢化のプロセスを持ち、デプロイを自動化する
不要な構成要素を含まない最小のプラットフォームを配る
パッチ管理時に設定を見直す。クラウドストレージの権限も見直す
アーキテクチャを分離し、コンテナ化する
クライアントへセキュリティ指示(セキュリティヘッダ)を送る
全環境で設定の検証を自動化する
エラーメッセージを中央で捕捉する
埋め込みの秘密情報ではなく、ID連携とロールベースのアクセスを使う
**「全環境で設定の検証を自動化する」**が要点。 本番だけ設定しても、ステージングから漏れる。
インフラの **「全てコード化して、手動では触らない」「手動作成と自動作成のインフラの混在はしない」**が、 そのままこの対策になっている。既にある記述が A02 への回答になっていた。
実際の攻撃シナリオ
原典が挙げている4つ。いずれも「作り込んだ脆弱性」ではなく消し忘れと初期値。
サンプルアプリが消されずに残っており、既知の脆弱性と既定アカウントを持っている
ディレクトリリスティングが有効で、コードを発見して解析できる
詳細なエラーメッセージが、機微な情報と脆弱なコンポーネントのバージョンを露出する
クラウドストレージの共有権限が緩く、インターネットから到達できる
既存の記述との対応
| 既にある | ここでの位置づけ |
|---|---|
| インフラ の全コード化、掃除 | 堅牢化の自動化、不要なものの削除 |
| API 設計 のセキュリティヘッダ | クライアントへの指示 |
| 秘密情報の管理 | 埋め込みの秘密情報をやめる |
| 認証と認可 | クラウドストレージの権限 |
| 廃止 | 使われていないものを消す |
関連
- OWASP Top 10 — A02。2025年版で2位
- 例外条件の扱い — エラーメッセージの露出はこちらとも重なる
- インフラ