Chiến dịch gián điệp mạng sử dụng mã độc RDStealer đánh cắp dữ liệu chia sẻ trên Remote Desktop
Các nhà nghiên cứu tại Bitderfender thông tin rằng các cuộc tấn công này được thực hiện theo một chiến dịch có tên “RedClouds” bắt đầu từ đầu năm 2022 và nhắm mục tiêu tấn công tại các công ty, doanh nghiệp công nghệ thông tin tại khu vực Đông Á.
Mặc dù không thể quy kết chiến dịch cho các tác nhân đe dọa cụ thể, nhưng các nhà nghiên cứu đề cập rằng với những lợi ích và mục tiêu đạt được của kẻ tấn công đứng sau phù hợp với một số nhóm tin tặc APT tới từ Trung Quốc. Ngoài ra, Bitdefender cho biết các tin tặc cụ thể đã để lại dấu vết hoạt động ít nhất là từ năm 2020, ban đầu sử dụng các công cụ có sẵn và chuyển sang phần mềm độc hại tùy chỉnh vào cuối năm 2021.
Đánh cắp dữ liệu thông qua RDP
Giao thức RDP được phát triển bởi Microsoft và cho phép người dùng truy cập tới máy tính ở xa với giao diện đồ họa thông qua mạng nội bộ hoặc Internet. Điều này giúp người dùng rất nhiều tiện ích như làm việc từ xa, hỗ trợ công nghệ thông tin hoặc quản lý máy chủ từ xa.
Giao thức RDP bao gồm một tính năng gọi là “device redirection”, cho phép người dùng truy cập tới các thiết bị ổ cứng nội bộ máy chủ, các máy in, bàn phím, cổng hoặc thiết bị khác đang kết nối tới máy chủ RDP đang truy cập. Người dùng thực hiện truy cập đến các tài nguyên này thông qua câu lệnh truy vấn “tsclient” với tùy chọn các chữ cái tương ứng. Ví dụ, nếu máy chủ RDP đang chia sẻ dữ liệu trên ổ đĩa C thì người dùng có thể truy cập các tệp tin trong thư mục chia sẻ trên ổ đĩa C thông qua truy vấn “tsclient\c” thông qua giao thức RDP.
Hình 1. Sơ đồ giao thức RDP
Các tin tặc đã lây nhiễm các máy tính từ xa bằng phần mềm độc hại RDStealer tùy chỉnh, lợi dụng tính năng device redirection. Mã độc được kích hoạt sẽ giám sát các kết nối RDP và tự động đánh cắp dữ liệu từ các ổ đĩa cục bộ sau khi chúng được kết nối với máy chủ RDP. Khi phát hiện kết nối máy khách RDP mới, RDStealer sẽ đưa ra các lệnh để lọc dữ liệu nhạy cảm, chẳng hạn như lịch sử duyệt web, thông tin đăng nhập và khóa riêng từ các ứng dụng như mRemoteNG, KeePass và Google Chrome.
Có 5 mô-đun trong mã độc RDStealer là keylogger; một bộ thiết lập kết nối; mô-đun trích xuất và đánh cắp dữ liệu; công cụ chặn bắt nội dung nhập từ bàn phím và một hàm có chức năng mã hóa/giải mã, ghi nhận ký.
Hình 2. Hoạt động mã động RDStealer
Sau khi kích hoạt, RDStealer tham gia vào một vòng lặp vô thời hạn gọi chức năng “diskMounted”, chức năng này kiểm tra tính khả dụng của các ổ đĩa C, D, E, F, G hoặc H trên các chia sẻ mạng \\tsclient. Nếu tìm thấy, nó sẽ thông báo cho máy chủ chỉ huy và kiểm soát (C2) và bắt đầu trích xuất dữ liệu từ máy khách RDP được kết nối.
Điều đáng chú ý là các vị trí và phần mở rộng tên tệp mà phần mềm độc hại liệt kê trên ổ C:\ bao gồm cơ sở dữ liệu mật khẩu KeePass, khóa riêng SSH, ứng dụng khách Bitvise SSH, kết nối MobaXterm, mRemoteNG,… cho thấy rõ ràng rằng tin tặc đang theo đuổi thông tin xác thực mà chúng có thể sử dụng cho các mục đích xâm nhập ngang hàng. Trên tất cả các ổ đĩa khác, RDStealer sẽ quét mọi thứ, trừ một số trường hợp ngoại lệ không có khả năng lưu trữ dữ liệu có giá trị.
Mã độc khi lây nhiễm vào máy chủ RDP thường được lưu trữ tại các thư mục trong máy tính nạn nhân. Bitdefender cho biết, tất cả các máy bị lây nhiễm trong quá trình xảy ra vụ việc đều do hãng Dell sản xuất, cho thấy các tin tặc đã cố tình chọn thư mục này để ngụy trang cho hoạt động độc hại.
Hình 3. Vị trí lưu trữ của mã độc
Cũng theo BitDefender, mã độc RDStealer có sử dụng các kỹ thuật để lẩn tránh sự dò quét của các giải pháp bảo mật như anti-virus, tường lửa, hay hệ thống phát hiện xâm nhập (IDS), liên quan đến việc sử dụng các thư mục Microsoft Windows có khả năng bị các giải pháp bảo mật loại trừ khỏi quá trình quét (ví dụ: System32 và Program Files) để lưu trữ các payload backdoor.
Tất cả các dữ liệu bị đánh cắp đều được lưu trữ cục bộ dưới dạng mã hóa tại tệp tin “C:\users\public\log.log” cho đến khi chúng được chuyển tới máy chủ C2. Giai đoạn cuối cùng trong quá trình thực thi của RDStealer là kích hoạt hai tệp DLL, bao gồm backdoor Logutil (“bithostw.dll”) và trình tải của nó (“ncobjapi.dll”). Trong đó, backdoor Logutil cho phép các tin tặc thực thi các lệnh từ xa và thao tác với các tệp trên thiết bị bị nhiễm. Phần mềm độc hại sử dụng các lỗ hổng tải DLL để chạy trên hệ thống bị lây nhiễm mà không bị phát hiện và sử dụng Công cụ quản lý Windows (WMI) làm trình kích hoạt. Logutil giao tiếp trực tiếp với C2 và nhận các lệnh để thực thi.
Các nhà nghiên cứu nhấn mạnh rằng C2 của Logutil chứa các tham chiếu đến ESXi và Linux, vì vậy có khả năng các tin tặc đã sử dụng tính linh hoạt của Go để tạo ra một backdoor đa nền tảng. Liên quan đến RDStealer, Bitdefender cũng đã chia sẻ một danh sách đầy đủ các chỉ số xâm phạm trong báo cáo gần nhất của họ.
Giải pháp phòng chống mã độc RDStealer
Theo khuyến nghị của hãng bảo mật Barracuda, để phòng chống tấn công RDStealer cũng như các cuộc tấn công tương tự, người dùng cần chủ động thực hiện các hành động sau:
1. Nếu người dùng sử dụng giao thức RDP thì cần thiết lập phiên liên lạc được mã hóa, giới hạn quyền truy cập thư mục chia sẻ đối với người dùng hợp lệ (sử dụng chứng thư số là giải pháp tốt).
2. Sử dụng giải pháp bảo vệ tại điểm cuối như việc dò quét các hành vi bất thường trong hệ thống sử dụng hệ thống phát hiện xâm nhập tại máy đầu cuối.
3. Cài đặt luật yêu cầu sử dụng mật khẩu phức tạp, xác thực đa nhân tố và giải pháp phòng thủ theo chiều sâu.
Đinh Văn Hùng
(Học viện Kỹ thuật mật mã)