Trojan RansomEXX tấn công hệ thống Linux
Qua phân tích ban đầu, các chuyên gia đã nhận thấy nhiều điểm tương đồng trong mã nguồn của Trojan như thông báo đòi tiền chuộc và cách tiếp cận chung để tống tiền. Điều này cho thấy, có thể người dùng đã đối mặt với phiên bản thực thi trên hệ điều hành Linux của họ ransomware RansomEXX. Đây là phần mềm độc hại nổi tiếng với việc tấn công vào các tổ chức lớn và đã hoạt động mạnh nhất vào đầu năm 2020.
RansomEXX là một Trojan có mức độ nguy hiểm cao. Mỗi mẫu phần mềm độc hại chứa một tên mã của tổ chức nạn nhân. Hơn nữa, cả phần mở rộng tệp được mã hóa và địa chỉ email để liên hệ với những kẻ tống tiền đều sử dụng tên của nạn nhân.
Một số tổ chức lớn đã trở thành nạn nhân của phần mềm độc hại này gần đây là Bộ Giao thông Vận tải Texas (TxDOT Mỹ) và Konica Minolta (Nhật Bản).
Mô tả kỹ thuật
Mẫu mã độc này có giá trị MD5 là aa1ddf0c8312349be614ff43e80a262f với tệp thực thi ELF 64-bit. Trojan này sử dụng các chức năng từ thư viện mã nguồn mở mbedtls để thực hiện mã hóa.
Khi được khởi chạy, Trojan sẽ tạo ra một khóa 256-bit và sử dụng nó để mã hóa tất cả các tệp thuộc của nạn nhân bằng cách sử dụng mã khối AES ở chế độ ECB. Khóa AES được mã hóa bằng khóa công khai RSA-4096-bit được nhúng trong phần thân của Trojan và được nối vào mỗi tệp được mã hóa.
Ngoài ra, phần mềm độc hại khởi chạy một chuỗi tạo và mã hóa lại khóa AES cứ sau mỗi 0,18 giây. Tuy nhiên, dựa trên một phân tích, các khóa thực sự chỉ được tạo lại sau mỗi giây.
Ngoài việc mã hóa tệp và để lại thông báo đòi tiền chuộc, mẫu mã độc này không có chức năng bổ sung nào khác như: không kết nối đến C&C Server, không chấm dứt các tiến trình đang chạy, không có thủ thuật chống phân tích….
Hình 1: Phân mảnh của file mã hóa sử dụng phương pháp giả ngẫu nhiên; Tên biến và hàm được lưu trong thông tin gỡ lỗi và phải khớp với mã nguồn ban đầu
Ở đây, mã nhị phân ELF chứa một số thông tin gỡ lỗi, bao gồm tên của các hàm, các biến toàn cục và các tệp mã nguồn được các nhà phát triển phần mềm độc hại sử dụng
Hình 2: Tên ban đầu của các tệp nguồn được nhúng trong phần thân của trojan
Hình 3: Nhật ký thực thi của trojan trong Kaspersky Linux Sandbox
Điểm tương đồng với các bản trên Windows của RansomEXX
Thực tế là các bản dựng PE được phát hiện trước đây của RansomEXX sử dụng WinAPI (chức năng dành riêng cho Hệ điều hành Windows), tổ chức mã nguồn của Trojan và phương pháp sử dụng các chức năng cụ thể từ thư viện mbedtls gợi ý rằng: cả ELF và PE có thể đều được bắt nguồn từ cùng một mã nguồn.
Trong Hình 4 có thể so sánh các tiến trình mã hóa khóa AES. Bên trái là mẫu ELF (có giá trị MD5 là aa1ddf0c8312349be614ff43e80a262f); bên phải là mẫu PE (có giá trị MD5 là fcd21c6fca3b9378961aa1865bee7ecb) được sử dụng trong cuộc tấn công nhắm vào Bộ Giao thông Vận tải Texas.
Mặc dù được xây dựng bởi các trình biên dịch khác nhau với các tùy chọn tối ưu hóa khác nhau và sử dụng các nền tảng khác nhau, nhưng có thể nhận thấy sự giống nhau là khá rõ ràng.
Hình 4: So sánh giữa mẫu ELF và mẫu PE
Chúng ta cũng có thể quan sát thấy những điểm tương đồng trong quá trình mã hóa nội dung tệp và trong bố cục tổng thể của chương trình. Hơn nữa, trong nội dung của thông báo đòi tiền chuộc thực tế cũng giống nhau, với tên nạn nhân trong tiêu đề và cách diễn đạt cũng tương tự.
Một cuộc tấn công tương tự được phát hiện tại Brazil
Theo báo chí đưa tin, một trong những tổ chức chính phủ của Brazil vừa bị tấn công có chủ đích bởi một Trojan ransomware.
Dựa trên thông báo đòi tiền chuộc, gần giống với thông báo trong mẫu vừa được mô tả và thông tin được đề cập ở trên, có khả năng cao mục tiêu là nạn nhân của một biến thể khác của RansomEXX. Vì vậy, một số hãng bảo mật đã nhận diện mã độc này với tên gọi là Trojan-Ransom.Linux.Ransomexx.
Hình 5: Thông báo đòi tiền chuộc từ mẫu aa1ddf0c8312349be614ff43e80a262f
Hình 6: Thông báo đòi tiền chuộc từ bài đăng của Bleeping Computer về vụ tấn công gần đây nhất ở Brazil
Đặng Vũ Hùng (theo securelist)