2

私はこれに対する答えを知っているとかなり確信していますが、具体的な情報を見つけるのに苦労しています. クライアントは、必要に応じて要求パラメーターを提供する http サーバーに要求を送信することを認識しています。サーバーには、オブジェクトを介してリクエスト属性に情報を保存する追加機能があります。私の質問は、クライアントが http 要求オブジェクトの属性にアクセスできるかどうかです。次のような不適切に記述されたコードが多数あります。

if (request.getAttribute("name") != null)
    name = request.getAttribute("name);
else if (request.getParameter("name") != null)
    name = request.getParameter("name");

これは、元の開発者が、クライアント側の http 要求がサーバーにデータを送信する方法を完全に理解していなかったためだと思います。いずれにせよ、私は現在、XSS の脆弱性を防ぐために要求データの追加の検証とエンコードの実装に取り​​組んでおり、クライアントが要求属性を破損/ハッキング/利用する可能性があるかどうか疑問に思いました (属性が取り込まれていないと仮定して)クライアントから提供されたデータ)?

4

1 に答える 1

2

いいえ。属性はサーブレット仕様が追加するものであり、リクエストで動作するさまざまなエンティティ間の通信に使用できます。それらはネットワーク上を移動しないため、クライアント側には存在しません。

クライアントは本文、パラメーター (つまり URL)、およびヘッダーを設定できます。

見る:

于 2013-04-25T09:44:10.563 に答える