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

Tấn công Brute Force (Dò mã vét cạn) trong bảo mật mạng: Cơ chế, ví dụ và phòng thủ

Tấn công Brute Force là gì?

Tấn công Brute Force (Brute Force Attack) là phương pháp thử sai liên tục (trial-and-error) để đoán mật khẩu, khóa mã hóa, PIN, hoặc tìm thư mục/đường dẫn ẩn trên web server. Kẻ tấn công tự động hóa việc thử mọi tổ hợp có thể cho đến khi tìm thấy cái đúng.

Cơ chế hoạt động

For each candidate_password in password_space:
    attempt_login(username, candidate_password)
    if success: return candidate_password

Không gian tìm kiếm (password space) phụ thuộc vào:

  • Độ dài mật khẩu (length).
  • Tập ký tự (charset): chữ thường, hoa, số, ký tự đặc biệt.
  • Entropy (độ ngẫu nhiên): Entropy = log2(N^L) bit (N = kích thước charset, L = độ dài).

Các biến thể phổ biến

Loại tấn côngMô tảHiệu quả
Simple Brute ForceThử mọi tổ hợp ký tự từ độ dài 1 trở lên (aaaa, aaab...).Chỉ hiệu quả với mật khẩu rất ngắn (<8 ký tự) và charset nhỏ.
Dictionary AttackDùng danh sách từ phổ biến (rockyou.txt, 10-million-password-list-top-10000).Rất hiệu quả vì người dùng thường dùng từ điển, pattern quen thuộc.
Hybrid AttackKết hợp dictionary + quy tắc biến đổi (append số, thay chữ số, viết hoa chữ cái đầu...).Cân bằng tốc độ và độ phủ. Hashcat rules, John the Ripper rules.
Credential StuffingDùng cặp user/pass rò rỉ từ breach khác để thử đăng nhập trang khác (tự động hóa).Cực kỳ hiệu quả do thói quen dùng lại mật khẩu.
Password SprayingThử 1-2 mật khẩu phổ biến trên nhiều tài khoản (tránh lockout account).Hiệu quả đối với AD/Azure AD, O365, VPN - bypass account lockout.
Rainbow TableBảng tra cứu trước hash → plaintext (time-memory tradeoff).Hiệu quả với hash không salt (MD5, SHA1 cũ). Vô hiệu với salt + slow hash (bcrypt, Argon2, PBKDF2).
Mask AttackChỉ thử theo pattern đã biết (ví dụ: 8 ký tự, bắt đầu bằng chữ hoa, kết thúc bằng số).Rất nhanh khi biết cấu trúc mật khẩu.

Ví dụ thực tế

  • Mật khẩu "123456": Crack ngay lập tức (top 1 rockyou.txt).
  • Mật khẩu "Password123": Crack trong <1 giây (dictionary + rule: capitalize first + append numbers).
  • Mật khẩu "Tr0ub4dor&3": ~3 ngày trên GPU RTX 4090 (Hashcat, bcrypt cost 12).
  • Mật khẩu "correct-horse-battery-staple": ~550 năm (diceware 4 từ, entropy ~44 bit).
  • WPA2 Handshake: Bắt gói tin 4-way handshake > offline brute force PSK (Hashcat -m 22000).
  • RDP/SSH/FTP/VPN: Online brute force (hydra, medusa, ncrack) - chậm, dễ bị block.

Công cụ tấn công phổ biến (Chỉ để hiểu & phòng thủ)

Công cụĐặc điểmHỗ trợ
HashcatNhanh nhất, GPU acceleration, hỗ trợ 300+ hash mode, rule engine mạnhWindows, Linux, macOS
John the Ripper (Jumbo)CPU-based, hỗ trợ nhiều format, wordlist + rules, community lớnUnix, Windows, macOS, OpenVMS
Hydra / Medusa / NcrackOnline brute force dịch vụ mạng (SSH, RDP, FTP, HTTP, SMB, PostgreSQL...)Cross-platform
Aircrack-ngWi-Fi: crack WEP, WPA/WPA2-PSK (offline từ handshake)Linux (Kali, Parrot), Windows (hạn chế)
L0phtCrackChuyên crack Windows password (SAM, NTDS.dit, DCC2)Windows

Phòng thủ chống Brute Force

1. Mật khẩu mạnh & Quản lý mật khẩu

  • Độ dài ≥ 12 ký tự (khuyên ≥ 16), entropy cao.
  • Dùng Passphrase (diceware) hoặc Password Manager sinh ngẫu nhiên.
  • Không dùng lại mật khẩu giữa các hệ thống.
  • Kiểm tra mật khẩu bị rò rỉ: Have I Been Pwned.

2. Xác thực đa yếu tố (MFA/2FA) - Quan trọng nhất

  • Bật MFA cho: Email, Cloud (AWS/Azure/GCP), VPN, SSH, Admin panel, Social media, Ngân hàng.
  • Ưu tiên: FIDO2/WebAuthn (YubiKey, Passkey) > Authenticator App (TOTP) > SMS/Email (yếu).
  • MFA làm vô hiệu hóa brute force online ngay cả khi mật khẩu bị biết.

3. Khóa tài khoản & Giám sát (Account Lockout & Monitoring)

  • Cấu hình: Account lockout threshold (5-10 lần sai), Lockout duration (15-30 phút), Reset counter.
  • Giám sát log: Event ID 4625 (Windows), auth.log (Linux), CloudTrail (AWS), Azure AD Sign-in logs.
  • Alert: Brute force pattern, password spraying, impossible travel.

4. Rate Limiting & WAF

  • Giới hạn request/phút trên login API, /wp-login.php, /admin, VPN portal.
  • WAF (Cloudflare, AWS WAF, ModSecurity) chặn IP nghi ngờ, challenge CAPTCHA/JS.

5. Bảo vệ Offline Hash (Nếu hash bị rò rỉ)

  • Dùng Slow Hash + Salt: Argon2id (khuyên dùng), bcrypt (cost ≥ 12), PBKDF2 (iterations ≥ 600,000), scrypt.
  • KHÔNG dùng: MD5, SHA-1, SHA-256 đơn lẻ, DES, crypt() cũ.
  • Salt: Ngẫu nhiên, ≥ 16 bytes, duy nhất cho mỗi mật khẩu.

6. Hardening dịch vụ mạng

  • SSH: Tắt PasswordAuthentication, chỉ dùng Public Key + MFA. Thay port mặc định. Fail2ban.
  • RDP: Chỉ cho phép qua VPN/Zero Trust. Network Level Authentication (NLA). RDP Gateway.
  • VPN: Certificate + MFA. Không dùng PSK đơn lẻ.
  • Database/Redis/Mongo: Bind localhost, auth enabled, TLS, strong password.

7. Deception & Honeypot

  • Triển khai Canary tokens, Thinkst Canary, Cowrie SSH honeypot.
  • Phát hiện sớm kẻ dò tìm/tấn công brute force.

Đánh giá rủi ro Brute Force

VectorMức độ rủi roBiện pháp ưu tiên
Online: SSH/RDP/VPN/Web LoginCao (tự động hóa dễ dàng)MFA, Rate limit, Fail2ban, VPN/Zero Trust, Key-based auth
Offline: Hash dump (SAM, NTDS, /etc/shadow, DB leak)Rất cao (không giới hạn tốc độ)Slow hash (Argon2id/bcrypt), Salt, Pepper (HSM), MFA
Wi-Fi WPA2-PSKTrung bình (cần bắt handshake)WPA3 (SAE), Passphrase mạnh ≥ 20 chars, Enterprise (802.1X)
Credential StuffingRất cao (dữ liệu breach dồi dào)MFA, Passwordless, Breach monitoring, Unique password per site