Khai thác Lỗ Hổng FortiWeb Nghiêm Trọng: RCE không xác thực

Khai thác Lỗ Hổng FortiWeb Nghiêm Trọng: RCE không xác thực

Metasploit Framework vừa bổ sung một module khai thác mới nhắm mục tiêu vào các lỗ hổng bảo mật nghiêm trọng trên tường lửa ứng dụng web (WAF) FortiWeb của Fortinet. Module này thực hiện chuỗi khai thác lỗ hổng FortiWeb bằng cách kết hợp hai lỗ hổng được công bố gần đây, cho phép thực thi mã từ xa (RCE) không cần xác thực với quyền root.

Module mới được xác định là exploit/linux/http/fortinet_fortiweb_rce, tự động hóa một chuỗi tấn công phức tạp. Chuỗi tấn công này bỏ qua các cơ chế xác thực trước khi thực thi các lệnh hệ điều hành tùy ý, dẫn đến việc chiếm quyền kiểm soát hoàn toàn thiết bị.

Nội dung
Giới Thiệu Module Khai Thác FortiWeb Mới
Chi Tiết Kỹ Thuật về Các Lỗ Hổng

CVE-2025-64446: Lỗ Hổng Bỏ Qua Xác Thực
CVE-2025-58034: Lỗ Hổng Chèn Lệnh Đã Xác Thực
Cơ Chế Khai Thác của Metasploit Module
Biện Pháp Khắc Phục và Giảm Thiểu Rủi Ro

Giới Thiệu Module Khai Thác FortiWeb Mới

Việc phát hành module này diễn ra sau các báo cáo về tình trạng khai thác đang diễn ra trên thực tế, bao gồm cả việc Fortinet triển khai các “bản vá im lặng” (silent patches) và các phương pháp vượt qua chúng sau đó. Tình hình này đã khiến nhiều thiết bị FortiWeb vẫn còn tiềm ẩn nguy cơ bị xâm nhập.

Module Metasploit này khai thác chuỗi các lỗ hổng bao gồm CVE-2025-64446CVE-2025-58034. Mục tiêu cuối cùng là đạt được quyền truy cập cấp root trên hệ thống FortiWeb, cho phép kẻ tấn công thực thi bất kỳ lệnh nào.

Khả năng này biến một kẻ tấn công từ không có bất kỳ quyền truy cập nào thành toàn quyền kiểm soát hệ thống chỉ trong vài giây, làm nổi bật mức độ nghiêm trọng của những lỗ hổng này.

Chi Tiết Kỹ Thuật về Các Lỗ Hổng

CVE-2025-64446: Lỗ Hổng Bỏ Qua Xác Thực

Lỗ hổng đầu tiên trong chuỗi là CVE-2025-64446, một lỗ hổng bỏ qua xác thực có mức độ nghiêm trọng cao với điểm CVSS 9.1. Theo phân tích của các nhà nghiên cứu tại watchTowr, lỗ hổng này liên quan đến vấn đề tấn công leo thang đường dẫn (path traversal) kết hợp với việc xử lý không đúng tiêu đề CGIINFO.

Bằng cách thao tác với tiêu đề này và điều hướng đến tệp thực thi fwbcgi, một kẻ tấn công không cần xác thực có thể mạo danh người dùng quản trị viên tích hợp sẵn. Điều này cho phép kẻ tấn công tạo một tài khoản quản trị viên mới mà không yêu cầu bất kỳ thông tin đăng nhập hợp lệ nào. Chi tiết về lỗ hổng này đã được công bố, cho thấy đây là một lỗ hổng nghiêm trọng.

CVE-2025-58034: Lỗ Hổng Chèn Lệnh Đã Xác Thực

Sau khi thiết lập được quyền truy cập quản trị, module khai thác sẽ tận dụng CVE-2025-58034 để xâm nhập vào hệ thống bên dưới. Lỗ hổng thứ hai này là một lỗi chèn lệnh đã xác thực, được tìm thấy trong API và CLI của FortiWeb. Vấn đề nằm ở chỗ các ký tự đặc biệt trong các lệnh hệ điều hành không được xử lý đúng cách, cho phép kẻ tấn công thực thi mã độc.

Phân tích của Rapid7 xác nhận rằng lỗ hổng này cho phép một người dùng đã xác thực thoát khỏi các giới hạn shell dự kiến. Từ đó, họ có thể thực thi các lệnh với tư cách là người dùng root. Bằng cách kết hợp hai lỗ hổng này, module Metasploit cho phép kẻ tấn công bên ngoài đi từ không có quyền truy cập đến kiểm soát toàn bộ hệ thống.

Cơ Chế Khai Thác của Metasploit Module

Module Metasploit được thiết kế linh hoạt cho nhiều kịch bản tấn công khác nhau để khai thác lỗ hổng FortiWeb. Ở chế độ mặc định, nó tự động khai thác lỗ hổng bỏ qua xác thực (CVE-2025-64446) để tạo một tài khoản quản trị viên ngẫu nhiên.

Sau đó, module sử dụng thông tin đăng nhập mới này để xác thực và kích hoạt lỗ hổng chèn lệnh (CVE-2025-58034). Ngoài ra, nếu kẻ tấn công đã có sẵn thông tin đăng nhập hợp lệ, module có thể được cấu hình để bỏ qua giai đoạn bỏ qua xác thực và trực tiếp khai thác CVE-2025-58034. Điều này cung cấp khả năng linh hoạt cho các tình huống tấn công khác nhau.

Về mặt kỹ thuật, phương pháp khai thác sử dụng cơ chế tải lên theo từng khối (chunked upload) để gửi payload của nó. Như được trình bày trong tài liệu yêu cầu kéo (pull request), module tải lên một “bootstrap payload” theo nhiều phần (ví dụ: 4 khối) trước khi tổng hợp và thực thi chúng.

Phương pháp này đảm bảo việc thực thi đáng tin cậy ngay cả trong môi trường hạn chế của thiết bị FortiWeb. Việc khai thác thành công sẽ cấp một shell với uid=0(root), trao cho kẻ tấn công quyền kiểm soát hoàn toàn đối với thiết bị WAF. Đây là một ví dụ điển hình về remote code execution toàn diện.

Biện Pháp Khắc Phục và Giảm Thiểu Rủi Ro

Fortinet đã phát hành các bản vá bảo mật để giải quyết các lỗ hổng này. Người dùng được khuyến nghị mạnh mẽ nên nâng cấp lên FortiWeb phiên bản 8.0.2 hoặc mới hơn ngay lập tức. Việc áp dụng bản vá là bước đầu tiên và quan trọng nhất để ngăn chặn việc khai thác lỗ hổng FortiWeb.

Tuy nhiên, do CVE-2025-64446 cho phép tạo âm thầm các tài khoản quản trị viên độc hại, chỉ đơn thuần vá lỗi là không đủ đối với các thiết bị có khả năng đã bị xâm phạm. Các đội ngũ an ninh mạng cần thực hiện kiểm tra kỹ lưỡng danh sách người dùng của mình để tìm các tài khoản không xác định.

Ngoài ra, cần xem xét các nhật ký (logs) hệ thống để phát hiện các yêu cầu truy cập tới đường dẫn /api/v2.0/cmdb/system/admin có nguồn gốc từ các địa chỉ IP không đáng tin cậy. Dưới đây là các chỉ số có thể dùng để phát hiện xâm nhập:

  • Kiểm tra danh sách người dùng quản trị viên FortiWeb cho các tài khoản không rõ.
  • Xem xét nhật ký truy cập web/API tìm các yêu cầu đến /api/v2.0/cmdb/system/admin.
  • Đặc biệt chú ý đến các yêu cầu từ các địa chỉ IP lạ hoặc không thuộc mạng nội bộ đáng tin cậy.

Việc theo dõi chặt chẽ các dấu hiệu này là cần thiết để xác định và loại bỏ bất kỳ sự hiện diện trái phép nào trên hệ thống FortiWeb đã bị xâm phạm.