回答編集履歴

1

コメントへの回答を追記しました

2021/03/13 04:47

投稿

ockeghem
ockeghem

スコア11701

test CHANGED
@@ -67,3 +67,29 @@
67
67
 
68
68
 
69
69
  パーセントエンコードについては、URLを記載する際やアドレスバーに設定する際に必要になります。例外はMETHOD=GETのフォームでinput要素等に指定する場合で、この場合はブラウザが自動的にパーセントエンコードしてくれます。パーセントエンコードが必要な文字はRFCで規定されていますが、パーセントエンコードが必要とされる文字でも文脈上誤解の余地がなければブラウザが適当に解釈してくれます。
70
+
71
+
72
+
73
+ ---
74
+
75
+ (コメントへの返答を追記)
76
+
77
+
78
+
79
+ > ■つまり、METHOD=GETのフォームでパラメータを送信し、その値をBurpSuiteなどで改竄する時は、
80
+
81
+ パーセントエンコーディングされた値を挿入しなければならないという理解であっておりますでしょうか?
82
+
83
+
84
+
85
+ はい。そのとおりです。
86
+
87
+
88
+
89
+ > また、すいません、上記に関連して、一つ追加で質問をさせて頂けないでしょうか。
90
+
91
+ ■「例外はMETHOD=GETのフォームで〜」とご回答頂いておりますが、METHOD=POSTとcookieに保存された値もブラウザが自動的にパーセントエンコードしてくれるのでしょうか?
92
+
93
+
94
+
95
+ POSTはその通りです。cookieは言語やライブリに依存しますが、PHPのsetcookieの場合はパーセントエンコードしますが、setrawcookieの場合はパーセントエンコードしません。そもそもcookieをセットするのはブラウザではないですね。ブラウザはサーバーがSet-Cookieヘッダで指定した値を保存するだけで、その際にパーセントエンコードは考慮しません。