Tổng quan

Bài viết này phân tích lỗ hổng CVE-2025-53772, dựa trên mã nguồn PoC trong repository sailay1996/CVE-2025-53772. Nội dung tập trung vào cơ chế tấn công, nguyên nhân kỹ thuật, luồng khai thác, điều kiện xảy ra lỗ hổng và mức độ ảnh hưởng đối với hệ thống sử dụng Microsoft Web Deploy.
Lỗ hổng được phân loại là Remote Code Execution (RCE), xuất phát từ quá trình deserialization dữ liệu không an toàn, cho phép kẻ tấn công đã xác thực thực thi lệnh tùy ý trên hệ thống Windows Server.
1. Bản chất lỗ hổng
Lỗ hổng nằm trong Web Deploy Agent Service (cổng 80/8172) khi Web Deploy xử lý các gói triển khai (deployment packages). Một tác nhân đã xác thực có thể gửi một payload được tạo thủ công khiến Web Deploy deserialize dữ liệu không đáng tin, dẫn đến:
- ghi file tùy ý,
- thực thi lệnh trên hệ thống,
- chiếm quyền điều khiển hoàn toàn máy chủ.
Nguyên nhân chính:
- Web Deploy sử dụng bộ phân tích cấu trúc deployment package mà không xác thực an toàn định dạng.
- Một số trường truyền tải trong request có thể chứa dữ liệu đã được nhúng các object độc hại.
PoC sử dụng chính điểm này để chèn payload khai thác.
2. Điều kiện khai thác
Các điều kiện để khai thác thành công:
- Dịch vụ Web Deploy chạy trên máy chủ (Agent Service hoặc endpoint
/msdeploy.axd). - Kẻ tấn công có tài khoản hợp lệ: NTLM hoặc Basic.
- Không có bộ lọc kiểm tra nội dung gói deployment.
Đây là lỗ hổng authenticated RCE, nhưng rủi ro vẫn rất cao vì nhiều môi trường CI/CD hoặc server nội bộ thường cấp tài khoản Web Deploy cho nhiều nhóm dev.
3. Cơ chế khai thác qua PoC
PoC trong repository cho thấy rõ cách thức hoạt động của khai thác.
3.1 Luồng tấn công
- Kẻ tấn công tạo payload thông qua script
CVE-2025-53772.py. - Payload được gửi thông qua giao thức Web Deploy tới server.
- Server xử lý gói — gặp nội dung không hợp lệ nhưng vẫn deserialize đối tượng.
- Đoạn mã được nhúng trong payload được thực thi trên máy chủ Windows.
3.2 Payload PoC hoạt động như thế nào?
Payload được xây dựng trong Python để:
- Nhúng command execution thông qua
cmd.exe. - Đóng gói payload theo format deployment package.
- Tạo request POST tới endpoint dễ bị tấn công.
Ví dụ request chứa header và body tương tự traffic Web Deploy hợp lệ, khiến hệ thống không phát hiện bất thường.
4. Phân tích mã nguồn PoC
4.1 Kiến trúc file
📦CVE-2025-53772
┣ 📄CVE-2025-53772.py
┣ 📄README.md
┣ 📄requirements.txt
┗ 📄poc_demo.gif
4.2 Điểm chính trong mã
- Tạo payload bằng serialized XML.
- Chèn lệnh thực thi qua trường deployment.
- Gửi request HTTP với xác thực NTLM hoặc Basic.
- Tùy chọn ghi file tạm để chứng minh RCE.
4.3 Các endpoint mục tiêu
/MSDEPLOYAGENTSERVICE– dùng NTLM./msdeploy.axd– dùng Basic.
5. Mức độ ảnh hưởng
Lỗ hổng cho phép toàn quyền điều khiển máy chủ Windows chạy Web Deploy.
Các nguy cơ:
- Deploy shell backdoor.
- Ghi file vào thư mục IIS.
- Lateral movement sang AD.
- Cài ransomware.
Đây là một RCE nghiêm trọng trong môi trường CI/CD hoặc server web doanh nghiệp.
6. Phòng chống & khuyến nghị
6.1 Biện pháp giảm thiểu
- Cập nhật Web Deploy lên phiên bản vá mới nhất.
- Bật firewall nội bộ, chỉ cho phép IP tin cậy truy cập port Web Deploy.
- Tắt dịch vụ nếu không cần thiết.
- Kiểm tra toàn bộ account có quyền deploy.
6.2 Đối với pentester
- PoC chỉ dùng trong kiểm thử hợp pháp.
- Kiểm tra endpoint Web Deploy trong các pentest nội bộ.
- Đối chiếu traffic để xác định dấu hiệu deserialize.
7. Ví dụ cấu hình khai thác
Khai thác bằng NTLM Auth
python3 CVE-2025-53772.py \
-t 192.168.1.100 \
-u "WORKSTATION/Admin" \
-P "P@ssw0rd" \
--ntlm \
--proof-temp
Khai thác endpoint msdeploy.axd
python3 CVE-2025-53772.py \
-t 192.168.1.100 \
--port 8172 \
--endpoint "/msdeploy.axd" \
-u "webdeploy" \
-P "Pass123"
Kết luận
Lỗ hổng CVE-2025-53772 là một lỗi deserialization dẫn đến RCE trong Microsoft Web Deploy. PoC trong repository cung cấp một minh chứng rõ ràng và trực quan về cách khai thác lỗ hổng thông qua deployment package được tạo thủ công. Đây là lỗi nghiêm trọng và cần được xử lý ngay trong môi trường thực tế.
Source link: CVE-2025-53772






