# Ruby Jumper – Chiến dịch malware mới lợi dụng LNK và cloud C2 để kiểm soát hệ thống nạn nhân

### Giới thiệu

Tháng 12/2025, các nhà nghiên cứu từ Zscaler ThreatLabz phát hiện một chiến dịch tấn công mạng mới liên quan đến nhóm APT37 – còn được biết đến với các tên gọi **ScarCruft, Ruby Sleet** và **Velvet Chollima** – một nhóm tin tặc được cho là hoạt động dưới sự hậu thuẫn của Triều Tiên.

Chiến dịch này được ThreatLabz đặt tên là **Ruby Jumper**, trong đó APT37 sử dụng file **Windows Shortcut (LNK)** làm vector tấn công ban đầu. Chuỗi tấn công sau đó triển khai nhiều công cụ malware mới được phát hiện, bao gồm:

*   **RESTLEAF**
    
*   **SNAKEDROPPER**
    
*   **THUMBSBD**
    
*   **VIRUSTASK**
    

Các thành phần này phối hợp để tải xuống và triển khai các payload cuối cùng là **FOOTWINE** và **BLUELIGHT**, cho phép kẻ tấn công thực hiện giám sát toàn diện hệ thống nạn nhân.

Điểm đáng chú ý của chiến dịch Ruby Jumper là việc lợi dụng ngôn ngữ Ruby để tải shellcode, đồng thời sử dụng thiết bị lưu trữ rời (USB, ổ cứng ngoài) nhằm truyền lệnh và dữ liệu giữa các hệ thống bị cô lập mạng (air-gapped systems).

APT37 từ lâu đã sử dụng malware **Chinotto** để tấn công các cá nhân và tổ chức chính phủ nhằm đánh cắp dữ liệu nhạy cảm và thực hiện hoạt động gián điệp.

Ngoài ra, nhóm này cũng thường xuyên triển khai chuỗi lây nhiễm dựa trên shellcode và malware chạy trong bộ nhớ, tương tự như kỹ thuật được sử dụng trong chiến dịch **Ruby Jumper**.

## Những điểm chính

Chiến dịch Ruby Jumper có một số đặc điểm đáng chú ý:

*   ThreatLabz phát hiện chiến dịch Ruby Jumper do APT37 thực hiện vào tháng 12/2025.
    
*   **RESTLEAF** đóng vai trò implant ban đầu và sử dụng **Zoho WorkDrive** làm hạ tầng C2 (Command-and-Control).
    
*   **SNAKEDROPPER** hoạt động như một loader giai đoạn tiếp theo, cài đặt **Ruby runtime**, thiết lập persistence, và triển khai các thành phần **THUMBSBD** và **VIRUSTASK**.
    
*   **THUMBSBD** là backdoor có khả năng truyền lệnh và dữ liệu giữa hệ thống online và hệ thống air-gapped thông qua thiết bị lưu trữ rời.
    
*   **VIRUSTASK** chịu trách nhiệm lây nhiễm sang thiết bị lưu trữ rời bằng cách thay thế file bằng shortcut LNK độc hại.
    
*   **FOOTWINE** là backdoor cuối cùng cung cấp các chức năng giám sát như keylogging, ghi âm và ghi hình.
    

## Phân tích kỹ thuật

**Luồng tấn công tổng thể**

![](https://cdn.hashnode.com/uploads/covers/676511773cdd3c06f7b226ee/116a9c2d-e49e-410f-a46e-005afc63d50e.png align="center")

Chuỗi tấn công bắt đầu từ file LNK độc hại, sau đó tải và thực thi nhiều thành phần malware khác nhau, cuối cùng dẫn đến việc:

*   lây nhiễm thiết bị lưu trữ rời
    
*   triển khai các backdoor **FOOTWINE** và **BLUELIGHT**
    
*   duy trì khả năng giám sát hệ thống
    

**RESTLEAF – Implant ban đầu**

APT37 đã sử dụng file LNK làm vector tấn công trong nhiều năm.

Trong chiến dịch Ruby Jumper:

1.  Khi nạn nhân mở file LNK độc hại
    
2.  File này thực thi **PowerShell**
    
3.  Script sẽ tìm chính file LNK dựa trên kích thước
    
4.  Sau đó trích xuất nhiều payload được nhúng bên trong file.
    

Các file được tạo ra bao gồm:

| File | Loại | Chức năng |
| --- | --- | --- |
| find.bat | Batch | chạy PowerShell |
| search.dat | PowerShell | load shellcode |
| viewer.dat | shellcode | giải mã và chạy payload |

Ngoài ra, chiến dịch còn hiển thị tài liệu mồi nhử bằng tiếng Ả Rập, nội dung nói về xung đột Palestine – Israel, được dịch từ báo chí Triều Tiên.

![](https://cdn.hashnode.com/uploads/covers/676511773cdd3c06f7b226ee/d747a327-39ff-4211-958e-f454fd20e7d5.png align="center")

Sau khi thực thi, payload sẽ khởi chạy một executable trong bộ nhớ được gọi là **RESTLEAF**.

**RESTLEAF sử dụng Zoho WorkDrive làm C2**

RESTLEAF sử dụng **Zoho WorkDrive** làm hạ tầng điều khiển C2 — đây là lần đầu tiên APT37 được ghi nhận lợi dụng nền tảng này.

Quy trình hoạt động:

1.  RESTLEAF sử dụng refresh token được nhúng sẵn để lấy access token hợp lệ
    
2.  Sau đó truy cập API của Zoho WorkDrive
    
3.  Tải file shellcode **AAA.bin**
    

Shellcode sau đó được:

*   cấp phát vùng nhớ thực thi
    
*   copy payload
    
*   thực thi thông qua process injection
    

Sau khi thành công, RESTLEAF tạo file beacon trên cloud để báo cho C2 rằng hệ thống đã bị xâm nhập.

**Cơ chế shellcode hai giai đoạn**

APT37 sử dụng launcher shellcode tùy chỉnh.

Chuỗi thực thi gồm hai giai đoạn:

**Stage 1**

Launcher:

*   giải mã shellcode thứ hai bằng **XOR 1 byte**
    
*   inject vào một executable hợp pháp trong
    

```plaintext
%WINDIR%\System32
%WINDIR%\SysWOW64
```

**Stage 2**

Shellcode thứ hai:

*   giải mã payload PE
    
*   load executable trực tiếp vào bộ nhớ (reflective loading)
    

Kỹ thuật này giúp tránh bị phát hiện bởi các công cụ bảo mật.

**SNAKEDROPPER – Loader giai đoạn tiếp theo**

SNAKEDROPPER được chạy trong một tiến trình Windows hợp pháp.

Các hoạt động chính:

1.  Giải nén file **ruby3.zip**
    
2.  Cài đặt **Ruby 3.3 runtime**
    
3.  Đặt tại:
    

```plaintext
%PROGRAMDATA%\usbspeed
```

4.  Đổi tên interpreter:
    

```plaintext
rubyw.exe → usbspeed.exe
```

5.  Thay thế file Ruby **operating\_system.rb** bằng mã độc
    
6.  Tạo scheduled task:
    

```plaintext
rubyupdatecheck
```

chạy mỗi 5 phút.

Khi Ruby interpreter chạy, script độc hại sẽ:

*   load shellcode
    
*   thực thi các module tiếp theo.
    

**THUMBSBD – Backdoor cho hệ thống air-gapped**

THUMBSBD được ngụy trang thành file Ruby **ascii.rb**.

Chức năng chính:

*   truyền lệnh giữa các hệ thống air-gapped
    
*   exfiltrate dữ liệu thông qua USB
    

Malware thu thập thông tin hệ thống như:

*   username
    
*   hostname
    
*   phiên bản Windows
    
*   cấu hình mạng
    
*   danh sách file
    
*   tiến trình đang chạy
    

Các thư mục làm việc được tạo để lưu dữ liệu:

| Thư mục | Chức năng |
| --- | --- |
| CMD | lệnh hợp lệ |
| MCD | staging command |
| OCD | dữ liệu cho USB |
| PGI | payload tải về |
| RST | dữ liệu exfiltration |
| WRK | workspace |

**C2 Infrastructure**

THUMBSBD tải payload từ các domain:

```plaintext
philion.store
homeatedke.store
hightkdhe.store
```

Trong quá trình nghiên cứu, **hightkdhe.store** vẫn còn hoạt động.

**Cầu nối USB cho hệ thống air-gapped**

Khi USB được cắm vào:

THUMBSBD sẽ:

1.  Tạo thư mục ẩn
    

```plaintext
$RECYCLE.BIN
```

2.  Copy dữ liệu cần exfiltration
    
3.  Giải mã file bằng **XOR**
    
4.  Thực thi command từ USB
    
5.  Ghi kết quả trở lại USB
    

Cơ chế này biến USB thành kênh C2 gián tiếp giữa hai mạng tách biệt.

![](https://cdn.hashnode.com/uploads/covers/676511773cdd3c06f7b226ee/243c48db-852b-4ec2-bd8b-657ce3a4912c.png align="center")

**VIRUSTASK – Lây lan qua USB**

VIRUSTASK chịu trách nhiệm lây nhiễm sang hệ thống mới.

Quy trình:

1.  Kiểm tra USB có >2GB trống
    
2.  Tạo thư mục ẩn:
    

```plaintext
$RECYCLE.BIN.USER
```

3.  Copy payload vào
    
4.  Quét file của nạn nhân
    
5.  Ẩn file gốc
    
6.  thay bằng LNK độc hại
    

Khi người dùng mở file:

```plaintext
LNK → usbspeed.exe (Ruby interpreter)
```

Ruby sẽ tự động load script độc hại và thực thi shellcode.

**FOOTWINE – Backdoor giám sát**

FOOTWINE được phân phối với tên giả:

```plaintext
foot.apk
```

Dù mang đuôi Android, thực chất đây là payload Windows được mã hóa.

FOOTWINE cung cấp các khả năng:

*   keylogging
    
*   chụp màn hình
    
*   ghi âm
    
*   ghi hình
    
*   thao tác file
    
*   điều khiển shell
    
*   proxy network
    

C2 communication sử dụng:

*   giao thức TCP
    
*   XOR-based encryption
    
*   khóa phiên 32 byte được tạo ngẫu nhiên.
    

**BLUELIGHT**

BLUELIGHT là backdoor đã được ghi nhận trước đó của APT37.

Nó sử dụng nhiều dịch vụ cloud hợp pháp làm C2, bao gồm:

*   Google Drive
    
*   Microsoft OneDrive
    
*   pCloud
    
*   Backblaze
    

Chức năng:

*   thực thi lệnh
    
*   tải payload
    
*   upload dữ liệu
    
*   tự xóa.
    

**Attribution**

ThreatLabz xác định APT37 đứng sau chiến dịch này với độ tin cậy cao, dựa trên:

*   Vector tấn công LNK + PowerShell + shellcode
    
*   Sử dụng malware BLUELIGHT
    
*   kỹ thuật shellcode hai giai đoạn
    
*   sử dụng cloud services làm C2
    
*   mục tiêu phù hợp với lợi ích của DPRK.
    

## Kết luận

Ruby Jumper là một chiến dịch tấn công đa giai đoạn phức tạp, bắt đầu từ file LNK độc hại, sau đó triển khai một môi trường Ruby hoàn chỉnh để chạy malware.

Đặc biệt, hai công cụ **THUMBSBD** và **VIRUSTASK** cho phép:

*   tấn công hệ thống air-gapped
    
*   truyền lệnh qua USB
    
*   exfiltration dữ liệu từ mạng bị cô lập
    

Đây là một kỹ thuật đặc biệt nguy hiểm vì nó vượt qua các biện pháp bảo mật dựa trên phân đoạn mạng.

Phía **FPT Threat Intelligence** đưa ra các khuyến nghị sau:

*   Chặn hoặc cảnh báo khi người dùng mở file LNK từ email, USB hoặc nguồn không tin cậy
    
*   Giám sát các LNK thực thi PowerShell, cmd.exe hoặc script interpreter
    
*   Triển khai EDR/XDR để phát hiện hành vi
    
*   Bật **PowerShell Script Block Logging**
    
*   Giám sát các runtime được cài đặt bất thường như: Ruby, Python, NodeJS
    
*   Hạn chế hoặc vô hiệu hóa USB storage
    
*   Triển khai Device Control Policy
    
*   Quét malware tự động khi USB được cắm vào hệ thống
    
*   Theo dõi lưu lượng mạng đến cloud storage API
    
*   Phát hiện token authentication bất thường
    

## IOC

MD5 Hash:

| **Indicator** | **Filename** | **Description** |
| --- | --- | --- |
| 709d70239f1e9441e8e21fcacfdc5d08 |  | Windows shortcut |
| ad556f4eb48e7dba6da14444dcce3170 | viewer.dat | Binary (Shellcode+RESTLEAF) |
| 098d697f29b94c11b52c51bfe8f9c47d |  | Binary (Shellcode+SNAKEDROPPER) |
| 4214818d7cde26ebeb4f35bc2fc29ada | ascii.rb | Binary (Shellcode+ThmubsBD) |
| 5c6ff601ccc75e76c2fc99808d8cc9a9 | bundler\_index\_client.rb | Binary (Shellcode+VIRUSTASK) |
| 476bce9b9a387c5f39461d781e7e22b9 | foot.apk | Binary (Shellcode+FOOTWINE) |
| 585322a931a49f4e1d78fb0b3f3c6212 | footaaa.apk | Binary (Shellcode+BLUELIGHT) |

Network:

| **Indicator** | **Description** |
| --- | --- |
| philion.store | THUMBSBD C2 |
| homeatedke.store | THUMBSBD C2 |
| hightkdhe.store | THUMBSBD C2 |
| 144.172.106.66:8080 | FOOTWINE C2 |

## Tham khảo

[APT37 Adds New Tools For Air-Gapped Networks | ThreatLabz](https://www.zscaler.com/blogs/security-research/apt37-adds-new-capabilities-air-gapped-networks)

[APT37 combines cloud storage and USB implants to infiltrate air-gapped systems](https://securityaffairs.com/188767/apt/apt37-combines-cloud-storage-and-usb-implants-to-infiltrate-air-gapped-systems.html)
