Nhóm Volt Typhoon của Trung Quốc khai thác lỗ hổng Versa Director nhắm mục tiêu vào hàng loạt tổ chức trên thế giới
Một nhóm gián điệp mạng từ Trung Quốc, được biết đến với cái tên Volt Typhoon, đang được tình nghi là thủ phạm khai thác lỗ hổng bảo mật zero-day Versa Director.
1. Chi tiết lỗ hổng
Định danh lỗ hổng: CVE-2024-39717
Mức độ nghiêm trọng: High
Điểm CVSS: 7.2
Mô tả chung: Tùy chọn “Change Favicon” có thể bị lạm dụng để tải lên tệp độc hại có đuôi .png, giả làm tệp hình ảnh, nhưng chỉ xảy ra khi người dùng có quyền đã xác thực và đăng nhập thành công.
Phiên bản bị ảnh hưởng:
Hình 1: Các phiên bản Versa Director bị ảnh hưởng
2. Phân tích kỹ thuật
Versa Director là nền tảng cung cấp “khả năng quản lý, giám sát và điều phối các phần mềm bảo mật và kiến trúc mạng Versa’s Secure Cloud IP”. Về bản chất, máy chủ Versa Director là nơi quản lý tập trung cơ sở hạ tầng mạng SD-WAN của máy khách và chủ yếu dành cho các hoạt động của ISP và MSP. Điều này khiến Versa Director trở thành mục tiêu béo bở cho những chiến dịch tấn công nâng cao (APT) với mục đích kiểm soát cơ sở hạ tầng mạng trên quy mô lớn.
VersaMem là một webshell phức tạp, đã được tải lên VirusTotal vào ngày 7 tháng 6 năm 2024, với tên tệp “VersaTest.png” và hiện tại đang không bị phần mềm chống vi-rút (AV) nào phát hiện. Phân tích web shell “Director_tomcat_memShell”, hay còn được biết đến với cái tên VersaMem, đã xác định đó là một JAR archive được đóng gói thông qua Apache Maven vào ngày 3 tháng 6 năm 2024.
Hình 2: Ảnh chụp màn hình từ VirusTotal cho VersaTest.png
VersaMem webshell được thiết kế riêng để tương tác với Versa Director. Khi thực thi, web shell sẽ gắn vào tiến trình Apache Tomcat (Java servlet và web server), tận dụng Java Instrumentation API và Javassist để sửa đổi code Java trong bộ nhớ để thực hiện hai chức năng chính:
Capture plaintext user credentials: Hook và ghi đè phương thức xác thực “setUserPassword” của Versa để chặn thông tin xác thực dạng plaintext, mã hóa AES và Base64 thông tin này, sau đó ghi chúng ở đường dẫn /tmp/.temp.data.
Hình 3: Đoạn code thực hiện hành vi đánh cắp thông tin xác thực của VersaMem webshell
Dynamically load in-memory Java classes: Hook phương thức “doFilter” để giám sát tất cả các web request đến Tomcat webserver, lọc ra các tham số mà kẻ tấn công muốn đánh cắp (ví dụ: mật khẩu, module độc hại, v.v.) và thực hiện tải các module Java vào bộ nhớ động.
Hình 4: Đoạn code thực hiện hành vi lọc thông tin của VersaMem webshell
Các chức năng trên chỉ hoạt động trong bộ nhớ và không có file Java nào trên đĩa bị sửa đổi. Điều này là một cơ chế defense evasion, tăng khả năng tránh bị phát hiện của các biện pháp phòng thủ.
3. Mức độ ảnh hưởng
Theo các báo cáo thu thập được, các cuộc tấn công nhắm vào bốn nạn nhân ở Mỹ và một nạn nhân khác trong các lĩnh vực: nhà cung cấp dịch vụ Internet (ISP), nhà cung cấp dịch vụ quản lý (MSP), và công nghệ thông tin (IT) từ ngày 12 tháng 6 năm 2024. Chiến dịch này được cho là vẫn đang tiếp tục đối với các hệ thống Versa Director chưa được vá lỗi.
Chiến dịch tấn công này được cho là đến từ Trung Quốc, được biết đến với tên gọi Volt Typhoon, đã sử dụng các thiết bị SOHO bị xâm nhập và một web shell JAR phức tạp. Web shell này sử dụng Java instrumentation và Javassist để chèn mã độc vào bộ nhớ của Tomcat webserver trên các máy chủ Versa Director có lỗ hổng.
Khi mã độc được chèn vào, nó sẽ lắng nghe thông tin xác thực ở dạng plaintext, mục đích sử dụng chúng để tấn công vào cơ sở hạ tầng của khách hàng. Ngoài ra, web shell này còn cho phép hacker thực thi mã Java tùy ý trong bộ nhớ trên máy chủ mà không bị phát hiện, đồng thời bảo vệ web shell, các mô-đun và lỗ hổng zero-day này khỏi các biện pháp phát hiện xâm nhập.
Dưới đây là thông tin về attack chain của chiến dịch này:
Hình 5: Attack chain của Volt Typhoon (theo Black Lotus Labs)
4. Khuyến nghị
Phía FPT Threat Intelligence khuyến nghị tổ chức và cá nhân một số cách để phòng chống chiến dịch tấn công này:
Cập nhật bản vá: Cập nhật các hệ thống Versa Director lên phiên bản 22.1.4 (hoặc mới hơn) hoặc áp dụng bản hotfix được mô tả trong khuyến nghị của hãng Versa.
Chặn luồng truy cập: Chặn quyền truy cập từ bên ngoài vào các port 4566 và 4570, đảm bảo các port này chỉ mở giữa các node Versa Director đang hoạt động và các node dự phòng.
Hardening hệ thống: Triển khai các kỹ thuật tăng cường hệ thống và firewall rule như trong khuyến nghị của hãng Versa.
Tìm kiếm các thiết bị sử dụng port 4566 trên máy chủ Versa Director mà không phải từ node Versa.
Tìm kiếm trong thư mục Versa webroot các tệp có phần mở rộng “.png” không hợp lệ.
Kiểm tra tài khoản người dùng mới được tạo và các tệp bất thường khác.
5. IOCs liên quan đến VersaMem
Files
SHA-256 | Filename | Description |
4bcedac20a75e8f8833f4725adfc87577c32990c3783bf6c743f14599a176c37 | VersaTest.png | VersaMem webshell |
Filepath
Value | Description |
/tmp/.temp.data | Filepath to store authentication information |