Weak Password Requirements
The product does not require that users should have strong passwords, which makes it easier for attackers to compromise user accounts.
Without strong password requirements, users often choose weak, easily guessable passwords. This makes brute-force and dictionary attacks more likely to succeed.
Comment corriger cette vulnérabilité
Stratégies de prévention pour Weak Password Requirements basées sur 2 règles de détection Shoulder.
Enforce minimum 12-character passwords with complexity requirements
func validatePassword(password string) error { - if len(password) < 6 { - return errors.New("too short") + if len(password) < 12 { + return errors.New("password must be at least 12 characters") + } + var hasUpper, hasLower, hasDigit, hasSpecial bool + for _, c := range password { + switch { + case unicode.IsUpper(c): hasUpper = true + case unicode.IsLower(c): hasLower = true + case unicode.IsDigit(c): hasDigit = true + case unicode.IsPunct(c) || unicode.IsSymbol(c): hasSpecial = true + } + } + if !hasUpper || !hasLower || !hasDigit || !hasSpecial { + return errors.New("password must include upper, lower, digit, and special char") } return nil }
Require minimum 12 characters with complexity checks or use a password strength library
- if (password.length < 6) { - throw new Error('Password too short'); + const zxcvbn = require('zxcvbn'); + + if (password.length < 12 || zxcvbn(password).score < 3) { + throw new Error('Password too weak'); }
Trouvez les vulnérabilités dans votre code
Utilisez Shoulder pour scanner votre code à la recherche de patterns Weak Password Requirements. 2 règles.
# Scan with Shoulder CLI npx @shoulderdev/cli trust --cwe=521 # Or scan entire project npx @shoulderdev/cli trust .
Règles de Détection (2)
Ce qu'il faut surveiller lors des revues de code
Ces patterns indiquent des vulnérabilités potentielles Weak Password Requirements. Recherchez-les lors des revues de code et des audits de sécurité.
Scannez votre base de code pour Weak Password Requirements
Shoulder CLI trouve les motifs vulnérables dans toute votre base de code.