SSHStalker: Chiến dịch lan Truyền Botnet Linux Mới

Một chiến dịch botnet Linux mới có tên SSHStalker vừa được phát hiện nhưng lại sử dụng những kỹ thuật lâu đời nhưng vẫn hiệu quả để chiếm quyền kiểm soát hàng ngàn hệ thống phần lớn là các máy chủ Linux chưa được vá lỗi hoặc chạy phần mềm đã lỗi thời.
Tổng quan
SSHStalker, sử dụng các lỗ hổng và kỹ thuật đã tồn tại từ hơn 15 năm trước để lây nhiễm khoảng 7.000 hệ thống. Botnet này khai thác các phương pháp cổ điển như bot IRC và 19 lỗ hổng kernel Linux từ năm 2009.
Hoạt động của SSHStalker
Sử dụng các kỹ thuật từ khoảng năm 2009–2010, bao gồm:
Bot IRC cổ điển dùng cho Command-and-Control (C2) tức kênh điều khiển botnet qua giao thức Internet Relay Chat rất lâu đời.
Hàng loạt lỗ hổng kernel Linux cũ để leo thang quyền hạn và lây nhiễm.
Các công cụ quét, brute-force SSH để dò và xâm nhập các máy chủ dễ tấn công.
Mặc dù các công nghệ này không còn “mới”, nhưng chúng vẫn hoạt động tốt trên các hệ thống bị bỏ quên hoặc không cập nhật — đặc biệt máy chủ Linux chạy kernel cũ mà các doanh nghiệp hoặc môi trường hosting lâu đời vẫn còn sử dụng.
Các Kỹ Thuật Được Sử Dụng
SSHStalker dựa vào các lỗ hổng mã nguồn mở cổ điển, thường được sử dụng bởi các hacker cấp thấp đến trung bình. Nó sử dụng bot IRC EnergyMech để cung cấp đầy đủ khả năng C&C qua IRC, với các thuật ngữ lóng để hòa lẫn vào lưu lượng IRC thông thường. Botnet có tính dự phòng đa server/kênh, và cơ sở hạ tầng được lưu trữ trên mạng IRC công khai hợp pháp, trông giống như một mạng thật sự được duy trì.
Luồng tấn công:
Đầu tiên, kẻ tấn công thực hiện Brute Force SSH để dò mật khẩu. Khi đăng nhập thành công, chiếm được quyền:
roothoặc
ssh user
Sau khi truy cập thành công, máy nạn nhân bắt đầu tải payload từ server điều khiển và mã độc thả (drop) một file nhị phân có tên nmap và đổi tên thành scan.
Việc đổi tên này giúp che giấu hoạt động quét mạng, tránh bị quản trị viên phát hiện ngay lập tức khi kiểm tra tiến trình đang chạy. nmap thường được dùng để quét cổng và dò tìm các hệ thống khác trong mạng nội bộ hoặc trên Internet, phục vụ cho mục đích lây lan tiếp theo.
Tiếp theo, malware tải xuống công cụ GCC (GNU Compiler Collection).
Đây là bước quan trọng vì thay vì chỉ chạy file nhị phân có sẵn, kẻ tấn công muốn biên dịch mã nguồn trực tiếp trên hệ thống nạn nhân. Cách làm này giúp tạo ra binary tương thích với môi trường hiện tại (phiên bản kernel, kiến trúc CPU…), đồng thời giảm khả năng bị các hệ thống bảo mật phát hiện dựa trên hash cố định.
Sau đó, hệ thống bị thả hai file mã nguồn C là 1.c và 2.c, rồi tiến hành biên dịch và thực thi.
Điều này cho thấy mã độc có thể đang:
Khai thác leo thang đặc quyền (privilege escalation),
Cài đặt backdoor,
Hoặc chuẩn bị môi trường để triển khai botnet.
Việc biên dịch tại chỗ cũng cho phép malware linh hoạt thay đổi chức năng theo từng mục tiêu.
Tiếp theo, malware thả một file nén có tên GS, chứa tổng cộng 7 file:
Bốn file C:
a.c,clean.c,cls.c,ping.c
→ Các file này có thể đảm nhiệm các chức năng như:clean.c: xóa log để che giấu dấu vết,ping.c: kiểm tra kết nối đến máy chủ điều khiển (C2),Các file còn lại có thể phục vụ việc quét, duy trì tiến trình hoặc xử lý lệnh.
Hai file shell script:
distrovàgo
→ Thường dùng để tự động hóa quá trình cài đặt, phát hiện hệ điều hành, hoặc thực thi chuỗi lệnh.Một file Perl:
bot
→ Rất có thể đây là thành phần chính của botnet, chịu trách nhiệm kết nối đến máy chủ C2 (có thể qua IRC) để nhận lệnh điều khiển.
Cuối cùng, malware thả một file nén khác có tên bootbou.tgz, chứa 8 file:
Các file nhị phân:
h32,h64,run32,run64
→ Phân chia theo kiến trúc 32-bit và 64-bit, đảm bảo khả năng chạy trên nhiều loại hệ thống khác nhau.Các file shell script:
autorun,run,go,update
→ Những script này thường được dùng để:Thiết lập cơ chế tự khởi động (persistence),
Cập nhật phiên bản malware,
Tái kích hoạt tiến trình nếu bị tắt.
Tổng hợp kỹ thuật chính theo MITRE ATT&CK
T1110 – Brute Force (SSH)
T1059 – Command Execution
T1105 – Ingress Tool Transfer
T1053.003 – Cron Persistence
T1018 – Remote System Discovery
T1021 – Remote Services (SSH)
T1071 – Application Layer Protocol (IRC)
T1014 – Rootkit
Mức độ lây lan đáng lo ngại
Theo các nhà nghiên cứu:
SSHStalker đã xâm nhập khoảng 7,000 hệ thống Linux trên internet.
Nó áp dụng một chuỗi chiến lược để đảm bảo mã độc luôn chạy và lan rộng:
cron job mỗi phút để tự động khởi động lại malware nếu bị dừng.
Sử dụng công cụ tự quét (SSH scanner) và brute-force để tìm thêm mục tiêu mới.
Tích hợp thêm nhiều thành phần malware khác như rootkit, log cleaner,… để ẩn mình và duy trì truy cập.
Khuyến nghị
Để chống lại SSHStalker và các botnet tương tự, các tổ chức nên:
Tắt xác thực bằng mật khẩu, chỉ cho phép SSH key authentication và cấu hình trong /etc/ssh/sshd_config với PasswordAuthentication no, PermitRootLogin no; đồng thời tắt login trực tiếp root, buộc đăng nhập qua user thường và sử dụng sudo. Giới hạn IP truy cập SSH bằng cách chỉ whitelist IP quản trị và cấu hình firewall (iptables / firewalld / security group). Có thể đổi port SSH để giảm noise brute-force (không phải biện pháp bảo mật chính nhưng giúp giảm scan tự động diện rộng).
Chống brute-force bằng cách cài Fail2ban để tự động block IP dò mật khẩu và monitor /var/log/auth.log hoặc /var/log/secure, đồng thời bật rate limiting để giới hạn số lần login sai.
Loại bỏ công cụ hỗ trợ malware: trong chiến dịch này attacker tải GCC, biên dịch mã nguồn C và dùng Nmap để quét; vì vậy nên gỡ GCC khỏi production server (server production không nên có compiler) và giới hạn quyền cài package, không cho user SSH tự ý cài thêm phần mềm.
Phát hiện dấu hiệu nhiễm SSHStalker bằng cách kiểm tra CRON bất thường với crontab -l, ls -la /etc/cron*, tìm các mục như autorun, update, go, run32, run64; kiểm tra tiến trình lạ bằng ps aux, top, htop, chú ý IRC connection, process tên lạ hoặc tiến trình chạy từ /tmp, /dev/shm; kiểm tra file ELF lạ bằng find / -type f -perm -111 2>/dev/null, tìm các file h32, h64, run32, run64, scan (nmap bị đổi tên); kiểm tra kết nối IRC bằng netstat -antp hoặc ss -antp, chú ý kết nối outbound port 6667 hoặc kết nối tới nhiều IP lạ.
Vá lỗi và cập nhật hệ thống bằng cách update kernel (botnet lợi dụng kernel cũ để leo thang quyền hạn), kiểm tra với uname -r và so sánh với phiên bản mới nhất của distro; đồng thời cập nhật OpenSSH vì phiên bản cũ dễ bị brute-force hiệu quả hơn.
Tăng cường giám sát và logging bằng cách bật auditd để theo dõi thực thi gcc, tạo cron và thay đổi file hệ thống; theo dõi việc tạo file trong /tmp, thực thi từ /dev/shm và các kết nối network outbound bất thường.
Tham khảo
https://www.securityweek.com/new-sshstalker-linux-Malware & ThreatsNew ‘SSHStalker’ Linux Botnet Uses Old Techniquesbotnet-uses-old-techniques/
Old-School IRC, New Victims: Inside the Newly Discovered SSHStalker Linux Botnet






