私はWebセキュリティについて学んでいますが、URLエンコーディングについて非常に混乱しています。誰かが手助けできるなら、それは大きな助けになるでしょう。
PortSwiggerで、URL " http://127.0.0.1/admin "をエンコードすることで " http://127.0.0.1/%2561dmin "として使用できることを学びました'a'を '%61'にしてから、もう一度エンコードすると、%は "%2561"になります
ローカルコンピュータで試してみると、単一のURLエンコーディングが機能します " http://127.0.0.1/%61dmin "
しかし、二重URLエンコードは機能しません " http://127.0.0.1/%2561dmin "
だから私はサーバーがURLをデコードする必要がある時間をどのように知っているかについて混乱しています、そしてこれはいつもそうです、またはそれが私のローカルホストや私が試した他のいくつかの場所で機能しないのでいくつかのケースでしか機能しません.
だから私はサーバーがURLをデコードする必要がある時間をどのように知っているかについて混乱しています
常に一度だけ。これは他のエンコーディングにも当てはまります。つまり、メールのバイナリデータはbase64またはquoted-printableでエンコードされますonce、unicodeはエンコードされますonce utf-8でエンコードされ、HTMLエンコーディングは適用済みonce HTMLなどの<
などの文字に.