3

コードビハインドで iframe の src を次のように設定しています。

iframe.Attributes.Add("src", string.Format("/page.aspx?a={0}&b={1}", aVal, bVal);

まれに、page.aspx で次のことが当てはまることに気付きました。

Request.QueryString["b"] == null

リクエスト データの一部をログに記録し始めました。このページが毎日アクセスされる数千回のうち、データは通常次のようになります。

Request.Url: http://www.mydomain.com/page.aspx?a=1&b=2
Request.Referrer: http://www.mydomain.com/referrer/
Request.Querystring: a=1&b=2

1 日に約 6 回、データは次のようになります。

Request.Url: http://www.mydomain.com/page.aspx?a=1&b=2
Request.Referrer: http://www.mydomain.com/referrer/
Request.QueryString: a=1&%3bb=2

URL エンコードされたセミコロン %3b がクエリ文字列に含まれていることを除いて、すべてがまったく同じであることがわかります。リファラー URL は、page.aspx が正しくアクセスされており、ユーザーがブラウザーに手動で入力していないことを示しています。このページも安全なメンバー専用エリアにあり、これがランダムなコンテンツのランダムなユーザーに発生していることを確認しました. これを再現できません。Request.Url 値に移動すると、%3b はクエリ文字列に表示されません。また、Request.Referrer 値に移動して、顧客と同じ方法でコンテンツにアクセスしても、%3b は表示されません。クエリ文字列。Request.Referrer 値は、page.aspx を読み込む唯一のページです。

%3b がクエリ文字列に入る可能性がある方法はありますか?

4

0 に答える 0