PHP逆引き大全 516の極意

セキュアプログラミングの極意 - Tips466 リダイレクト時の危険性と対策を理解する

登録タグ
PHP
Icon comment count 0
Icon stock count 0

7-8その他のセキュリティTips466 リダイレクト時の危険性と対策を理解する

Level2

Point外部からの入力値を使用したダイレクト処理に潜む脆弱性を理解する

下記のように、header関数を使ってリダイレクトしていたとします。

<?php
header('Location: '.$url);
?>

このとき、$urlに外部からの入力も混じっていた場合、HTTPレスポンスを悪意のあるユーザによって追加(分割)される場合があります。

例として攻撃者が、$urlとして「http://website.example.com/+改行文字+Set-Cookie:任意のセッションID」を送信した場合、HTTPレスポンスは下記のようになります。

Location: http://website.example.com/
Set-Cookie: PHPSESSID=ABCD

このHTTPレスポンスを返すパラメータ付きURLを、攻撃者は予め用意しておき、メールやリンクなどで被害者を誘導します。

誘導された被害者は不意にセッションIDを「ABCD」に固定化され、攻撃

出典情報

Medium

PHP逆引き大全 516の極意

  • 著者: 大家 正登, 茂木 健一, 鮫島 康浩, 谷中 志織

コメント

    コメントはありません