Lỗ hổng Zero-day SAP nguy hiểm: RCE và bản vá khẩn cấp

Các nhà nghiên cứu an ninh mạng đã tiết lộ cơ chế hoạt động chi tiết của một mã khai thác nhắm vào một lỗ hổng zero-day nghiêm trọng trong SAP NetWeaver’s Visual Composer Metadata Uploader, được định danh là CVE-2025–31324.
Lỗ hổng zero-day này tiềm ẩn nguy cơ cao đối với các hệ thống SAP, đòi hỏi các tổ chức phải đặc biệt chú ý đến biện pháp phòng ngừa và vá lỗi.
Phân tích lỗ hổng CVE-2025-31324
Lỗ hổng CVE-2025–31324 xuất phát từ việc thiếu kiểm tra ủy quyền (authorization check) trên điểm cuối HTTP /developmentserver/metadatauploader.
Sự thiếu sót này cho phép thực hiện các thao tác tải lên tệp không cần xác thực (unauthenticated file uploads).
Điều này có thể dẫn đến khả năng thực thi mã từ xa (remote code execution – RCE) với đặc quyền của tài khoản dịch vụ SAP.
Đây là một nguy cơ bảo mật nghiêm trọng, cho phép kẻ tấn công kiểm soát hệ thống mà không cần thông tin đăng nhập hợp lệ.
Cơ chế khai thác và hoạt động của mã độc
Mã khai thác và Web Shell
Mã khai thác, ban đầu được công bố bởi vx-underground, tự động hóa quy trình tấn công.
Nó thực hiện bằng cách tạo các yêu cầu HTTP POST để tải lên các tệp tùy ý.
Các tệp này thường là các JSP web shell độc hại, qua đó cấp cho kẻ tấn công quyền truy cập liên tục vào các hệ thống SAP bị ảnh hưởng.
Kỹ thuật khai thác lỗ hổng zero-day này tận dụng việc servlet không xác thực các tệp tải lên.
Điều này cho phép ghi trực tiếp các tệp vào các thư mục có thể truy cập qua web, điển hình là /irj/servlet_jsp/irj/root/.
Chế độ kiểm tra và triển khai Payload
Ở chế độ kiểm tra (check mode), mã khai thác sử dụng payload Java deserialization để xác minh một cách bí mật.
Quá trình này được thực hiện thông qua kiểm thử bảo mật ứng dụng ngoài băng tần (Out-of-Band Application Security Testing – OAST).
Tại đây, một đối tượng được tuần tự hóa (serialized object) kích hoạt cuộc gọi lại đến máy chủ do kẻ tấn công kiểm soát mà không cần triển khai một web shell hiển thị.
Để thực hiện khai thác hoàn toàn, mã khai thác chuyển sang tải lên một JSP web shell.
Web shell này thường được mã hóa bằng Base64 bên trong mã khai thác để tránh bị phát hiện.
Nó sẽ được giải mã khi thực thi và truyền tải qua các yêu cầu POST multipart/form-data.
Theo phân tích kỹ thuật từ detect.fyi, các payload, như tệp helper.jsp, tích hợp các mẫu command injection.
Chúng sử dụng Runtime.getRuntime().exec() để thực thi các lệnh hệ thống được truyền qua các tham số URL như ?cmd=, đồng thời truyền lại đầu ra cho kẻ tấn công.
Các tính năng hỗ trợ khai thác
Mã khai thác hỗ trợ phân tích đối số cho quét đa mục tiêu và sử dụng đa luồng (threading) cho các hoạt động đồng thời.
Ngoài ra, nó còn có các tùy chọn xử lý SSL cũ và bỏ qua chứng chỉ, giúp nó mạnh mẽ trong nhiều môi trường mạng khác nhau.
Việc ngẫu nhiên hóa tên tệp, như tạo chuỗi chữ và số 8 ký tự hoặc thêm tiền tố dấu chấm để che giấu, tăng cường khả năng lẩn tránh.
Logic của mã khai thác đảm bảo tương thích với kiến trúc dựa trên Java của SAP.
Nó có khả năng mở rộng sang triển khai WAR hoặc JAR để duy trì sự bền bỉ nâng cao cho lỗ hổng zero-day này.
Chỉ dấu thỏa hiệp (Indicators of Compromise – IoC)
Các dấu vết sau khai thác lỗ hổng zero-day này bao gồm:
- Lưu lượng HTTP bất thường đến điểm cuối /metadatauploader, thường với User-Agent python-requests.
- Các biểu mẫu multipart chứa tên tệp JSP.
- Các tệp không mong muốn trong các thư mục của SAP hiển thị các mẫu thực thi (exec patterns) hoặc các hash đã biết như:
1f72bd2643995fab4ecf7150b6367fa1b3fab17afd2abed30a98f075e4913087- Nhật ký máy chủ có thể tiết lộ các lệnh gọi webshell với các lệnh được mã hóa.
- Các kết nối ra ngoài đến các máy chủ độc hại để tải xuống công cụ.
- Các tiến trình bất thường được tạo ra bởi SAP Java engine, ví dụ như thực thi bash giải mã payload Base64.
Chiến lược giảm thiểu và phát hiện
Biện pháp giảm thiểu
Giảm thiểu rủi ro từ lỗ hổng zero-day này bắt đầu bằng việc áp dụng SAP Security Note 3594142, được phát hành vào tháng 4 năm 2025.
Lưu ý bảo mật này nhằm mục đích thực thi các kiểm tra ủy quyền cần thiết.
Các bước tạm thời bao gồm cách ly mạng của điểm cuối bị ảnh hưởng và vô hiệu hóa Visual Composer nếu không sử dụng.
Triển khai các quy tắc WAF (Web Application Firewall) để chặn các hoạt động tải lên đáng ngờ cũng là một biện pháp quan trọng để bảo vệ chống lại các cuộc tấn công remote code execution.
Chiến lược phát hiện
Các chiến lược phát hiện nhấn mạnh việc quét các IoC bằng các công cụ như Nuclei templates.
Xem xét nhật ký để tìm các yêu cầu POST không được xác thực và giám sát lưu lượng truy cập ra ngoài cũng rất cần thiết.
Các quy tắc phát hiện điểm cuối nhắm vào các tiến trình SAP khởi chạy shell hoặc tiện ích mạng cung cấp khả năng bảo vệ liên tục.
Điều này nhấn mạnh sự cần thiết của việc áp dụng bản vá bảo mật nhanh chóng và kịp thời.
Việc vá lỗi là cực kỳ quan trọng trong bối cảnh khai thác lỗ hổng zero-day này đã và đang diễn ra rộng rãi bởi tội phạm mạng và các nhóm hacker được nhà nước bảo trợ kể từ tháng 3 năm 2025.
Để tìm kiếm thêm thông tin về các lỗ hổng đã được công bố, bạn có thể tham khảo Cơ sở dữ liệu lỗ hổng quốc gia (NVD).









