Skip to main content

Command Palette

Search for a command to run...

Lỗ hổng heap overflow trên Fortinet FortiOS bị khai thác triển khai RAT PivotC2

Updated
•10 min read•View as Markdown
Lỗ hổng heap overflow trên Fortinet FortiOS bị khai thác triển khai RAT PivotC2

Vừa qua, công ty threat intelligence SOCRadar công bố chiến dịch tấn công có chủ đích nhắm vào các thiết bị Fortinet FortiGate đang khai thác lỗ hổng thực thi mã từ xa CVE-2025-25249 để triển khai một Remote Access Trojan tùy chỉnh mang tên PivotC2 viết bằng Node.js. Chiến dịch được SOCRadar Threat Research Unit xác định đã hoạt động từ ít nhất tháng 07/2026 và vẫn đang tiếp diễn tại thời điểm công bố. Tính đến thời điểm phân tích, kẻ tấn công đã quét hơn 30.000 địa chỉ IP, lây nhiễm 178 thiết bị với PivotC2, và ít nhất hai vụ xâm phạm dẫn đến đánh cắp dữ liệu thực tế, chủ yếu nhắm vào các tổ chức Mỹ. CISA đã bổ sung CVE-2025-25249 vào danh sách Known Exploited Vulnerabilities (KEV) và yêu cầu các cơ quan liên bang vá trong vòng ba ngày theo BOD 26-04. SOCRadar đánh giá với độ tin cậy cao rằng threat actor đứng sau chiến dịch là nhóm tội phạm mạng nói tiếng Nga, và PivotC2 nhiều khả năng được phát triển với sự hỗ trợ của AI.


Thông tin chi tiết

  • Định danh lỗ hổng: CVE-2025-25249

  • Điểm CVSS(3.1): 7.3 (Fortinet advisory) / 9.8 (NVD) — khuyến nghị ưu tiên xử lý theo NVD 9.8

  • Mức độ nghiêm trọng: CRITICAL – Cực kỳ nghiêm trọng (theo NVD)

  • Mô tả: CVE-2025-25249 là lỗ hổng heap-based buffer overflow trong daemon cw_acd (CAPWAP daemon) của FortiOS và FortiSwitchManager. Lỗ hổng phát sinh khi daemon xử lý các gói tin CAPWAP (Control and Provisioning of Wireless Access Points), giao thức Fortinet sử dụng để quản lý tập trung các wireless access point từ FortiGate firewall. Kẻ tấn công không cần xác thực có thể gửi CAPWAP packet được craft đặc biệt tới UDP port 5246, kích hoạt tràn bộ nhớ heap và làm hỏng vùng nhớ liền kề trong tiến trình cw_acd. Kẻ tấn công sau đó áp dụng kỹ thuật ROP (Return-Oriented Programming), tái sử dụng các đoạn mã hợp lệ đã có trong bộ nhớ để điều hướng luồng thực thi, giúp bypass cơ chế bảo vệ NX/DEP mà không cần inject mã mới. Kết quả là thực thi mã tùy ý trên FortiGate device mà không cần bất kỳ xác thực hay tương tác người dùng nào.

  • Phiên bản bị ảnh hưởng: FortiOS và FortiSwitchManager trước bản vá tháng 01/2026

  • Bản vá phát hành: 13/01/2026 (Fortinet PSIRT Advisory FG-IR-25-084)

Phần mềm độc hại PivotC2 RAT

PivotC2 là Node.js-based RAT tùy chỉnh được thiết kế đặc biệt cho môi trường FortiGate post-exploitation. Đây là điểm đáng chú ý: thay vì sử dụng generic RAT thông thường, threat actor đã đầu tư phát triển công cụ chuyên biệt cho FortiOS, với khả năng khai thác sâu các tính năng đặc thù của nền tảng Fortinet mà generic tool không có. SOCRadar đánh giá PivotC2 nhiều khả năng được phát triển với sự hỗ trợ của AI, dựa trên cấu trúc mã và tốc độ phát triển tính năng không điển hình của một công cụ được xây dựng thủ công hoàn toàn.

Các tính năng của PivotC2:

Tính năng Mô tả
Interactive shell Truy cập shell tương tác trên thiết bị bị compromise
Command execution Thực thi lệnh OS tùy ý
File transfer Upload/download file từ/đến thiết bị
CIDR port scanning Quét port theo dải CIDR để recon mạng nội bộ
SOCKS5 & HTTP proxy Sử dụng FortiGate bị compromise làm proxy để tunnel traffic
Port forwarding Local và remote port forwarding cho lateral movement
Credential harvesting Thu thập file cấu hình FortiGate và giải mã credential đã lưu

Tính năng credential harvesting đặc biệt nguy hiểm: PivotC2 không chỉ dừng lại ở việc kiểm soát thiết bị FortiGate mà còn chủ động đọc và giải mã file cấu hình, nơi lưu trữ VPN user credential, LDAP/RADIUS binding password, certificate private key, và nhiều secret nội bộ khác.


FortiOS và tại sao chiến dịch PivotC2 đặc biệt nguy hiểm?

Fortinet FortiOS là hệ điều hành cốt lõi chạy trên tất cả thiết bị FortiGate Firewall, nền tảng bảo mật mạng được triển khai rộng rãi nhất thế giới trong môi trường enterprise, cơ quan chính phủ, và nhà cung cấp dịch vụ internet. FortiGate đóng vai trò là tuyến phòng thủ perimeter đầu tiên của hầu hết tổ chức: kiểm soát toàn bộ traffic vào/ra Internet, cung cấp VPN cho remote access, và thực thi chính sách bảo mật mạng. Đây chính xác là lý do FortiGate là mục tiêu hàng đầu của threat actor, kiểm soát được FortiGate đồng nghĩa với kiểm soát được ranh giới bảo mật của tổ chức.

CVE-2025-25249 bắt nguồn từ giao thức CAPWAP, một giao thức management thường ít được chú ý trong bối cảnh bảo mật. CAPWAP vốn được thiết kế để FortiGate quản lý wireless access point nội bộ, nhưng daemon xử lý giao thức này lại lắng nghe trên UDP port 5246 và xử lý packet từ bên ngoài nếu không được cấu hình chặt chẽ. Lỗi heap buffer overflow trong cw_acd phát sinh khi Fortinet không kiểm tra kích thước dữ liệu trong CAPWAP packet trước khi ghi vào heap, lỗi cơ bản trong lập trình C nhưng có hậu quả nghiêm trọng trong bối cảnh internet-facing network device.

Điều làm chiến dịch PivotC2 đặc biệt đáng lo ngại là khoảng thời gian từ khi vá đến khi bị khai thác: CVE-2025-25249 được vá ngày 13/01/2026, nhưng khai thác thực tế đã được SOCRadar xác định từ tháng 07/2026, tức là hơn sáu tháng sau khi bản vá có sẵn. Điều này cho thấy vẫn còn một lượng lớn FortiGate device chưa được vá, mặc dù đây là lỗ hổng RCE không cần xác thực. Đặt trong bối cảnh năm 2026, khi Fortinet liên tiếp bị nhắm mục tiêu qua FortiBleed, CVE-2026-24858 (CVSS 9.4), CVE-2026-35616 (CVSS 9.1), và nhiều lỗ hổng khác, đây là bằng chứng rõ ràng rằng Fortinet ecosystem là mục tiêu chiến lược, dài hạn của nhiều nhóm threat actor khác nhau.


Tổng quát quá trình khai thác CVE-2025-25249 và triển khai PivotC2

Quá trình khai thác có thể được chia thành các giai đoạn sau:

  1. Thu thập thông tin (Reconnaissance)

    • Mục tiêu: xác định các FortiGate device internet-facing chưa vá CVE-2025-25249.

    • Hành động: kẻ tấn công quét hơn 30.000 địa chỉ IP để tìm FortiGate device có UDP port 5246 phản hồi. Xác định version FortiOS và kiểm tra xem device có đã vá bản vá tháng 01/2026 chưa.

  2. Kích hoạt Heap Buffer Overflow (Exploitation)

    • Kẻ tấn công gửi CAPWAP packet được craft đặc biệt tới UDP port 5246 của FortiGate device mục tiêu.

    • Packet chứa dữ liệu có kích thước được tính toán để vượt quá giới hạn heap buffer được cấp phát cho cw_acd daemon, gây ra memory corruption trong process heap.

  3. Bypass Bảo vệ Bộ nhớ - ROP Chain (Memory Protection Bypass)

    • Kẻ tấn công xây dựng và thực thi ROP chain, chuỗi các địa chỉ trỏ đến các đoạn mã hợp lệ đã có trong bộ nhớ FortiOS.

    • ROP chain điều hướng lại luồng thực thi của cw_acd mà không cần inject shellcode mới, bypass cơ chế NX/DEP.

  4. Drop Initial Stager (Stage 1 - JavaScript Dropper)

    • ROP chain thực thi payload giai đoạn 1: JavaScript stager được ghi vào filesystem của FortiGate.

    • Stager thiết lập kết nối outbound tới máy chủ C2 và tải xuống, giải mã payload giai đoạn 2.

  5. Triển khai PivotC2 RAT (Stage 2 - Persistent Access)

    • Payload giai đoạn 2 là PivotC2, được lưu tại /tmp/.i.js trên filesystem FortiGate.
    • PivotC2 được khởi chạy ở background để duy trì persistent access.
  6. Hậu khai thác (Post-Exploitation)

    • Thu thập file cấu hình FortiGate và giải mã credential đã lưu.

    • Sử dụng tính năng CIDR port scanning để lập bản đồ mạng nội bộ phía sau FortiGate.

    • Cấu hình SOCKS5/HTTP proxy và port forwarding để tunnel traffic vào mạng nội bộ.

    • Lateral movement sang các hệ thống nội bộ. Ít nhất hai vụ xâm phạm đã được xác nhận dẫn đến đánh cắp dữ liệu thực tế.


Khuyến nghị & Khắc phục

Fortinet đã phát hành bản vá từ tháng 01/2026 và CISA đã đưa CVE-2025-25249 vào danh sách KEV. Đội ngũ FPT Threat Intelligence khuyến nghị người dùng và quản trị viên cần cân nhắc thực hiện ngay các hành động sau:

  • Cập nhật bản vá khẩn cấp: cài đặt ngay bản vá tháng 01/2026 cho FortiOS và FortiSwitchManager (Fortinet advisory FG-IR-25-084). Nếu đã vá từ tháng 1 nhưng chưa xác nhận, kiểm tra version và build number thực tế, không giả định đã được bảo vệ.

  • Chặn UDP port 5246 từ Internet (Immediate Mitigation): nếu tổ chức không có nhu cầu quản lý wireless AP qua CAPWAP từ Internet, chặn ngay UDP port 5246 inbound tại firewall perimeter. Trong hầu hết triển khai, cw_acd không cần tiếp xúc với Internet công cộng. Đây là biện pháp giảm thiểu hiệu quả nhất nếu chưa vá kịp.

  • Tìm kiếm dấu hiệu PivotC2 trên thiết bị: vì chiến dịch hoạt động từ tháng 07/2026, cần coi mọi FortiGate device chưa vá trong khoảng thời gian đó là có khả năng đã bị compromise. Kiểm tra ngay:

    • File ẩn tại /tmp/.i.js - dấu hiệu đặc trưng nhất của PivotC2.

    • Process bất thường chứa node hoặc node.js đang chạy trên FortiGate.

    • Outbound connection bất thường từ FortiGate tới IP bên ngoài không thuộc danh sách cho phép.

    • Cấu hình FortiGate bị thay đổi - đặc biệt là routing, policy rule, hoặc admin account.

  • Rotate toàn bộ credential: nếu FortiGate device chưa vá hoặc phát hiện dấu hiệu compromise, rotate ngay toàn bộ VPN user password, LDAP/RADIUS binding account password, API key và management credential, certificate nếu private key được lưu trong cấu hình, và tài khoản AD/domain account nếu FortiGate tích hợp với AD.

  • Rà soát CAPWAP traffic: kiểm tra firewall log và network traffic để phát hiện CAPWAP packet (UDP 5246) từ nguồn IP không phải access point hợp lệ - dấu hiệu scanning hoặc exploitation attempt.

  • Giám sát outbound connection từ FortiGate: PivotC2 hoạt động như reverse shell - thiết lập kết nối từ FortiGate ra ngoài tới C2 server. Thiết lập alert cho bất kỳ outbound connection nào từ FortiGate management IP tới địa chỉ không nằm trong whitelist management.

  • Ưu tiên xử lý theo NVD CVSS 9.8: dù Fortinet advisory chỉ chấm 7.3, NVD tính CVSS 9.8 cho cùng lỗ hổng. Với bằng chứng khai thác thực tế được xác nhận và đặc điểm unauthenticated RCE trên internet-facing device, tổ chức nên ưu tiên xử lý theo mức critical.


Tham khảo

More from this blog

F

FPT IS Security

1021 posts

Dedicated to providing insightful articles on cybersecurity threat intelligence, aimed at empowering individuals and organizations to navigate the digital landscape safely.