# Improper Authentication (CWE-287) When an actor claims to have a given identity, the product does not prove or insufficiently proves that the claim is correct. **Stack:** Python - Prevalence: Élevée Fréquemment exploitée - Impact: Critique 2 règles de sévérité critique - Prevention: Documentée 2 exemples de correctifs **OWASP:** Identification and Authentication Failures (A07:2021-Identification and Authentication Failures) - #7 ## Description Authentication is the process of determining if a claimed identity is correct. When authentication is insufficient or incorrect, attackers can assume the identity of legitimate users. ## Prevention Stratégies de prévention pour Improper Authentication basées sur 1 règles de détection Shoulder. ### Python Use early returns for authentication failures and constant-time comparison ## Warning Signs - [CRITICAL] authentication checks that can be bypassed due to missing return statements or weak boolean logic ## Consequences - Obtenir des privilèges - Contourner le mécanisme de protection - Lecture des données de l'application ## Mitigations - Utilisez l'authentification multifacteur - Utilisez une bibliothèque ou un framework éprouvé pour l'authentification - Mettez en place des politiques de mots de passe appropriées ## Detection - Total rules: 2 - Critical: 2 - Languages: javascript, typescript, python ## Rules by Language ### Python (1 rules) - **Authentication Bypass Vulnerability** [CRITICAL]: Detects authentication checks that can be bypassed due to missing return statements or weak boolean logic. - Remediation: Use early returns for authentication failures to prevent bypass. ```python if not user or not check_password_hash(user.password_hash, password): return jsonify({'error': 'Invalid credentials'}), 401 ``` Learn more: https://shoulder.dev/learn/python/cwe-287/authentication-bypass