サイト脆弱性をチェックしよう!--第8回:セッション管理における脆弱性 - (page 4)

池田雅一(テクマトリックス)

2008-01-15 08:00

検査方法

 CSRFの検査は、実際にセッションが有効な状態で、実際に処理を実行するリクエストを送信し、想定どおり処理が行われているかどうかを確認することだ。先の例であれば、ログインしている状態で、リクエストdを送信し、パスワードの変更や商品の購入などの処理が行われているかどうかを確認します。これらの処理が行われている場合、脆弱性があると判断できます。

対策

 CSRF対策の基本は、実際に処理を行うリクエスト(例ではリクエストdとなる)が、ユーザーが意図したとおりに行われたものかどうかをアプリケーションで判断することだ。その判断は、攻撃者が推測できない情報をリクエストに付加することで可能になる。具体的には、以下のいずれかを正しく行うことだ。

 詳細については、「開発者のための正しいCSRF対策」に詳しく書かれている。

1. ワンタイムトークンを使用する。

2. パスワード認証を行う。

3. CAPTCHAを使用する。

 今回までは、よく発見される脆弱性について検査方法を説明してきた。安全なアプリケーションかどうかを判断するには、全てのパラメータ、URLに対して、今回までに説明した方法でひとつずつ脆弱性の検査を実施する必要がある。

 たとえば、10個のURLと各URLにパラメータが10個ずつあるとすると、10×10=100個の検査をひとつの検査パターンについて実施しなければならない。このため、検査パターンが10個(検査パターンはURLエンコードなどを含めると非常に多く存在します)あったとすると、100×10=1000パターンの検査を実施しなければならないため、人の手による検査では非常にコストがかかってしまう。

 そこで、検査コストを抑えるために、AppScanのような自動検査ツールが必要になる。次回は、AppScanを例とした自動検査ツールによる検査手法について説明する。

ZDNET Japan 記事を毎朝メールでまとめ読み(登録無料)

ホワイトペーパー

新着

ランキング

  1. セキュリティ

    迫るISMS新規格への移行期限--ISO/IEC27001改訂の意味と求められる対応策とは

  2. セキュリティ

    警察把握分だけで年間4000件発生、IPA10大脅威の常連「標的型攻撃」を正しく知る用語集

  3. セキュリティ

    まずは“交渉術”を磨くこと!情報セキュリティ担当者の使命を果たすための必須事項とは

  4. セキュリティ

    いま製造業がランサムウェアに狙われている!その被害の実態と実施すべき対策について知る

  5. セキュリティ

    VPNの欠点を理解し、ハイブリッドインフラを支えるゼロトラストの有効性を確認する

ZDNET Japan クイックポール

所属する組織のデータ活用状況はどの段階にありますか?

NEWSLETTERS

エンタープライズコンピューティングの最前線を配信

ZDNET Japanは、CIOとITマネージャーを対象に、ビジネス課題の解決とITを活用した新たな価値創造を支援します。
ITビジネス全般については、CNET Japanをご覧ください。

このサイトでは、利用状況の把握や広告配信などのために、Cookieなどを使用してアクセスデータを取得・利用しています。 これ以降ページを遷移した場合、Cookieなどの設定や使用に同意したことになります。
Cookieなどの設定や使用の詳細、オプトアウトについては詳細をご覧ください。
[ 閉じる ]