設問4 JSONPを用いて、個人情報を扱う際の対策の検討について、(1)、(2)に答えよ。
(1) 本文及び図5中の【 f 】に入れる適切な字句を、10字以内で答えよ。
(2) 本文中の【 g 】に入れる適切な字句を、10字以内で答えよ。
【 f 】認証された利用者(8文字)
【 g 】送信されない(6文字)

解説

本文抜粋
 JSONP型データをブラウザに送信する前に、そのリクエストが正規のものであることを確認し、確認できた場合にだけJSONP型データをレスポンスで返す。この確認の実現方法には次の二つがある。
(1) 認証情報を用いた確認
 リクエストのHTTPヘッダに埋め込んである認証情報を確認する。認証情報とは、そのリクエストが【認証された利用者】からのアクセスであることを確認できるものである。(以下、省略)
(2) Refererヘッダによる参照元の確認
 JSONP型データをリクエストする直前に特定のページにアクセスしていたことをRefererヘッダで確認する。(以下、省略)

図5 JSONP呼出しスクリプトを悪用しようとする攻撃への一般的な対策


 ポイント表示サービスの実現においては、会員が一般サイトのトップページにアクセスした際、JSONP呼出しスクリプトが会員サイトにアクセスする。そのため、図5の(1)の対策をとるには、一般サイトで”トップページへのアクセスのリクエストが【認証された利用者】からのアクセス”という情報が必要になる。しかし、一般サイトと会員サイトの運用管理会社が違うこともあり実現方法の検討に期間を要してしまうので、この対策方法は見送ることにした。
 図5の(2)の対策については、A社のWebサイトは様々な環境の利用者を想定していることから、Refererヘッダの情報がサーバに【送信されない】というケースもあり得るので、Refererヘッダの情報の利用を前提としてポイント表示サービスを実現すると、正規のリクエストか否かを区別できないケースがある。そのため、この対策方法も見送ることにした。

 特に解説する必要もない問題かなと思います。管理人は【 f 】を「ログインした会員」としてしまいましたが、きっと正解…だといいな

最終更新:2013年10月12日 13:38