HTTP通信のGETメソッドについて
桜雅さん
(No.1)
HTTP通信においてGETメソッドを使うとリファラ等のログに残るから意図しない情報流出に注意が必要というような理解でいるのですが、仮にHTTPSでGETメソッドを使えばそういった危険性はなくなるという理解でよいものでしょうか?
2021.10.08 00:24
わいわいさん
(No.2)
質問は平成26年春 PM1 問1 設問1-(1)の解答:「Referer」についてでしょうか?
以下はこの設問と仮定して解答します
平成26年は西暦2014年になり、当時と現在ではHTTPSに関する事情が異なります
Refererの送信の基本的な動作として
「HTTPS->HTTPの場合、仕様としてRefererは送られない」です
また、本問の自サイトはHTTPSとHTTPが混ざっているサイトとなっています
P.4の問題文についてのところですが、
1.自サイトHTTPS->外部サイトHTTPの場合、Refererは送られないので安全
2.自サイトHTTP->外部サイトHTTPの場合、Refererは送られるので危険
というケースがあり、2.の場合Refererにクエリパラメタとして
セッションIDが付与したものが外部に漏れる可能性があることを
話しています
このときGETではなくPOSTならばクエリパラメタはRefererに付かなく
なるので、Referer経由でセッションIDが漏れることはなくなります
しかしこれは2014年ごろの基準であり、このころは機密情報を行うページだけ
HTTPSにして、それ以外はHTTPでしたのでこの考え方でよかったと思います
2018年ごろからWebサイトの「常時SSL化(常時HTTPS化)」というWebサイトを
すべてHTTPS化する流れになり、現在はほとんどのサイトのすべてのページが
HTTPSとなっています
そうなると通信は
HTTPS->HTTPSなのでデフォルトではRefererは外部に送られることになります
その際にRefererに不要な情報を付けないように制御するための
「リファラポリシー」という仕組みがあり、その設定内容によって、Referer
から情報が漏れないように制御することになります
ですので「仮にHTTPSでGETメソッドを使えばそういった危険性はなくなる」
という訳ではなく、機密情報を取り扱うのであれば適切なリファラポリシーと
POSTメソッドを使用するのが安全です
以下はこの設問と仮定して解答します
平成26年は西暦2014年になり、当時と現在ではHTTPSに関する事情が異なります
Refererの送信の基本的な動作として
「HTTPS->HTTPの場合、仕様としてRefererは送られない」です
また、本問の自サイトはHTTPSとHTTPが混ざっているサイトとなっています
P.4の問題文についてのところですが、
1.自サイトHTTPS->外部サイトHTTPの場合、Refererは送られないので安全
2.自サイトHTTP->外部サイトHTTPの場合、Refererは送られるので危険
というケースがあり、2.の場合Refererにクエリパラメタとして
セッションIDが付与したものが外部に漏れる可能性があることを
話しています
このときGETではなくPOSTならばクエリパラメタはRefererに付かなく
なるので、Referer経由でセッションIDが漏れることはなくなります
しかしこれは2014年ごろの基準であり、このころは機密情報を行うページだけ
HTTPSにして、それ以外はHTTPでしたのでこの考え方でよかったと思います
2018年ごろからWebサイトの「常時SSL化(常時HTTPS化)」というWebサイトを
すべてHTTPS化する流れになり、現在はほとんどのサイトのすべてのページが
HTTPSとなっています
そうなると通信は
HTTPS->HTTPSなのでデフォルトではRefererは外部に送られることになります
その際にRefererに不要な情報を付けないように制御するための
「リファラポリシー」という仕組みがあり、その設定内容によって、Referer
から情報が漏れないように制御することになります
ですので「仮にHTTPSでGETメソッドを使えばそういった危険性はなくなる」
という訳ではなく、機密情報を取り扱うのであれば適切なリファラポリシーと
POSTメソッドを使用するのが安全です
2021.10.08 03:17
広告
返信投稿用フォーム
スパム防止のためにスレッド作成日から30日経過したスレッドへの投稿はできません。
広告