Chiến dịch Zerobot Botnet: Khai thác nghiêm trọng lỗ hổng CVE

Một **chiến dịch Zerobot botnet** dựa trên Mirai đã trỗi dậy mạnh mẽ trở lại, lần này nhắm mục tiêu vào các **lỗ hổng CVE** nghiêm trọng trong bộ định tuyến Tenda AC1206 và nền tảng tự động hóa quy trình n8n.
Chiến dịch này, hiện đang hoạt động ở phiên bản thứ chín được biết đến với tên gọi **zerobotv9**, đã tích cực **khai thác zero-day** các lỗ hổng thực thi lệnh (command injection) được công bố gần đây để lây lan phần mềm độc hại qua các mạng và thiết bị kết nối bị phơi nhiễm.
Sự Phát Triển Của Zerobot Botnet
Zerobot lần đầu xuất hiện vào năm 2022, khi các nhà nghiên cứu bảo mật ghi lại hoạt động của nó như một phần mềm độc hại dựa trên Go, tập trung vào các thiết bị IoT.
Phiên bản mới hơn, **zerobotv9**, là một mối đe dọa khác biệt đáng kể. Không giống như phiên bản tiền nhiệm, biến thể mới nhất không được viết bằng Go.
Thay vào đó, nó có kích thước tệp nhỏ hơn, được đóng gói bằng **UPX**, và mang theo các chuỗi được mã hóa cùng với một tên miền C2 (Command and Control) được mã hóa cứng là 0bot.qzz[.]io.
Sự phát triển này cho thấy các nhà điều hành của Zerobot đã chủ động cải tiến công cụ của họ theo thời gian để tăng cường khả năng né tránh và tấn công.
Khám Phá Khai Thác Sớm
Các nhà nghiên cứu của Akamai đã xác định các nỗ lực khai thác tích cực các lỗ hổng này vào giữa tháng 1 năm 2026, thông qua mạng lưới honeypot toàn cầu của nhóm.
Chiến dịch này có thể đã bắt đầu từ ít nhất đầu tháng 12 năm 2025. Điều này khiến nó trở thành một trong những trường hợp được xác nhận đầu tiên về việc khai thác tích cực các **lỗ hổng CVE** cụ thể này kể từ khi chúng được công bố công khai vào năm 2025.
Nghiên cứu được thực hiện bởi Kyle Lefton, một nhà nghiên cứu bảo mật tại Akamai’s SIRT, có kinh nghiệm sâu sắc trong nghiên cứu mối đe dọa và phòng thủ mạng. Nguồn tham khảo chính cho nghiên cứu này có thể được tìm thấy tại Akamai Security Research Blog.
Chi tiết Lỗ hổng CVE bị Khai thác
CVE-2025-7544: Tenda AC1206 Router
CVE-2025-7544, được công bố vào giữa tháng 7 năm 2025, là một lỗ hổng tràn bộ đệm dựa trên stack nghiêm trọng tại endpoint /goform/setMacFilterCfg của các thiết bị Tenda AC1206 chạy firmware phiên bản 15.03.06.23.
Kẻ tấn công có thể kích hoạt lỗi này từ xa bằng cách truyền một giá trị quá lớn qua tham số deviceList. Điều này cho phép thực hiện cả tấn công từ chối dịch vụ (DoS) và thực thi mã từ xa (RCE).
CVE-2025-68613: Nền tảng Tự động hóa n8n
CVE-2025-68613, được công bố vào giữa tháng 12 năm 2025, là một lỗ hổng RCE nghiêm trọng trong hệ thống đánh giá biểu thức quy trình làm việc của n8n.
Lỗ hổng này ảnh hưởng đến các phiên bản từ 0.211.0 đến 1.22.0. Việc thiếu sandboxing thích hợp cho phép kẻ tấn công chạy mã tùy ý, đánh cắp khóa API, truy cập các tệp máy chủ và thiết lập sự dai dẳng.
Điều đáng báo động đặc biệt trong **chiến dịch Zerobot botnet** này là việc nhắm mục tiêu vào n8n bên cạnh phần cứng IoT truyền thống. Các botnet theo lịch sử thường nhắm vào bộ định tuyến, camera và DVR, chứ không phải các nền tảng tự động hóa doanh nghiệp.
Nhiều tổ chức dựa vào n8n để kết nối cơ sở dữ liệu, tự động hóa xử lý dữ liệu và quản lý các hệ thống nhạy cảm. Do đó, một sự thỏa hiệp thành công có thể mở ra những con đường nghiêm trọng cho di chuyển ngang (lateral movement) trong hạ tầng quan trọng của tổ chức.
Cơ chế Khai thác và Tải trọng Mã độc
Khi một bộ định tuyến Tenda dễ bị tổn thương hoặc một phiên bản n8n được xác định, Zerobot sẽ kích hoạt khai thác liên quan. Thiết bị mục tiêu sau đó bị buộc phải tải xuống và thực thi một tập lệnh shell độc hại có tên tol.sh từ địa chỉ IP 144.172.100.228.
Tập lệnh này sao chép busybox vào thư mục /tmp, gán quyền thực thi, sau đó lấy và chạy tải trọng chính của phần mềm độc hại Mirai là **zerobotv9**.
Tải trọng này hỗ trợ nhiều kiến trúc CPU, một đặc điểm phổ biến của các trình tải xuống dựa trên Mirai được xây dựng để tương thích rộng rãi với thiết bị.
Để kích hoạt lỗi tràn bộ đệm trong Tenda AC1206, khai thác này truyền 500 ký tự lặp lại qua tham số deviceList. Đối với n8n, cuộc tấn công gửi các lệnh qua API quy trình làm việc để thực thi tol.sh và tải cùng một tải trọng.
# Ví dụ lệnh kích hoạt buffer overflow (mang tính minh họa, không thực thi) curl -X POST "http://[Tenda_IP]/goform/setMacFilterCfg" -d "deviceList=AAAA...AAAA" # (500 'A' characters)Tệp nhị phân **zerobotv9** nhúng các chuỗi User-Agent được mã hóa cứng, bắt chước lưu lượng truy cập trình duyệt hợp pháp để hòa mình và tránh **phát hiện xâm nhập** qua mạng.
Phần mềm độc hại bao gồm các phương thức tấn công như TCPXmas, Mixamp, SSH và Discord. Những khả năng này vượt trội so với biến thể Zerobot gốc năm 2022.
Botnet này còn được quan sát là nhắm mục tiêu vào CVE-2017-9841, CVE-2021-3129 và CVE-2022-22947. Nó sử dụng các kỹ thuật kết nối dự phòng bao gồm netcat, socat và các phương thức socket Perl.
Các Chỉ số Thỏa hiệp (IOCs)
Để hỗ trợ **phát hiện xâm nhập** và phòng ngừa, các tổ chức nên chặn hoặc giám sát các chỉ số thỏa hiệp sau:
- Tên miền C2:
0bot.qzz[.]io - Địa chỉ IP độc hại:
103.59.160.237140.233.190.96144.172.100.228(IP máy chủtol.sh)172.86.123.179216.126.227.101
Biện pháp Phòng ngừa và Giảm thiểu
Các tổ chức đang sử dụng Tenda AC1206 với firmware 15.03.06.23 nên vá lỗi ngay lập tức hoặc thay thế phần cứng cũ.
Người dùng n8n phải nâng cấp lên phiên bản cao hơn 1.22.0, hạn chế quyền truy cập vào giao diện thực thi quy trình làm việc và thực thi kiểm soát đặc quyền người dùng nghiêm ngặt.
Các nhà bảo vệ mạng nên chặn hoặc giám sát các địa chỉ IP độc hại đã biết và tên miền C2 0bot.qzz[.]io liên quan đến **chiến dịch Zerobot botnet**.
Áp dụng các quy tắc phát hiện **YARA** và **Snort** được Akamai SIRT công bố sẽ giúp các nhóm xác định và phản ứng với hoạt động liên quan trên mạng của họ.
# Ví dụ về quy tắc Snort (minh họa, quy tắc thực tế cần được cập nhật từ Akamai)alert tcp any any -> 144.172.100.228 80 (msg:"Zerobotv9 tol.sh download attempt"; flow:to_server,established; content:"GET /tol.sh"; classtype:trojan-activity; sid:XXXXXXXX; rev:1;)# Ví dụ về quy tắc YARA (minh họa)rule Zerobotv9_Payload { strings: $a = "UPX!" $b = "0bot.qzz.io" $c = "/tmp/busybox" condition: all of them}






