This vulnerability occurs when an application accepts user input as a reference (like a file path or resource identifier) but fails to properly check if that input is functionally equivalent to a dangerous or restricted value.
Attackers can bypass security checks by crafting inputs that look safe to the validation layer but are processed as dangerous by a downstream system. For instance, a filter might block the exact string `<script>` using a case-sensitive match, but a browser interprets HTML tags case-insensitively, so an input like `<ScRiPt>` would bypass the filter and still execute. This happens because validation logic often makes assumptions about how data will be interpreted later in the processing chain. To prevent this, security checks must validate inputs based on the same parsing rules used by the ultimate consumer of that data, such as the operating system, database, or web browser.
Impact: Varies by Context
Strategy: Input Validation
Effectiveness: High