This vulnerability occurs when an application places its authentication logic solely within the client-side code, such as in a mobile app or web browser, without enforcing the same checks on the server. Attackers can bypass authentication by modifying the client to skip these checks entirely.
Relying on client-side authentication creates a critical security flaw because the attacker controls the client environment. They can easily decompile an app, inspect JavaScript, or use debugging tools to analyze and remove the authentication logic. Since the server blindly trusts the client's claim of being authenticated, this allows unauthorized access to protected functions and data. To prevent this, authentication must always be verified and enforced on the server. Every request for a protected resource or action should be validated server-side using a secure session or token that the client cannot forge. Treat all client-side code as inherently untrustworthy and ensure the server is the final authority on user identity and permissions.
Impact: Bypass Protection MechanismGain Privileges or Assume Identity