Know-How
OWASP Top 10: Identification and Authentication Failures
Slabá autentizace je vstupní brána do systému. Credential stuffing, session fixation, chybějící MFA — útoky na identitu tvoří většinu bezpečnostních incidentů.
Typické chyby
- Povolení slabých hesel
- Chybějící ochrana proti brute force
- Session ID v URL
- Neomezená platnost session
- Chybějící MFA
Bezpečná session
app.config.update(
SECRET_KEY=os.environ['SECRET_KEY'],
SESSION_COOKIE_HTTPONLY=True,
SESSION_COOKIE_SECURE=True,
SESSION_COOKIE_SAMESITE='Lax',
PERMANENT_SESSION_LIFETIME=1800,
)
Rate limiting
const rateLimit = require('express-rate-limit');
const loginLimiter = rateLimit({
windowMs: 15 * 60 * 1000,
max: 5,
message: { error: 'Příliš mnoho pokusů.' },
});
app.post('/api/login', loginLimiter, loginHandler);
TOTP MFA
import pyotp
secret = pyotp.random_base32()
totp = pyotp.TOTP(secret)
uri = totp.provisioning_uri(name="[email protected]", issuer_name="MyApp")
# Ověření
totp.verify(code, valid_window=1)
Klíčový takeaway
Silná hesla + rate limiting + MFA + bezpečné sessions. Používejte proven knihovny, neimplementujte vlastní krypto.