ウェブアプリケーションは、隠しフォームフィールドのように、不変であると想定されながら実際には外部から制御可能な入力を十分に検証していない。
ウェブ製品が、隠されたフォームフィールド、パラメータ、クッキー、URL において、想定された不変値を改ざんから適切に保護しない場合、重要なデータの改ざんにつながる可能性があります。ウェブ・アプリケーションはしばしば、隠されたフィールドやクッキーでクライアントに渡されたデータは改ざんされにくいと誤解しています。ユーザが制御可能なデータの妥当性確認が不適切だと、アプリケーションは不正な、そしてしばしば悪意のある入力を処理 することになります。
例えば、カスタム・クッキーは一般にセッション・データやセッションをまたがる永続的なデータを保存します。この種のセッションデータは通常、ユーザ認証やアクセス制御のようなサーバ側のセキュリティ関連の決定に関与します。従って、クッキーはユーザ認証情報や 権限のような機密データを含むかもしれません。これは、サーバ側のアプリケーションがクライアントから提供されたクッキーの値に不適切に依存することになりがちなので、危険な慣行です。
The web application does not sufficiently verify inputs that are assumed to be immutable but are actually externally controllable, such as hidden form fields.
If a web product does not properly protect assumed-immutable values from modification in hidden form fields, parameters, cookies, or URLs, this can lead to modification of critical data. Web applications often mistakenly make the assumption that data passed to the client in hidden fields or cookies is not susceptible to tampering. Improper validation of data that are user-controllable can lead to the application processing incorrect, and often malicious, input.
For example, custom cookies commonly store session data or persistent data across sessions. This kind of session data is normally involved in security related decisions on the server side, such as user authentication and access control. Thus, the cookies might contain sensitive data such as user credentials and privileges. This is a dangerous practice, as it can often lead to improper reliance on the value of the client-provided cookie by the server side application.