2006-10-19 アプリの脆弱性 セキュリティ ちと、コメントでCSRFのこととかあったので、アプリの脆弱性の分類を考えてみる。 アプリ開発の視点からの脆弱性の分類としてこんな感じかなぁ? 使用するフレームワーク、ライブラリの脆弱性 仕様による脆弱性 設計による脆弱性 処理フローの脆弱性 データフローの脆弱性 使用するフレームワーク、ライブラリの脆弱性 いわゆるApacheとかIISとかの脆弱性のこと 仕様による脆弱性 例を挙げれば、認証失敗時にパスワードが違うとか教えてくれるアプリとか。非常に便利なんだけど、裏を返せば攻撃するのも便利な仕様みたいなもの。うぅ・・・うまく言葉が出てこない。 設計による脆弱性 これがいわゆるアプリの脆弱性の大半を占めるはず。 処理フローの脆弱性 画面遷移とか、セッション管理とか、設計段階で十分に考慮されていないために発生する脆弱性。例えば、CSRFや権限上昇みたいなもの。 データフローの脆弱性 データの処理に問題があって、意図しない命令を実行してしまう脆弱性。例えば、XSS、SQL Injection、Command Injectionとか。これはコーディング時に混入することがほとんどかな? いわゆるチェック漏れみたいな感じで。 後他に何かあるかなぁ?