XSS脆弱性の危険性
2009年3月18日(水曜日)
XSS脆弱性の危険性
公開: 2025年2月1日16時10分頃
「世間の認識と脅威レベルのギャップ――XSSは本当に危ないか? (www.atmarkit.co.jp)」。
脆弱性の脅威が過剰に評価されている傾向はあると思いますね。脆弱性検査の結果なんかで「500エラーが出ている」とか「HTTP応答ヘッダでサーバのバージョン情報が出ている」とかいったものが問題にされたりしますが、「それ対応する必要あるの?」と思います。検査している方としても、「念のため」レベルで報告しているのだろうと思いますが、受け取り側はそうは受け取らない場合もあるようで。まあ、報告の書き方の問題なのかも知れませんけれども。
緊急度をざっくりいくつかに分けて考えるとすると、だいたいこんな感じなのでしょうか。
- 緊急: 今すぐサイトを閉鎖して対応しなければならないもの
- 重要: 早急に対応しなければならないもの
- 要対応: 急ぎではないが、対応が必要と考えられるもの
- 対応不要: 対応が不要と考えられるもの
SQLインジェクションで実際に攻撃が行われた場合や、サーバが不正アクセスされたような場合は「緊急」。SQLインジェクションが発見されたが攻撃はされていないと考えられるような場合は、緊急と言いたいところですが、実際は「重要」レベルの対応になるでしょう。XSSはたぶん「要対応」レベルですね。ただ、川口さんが元記事にも書かれているように、持続型XSSの場合は脅威の度合いは少し高いのではないかと思います (予告.inみたいなケースもあるので)。
ところで、通常のXSS脆弱性の特徴は、なんといっても「発見しやすい」という事だと思います。
脆弱性を見つける“だけ”なら技術力がなくてもある程度発見可能
というのはまったくその通りだと思いますが、通常、ウェブアプリケーションの開発には「テスト」という工程があるはずで、そのテストにおいてもXSS脆弱性は発見されやすいはずです。そして普通、XSSは単なる実装上のバグに過ぎず、簡単に修正できます。
※もっとも、「このXSSを修正するためには設計を見直す必要があるので今は修正できません」という主旨のことを言われた経験もありますが。
ですから、まともにテストをやっていれば、簡単なXSS脆弱性は残らないと思うわけです。XSSは、まともにテストをやっているかどうかという点を見るためのバロメータになると思います。というわけで個人的には、外注先を選定するような場合、XSS脆弱性があるかどうかという点は結構重視しています。
※判断基準にできるくらい見つかってしまうのもおかしいとは思うのですけれど。
……あと、たまに、IPAに届け出られたXSS脆弱性の件数を「被害件数」と思っている人がいて、「XSSの被害はたくさん発生している」と誤解されている場合もあったりしますね。
- 「XSS脆弱性の危険性」にコメントを書く
関連する話題: セキュリティ / クロスサイトスクリプティング脆弱性
- 前(古い): faviconを南京錠にして安心感を演出
- 次(新しい): 「成立しない」の意味