Secure Coding & OWASP Top 10 for Backend · Lekcja

Uwierzytelnianie wieloskładnikowe i odzyskiwanie konta

Wzmocnią Państwo uwierzytelnianie poza same hasła za pomocą MFA oraz zaprojektują bezpieczne procesy odzyskiwania konta, które nie staną się tylną furtką omijającą zabezpieczenia.

Lekcja 4 z 413 kroki

Uwierzytelnianie wieloskładnikowe i odzyskiwanie konta to bezpłatna lekcja Secure Coding & OWASP Top 10 for Backend na CoddyKit. To lekcja 4 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej Secure Coding & OWASP Top 10 for Backend, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Secure Coding & OWASP Top 10 for Backend zawiera 4 lekcji w sumie.

Części tej lekcji nie zostały jeszcze przetłumaczone i są wyświetlane po angielsku.

Beyond the Password

Strong access control and good session management still rest on one assumption: the user is who they claim. Passwords alone are weak. Multi-factor authentication adds layers so a stolen password is not enough.

The Three Factors

Authentication factors fall into categories:

  • Something you know — password, PIN
  • Something you have — phone, hardware key
  • Something you are — fingerprint, face

MFA combines two or more different categories.

TOTP Authenticator Apps

Time-based One-Time Passwords generate a 6-digit code from a shared secret and the current time. The server computes the same code to verify.

import pyotp
totp = pyotp.TOTP(user_secret)
is_valid = totp.verify(submitted_code)

Why SMS Is Weaker

SMS codes are better than nothing but vulnerable to SIM swapping and interception. Prefer TOTP apps or hardware keys; reserve SMS as a last-resort option.

Hardware Keys and WebAuthn

WebAuthn uses public-key cryptography with a hardware or platform authenticator. There is no shared secret to phish — the strongest widely available MFA.

Backup Codes

What if a user loses their phone? Issue one-time backup codes at enrollment. Store them hashed, just like passwords, and invalidate each after use.

stored = hash(backup_code)
# on use: verify then mark consumed

Recovery Is an Attack Surface

Account recovery often bypasses MFA. If recovery only needs an email link, an attacker who controls the inbox owns the account. Recovery must be as strong as login.

Secure Recovery Tokens

Recovery links should use a high-entropy, single-use, short-lived token, stored hashed and invalidated on use or password change.

token = secrets.token_urlsafe(32)
store(hash(token), expires_in=900)  # 15 minutes

Avoid Recovery Pitfalls

  • Do not reveal whether an email exists (enumeration)
  • Rate-limit recovery requests
  • Notify the user when recovery is initiated
  • Require re-enrollment of MFA after a full reset

Step-Up Authentication

For sensitive actions — changing email, large transfers — require a fresh factor even within an active session. This step-up limits the damage of a hijacked session.

Rate-Limiting the MFA Step

The MFA code entry is itself a target. A six-digit code has only a million possibilities, so without limits an attacker can brute-force it. Rate-limit and lock out after a few wrong codes, and expire each code quickly.

Quick Check

Test your MFA and recovery knowledge.

Recap

You strengthened authentication:

  • MFA combines factors from different categories
  • Prefer TOTP and WebAuthn over SMS
  • Provide hashed backup codes
  • Make recovery as strong as login with single-use, expiring tokens
  • Use step-up auth for sensitive actions
Bezpłatny start

Ucz się Secure Coding & OWASP Top 10 for Backend dzięki korepetycjom AI — za darmo

Pisz i uruchamiaj kod w przeglądarce, otrzymuj natychmiastową pomoc od korepetytora AI dostępnego 24/7 i kontynuuj naukę w sieci lub w aplikacji.

Kursy
12
Lekcje
48

Często zadawane pytania

Czy lekcja „Uwierzytelnianie wieloskładnikowe i odzyskiwanie konta” jest bezpłatna?

Tak — pełny tekst „Uwierzytelnianie wieloskładnikowe i odzyskiwanie konta” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu Secure Coding & OWASP Top 10 for Backend, przejdź na CoddyKit PRO. Kurs Secure Coding & OWASP Top 10 for Backend zawiera 4 lekcji w sumie.

Co nauczysz się w „Uwierzytelnianie wieloskładnikowe i odzyskiwanie konta”?

Wzmocnią Państwo uwierzytelnianie poza same hasła za pomocą MFA oraz zaprojektują bezpieczne procesy odzyskiwania konta, które nie staną się tylną furtką omijającą zabezpieczenia. Ćwiczysz Secure Coding & OWASP Top 10 for Backend z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć Secure Coding & OWASP Top 10 for Backend?

Nie wymagamy żadnego doświadczenia. Secure Coding & OWASP Top 10 for Backend w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 4 z 4.

Ile czasu zajmuje lekcja „Uwierzytelnianie wieloskładnikowe i odzyskiwanie konta”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji Secure Coding & OWASP Top 10 for Backend?

Tak. Każda lekcja Secure Coding & OWASP Top 10 for Backend zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Wdrażanie silnej kontroli dostępu
  2. Bezpieczne mechanizmy uwierzytelniania użytkowników
  3. Najlepsze praktyki zarządzania sesjami
  4. Uwierzytelnianie wieloskładnikowe i odzyskiwanie konta
← Powrót do Secure Coding & OWASP Top 10 for Backend