Computer >> Hướng Dẫn Máy Tính >  >> Kết Nối Mạng >> An Ninh Mạng

OTP (Mật khẩu một lần) trong An ninh mạng: Cơ chế, loại, ưu/nhược điểm

OTP (One-Time Password) là gì?

Là mật khẩu chỉ dùng được một lần trong một phiên xác thực hoặc khoảng thời gian ngắn. Thay thế/tăng cường mật khẩu tĩnh (static password) dễ bị keylogger, phishing, replay attack, credential stuffing.

Cơ chế hoạt động

Thuật toán sinh OTP dựa trên 2 yếu tố: Secret Key (Shared Secret) + Moving Factor (Yếu tố thay đổi).

  • HOTP (HMAC-based OTP - RFC 4226): Moving Factor = Counter (đếm số lần sinh). Client và Server đồng bộ counter. Ví dụ: YubiKey OTP, RSA SecurID (cũ).
  • TOTP (Time-based OTP - RFC 6238): Moving Factor = Thời gian (Unix timestamp / 30s). Không cần đồng bộ counter, chỉ cần đồng hồ đúng (±30-60s). Ví dụ: Google Authenticator, Authy, Microsoft Authenticator, 1Password, TOTP trong app ngân hàng.

Các dạng OTP phổ biến

Ưu điểm OTP

  • Chống replay attack (mã cũ không dùng lại được).
  • Giảm rủi ro mật khẩu yếu/trùng lặp.
  • Dễ triển khai (TOTP app miễn phí, chuẩn RFC).
  • Tuân thủ MFA requirement (PCI DSS, NIST, Cyber Insurance).

Nhược điểm & Rủi ro

  • SMS OTP: SIM Swap, SS7, Malware, Phishing real-time (proxy page). NIST SP 800-63B khuyên không dùng SMS cho MFA quan trọng.
  • TOTP App: Mất thiết bị = mất truy cập (cần backup code/recovery). Có thể bị phishing nếu người dùng nhập mã vào trang giả (real-time relay).
  • Token cứng: Chi phí, logistics, có thể mất/hỏng.
  • User friction: Bước thêm, chậm, gây mệt mỏi (MFA fatigue).

OTP trong kiến trúc Zero Trust / Modern Auth

  • TOTP/WebAuthn/FIDO2 là yếu tố "Something you have" trong MFA.
  • Kết hợp: Passwordless (FIDO2 Passkey) + Biometric/PIN = tốt hơn OTP.
  • Adaptive MFA: Chỉ yêu cầu OTP khi rủi ro cao (new device, impossible travel, high-value action).

Best Practice triển khai OTP

  1. Ưu tiên TOTP App / Hardware Token / Push với Number Matching.
  2. Cấm SMS/Voice OTP cho admin, privileged access, high-value transaction.
  3. Cung cấp Backup Codes (10 mã dùng 1 lần) khi setup MFA.
  4. Rate limiting: Khóa tài khoản sau 5-10 lần sai OTP.
  5. Giám sát: Alert trên failed MFA, impossible travel, token replay.
  6. Đào tạo: Nhận diện phishing OTP (proxy page, fatigue attack).
LoạiMô tảĐộ an toàn
TOTP App (Authenticator)App sinh mã 6-8 số, đổi 30s. Secret lưu trên thiết bị.⭐⭐⭐⭐⭐ Cao (không qua mạng, phishing-resistant nếu dùng WebAuthn/FIDO2)
SMS/Voice OTPMã gửi qua tin nhắn/điện thoại.⭐⭐ Thấp (SIM swap, SS7 intercept, malware đọc SMS, phishing real-time)
Email OTPMã gửi qua email.⭐⭐ Thấp (email bị takeover, không real-time)
Hardware Token (YubiKey, RSA)Thiết bị vật lý sinh OTP (HOTP) hoặc FIDO2/WebAuthn.⭐⭐⭐⭐⭐ Rất cao (phishing-resistant, không clone được secret)
Push NotificationApp nhận request approve/deny (Duo, Okta Verify, Microsoft Authenticator).⭐⭐⭐⭐ Cao (number matching, location context, phishing-resistant)