StilachiRAT: Do thám hệ thống và đánh cắp tiền điện tử

Đội ngũ các nhà nghiên cứu bảo mật thuộc Microsoft Threat Intelligence vừa qua đã thông báo về sự tồn tại của một loại RAT (Remote Access Trojan) mới với cái tên StilachiRAT. Tuy chưa có thống kê nào về tổ chức hoặc tác nhân chịu trách nhiệm duy trì đứng sau loại trojan này, hãng Microsoft công bố tới người dùng toàn cầu bởi các kỹ thuật tinh vi có trong trojan này, khiến nó dễ dàng xâm nhập, ẩn náu và đánh cắp thông tin nhạy cảm trong hệ thống của nạn nhân.
Phân tích kỹ thuật
Trong báo cáo của Microsoft, các chuyên gia bảo mật tiến hành nghiên cứu mô-đunWStartupCtrl64.dll của StilachiRAT. Dưới đây là các kết luận và thống kê về khả năng chính của trojan:
1. Do thám hệ thống
StilachiRAT có khả năng thu thập thông tin chi tiết và toàn diện về hệ thống mục tiêu. Các thông tin về hệ điều hành, mã định danh phần cứng, số seri BIOS, kiểm tra thông tin các phiên RDP (Remote Desktop Protocol) đang hoạt động cũng như thông tin về các ứng dụng GUI đang chạy trên hệ thống đều bị trojan này thu thập. Thông qua giao diện COM (Component Object Model), WBEM (Web-based Enterprise Management) và ngôn ngữ truy vấn WQL (WMI Query Language), quá trình thu thập này có thể tạo ra thông tin nhận dạng duy nhất trên thiết bị lây nhiễm và lưu trữ trong kho registry từ số seri của hệ thống và khoá RSA công khai từ kẻ tấn công.

Hình 1: Thông tin nhận dạng thiết bị được lưu trong kho registry
2. Rà quét ví điện tử
StilachiRAT sau khi lây nhiễm trên hệ thống mục tiêu sẽ thực hiện truy quét các thông tin có liên quan tới ví tiền điện tử. Trojan này nhắm mục tiêu tới khoảng 20 extension của một số các ví tiền điện tử phổ biến như Coinbase Wallet, Phantom, Trust Wallet, Metamask, OKX Wallet, Bitget Wallet,… Thông qua truy xuất khoá registry tại đường dẫn \SOFTWARE\Google\Chrome\PreferenceMACs\Default\extensions.settings, trojan này có thể dễ dàng thu thập thông tin về các ví điện tử trên nếu như có bất kỳ extension nào được cài đặt trên trình duyệtn Google Chrome.
Dưới đây là danh sách các extension trên trình duyệt Google Chrome những ví điện tử bị trojan này nhắm tới:
| Tên extension của ví điện tử | Định danh của extension trên Google Chrome |
| Bitget Wallet (Formerly BitKeep) | jiidiaalihmmhddjgbnbgdfflelocpak |
| Trust Wallet | egjidjbpglichdcondbcbdnbeeppgdph |
| TronLink | ibnejdfjmmkpcnlpebklmnkoeoihofec |
| MetaMask (ethereum) | nkbihfbeogaeaoehlefnkodbefgpgknn |
| TokenPocket | mfgccjchihfkkindfppnaooecgfneiii |
| BNB Chain Wallet | fhbohimaelbohpjbbldcngcnapndodjp |
| OKX Wallet | mcohilncbfahbmgdjkbpemcciiolgcge |
| Sui Wallet | opcgpfmipidbgpenhmajoajpbobppdil |
| Braavos – Starknet Wallet | jnlgamecbpmbajjfhmmmlhejkemejdma |
| Coinbase Wallet | hnfanknocfeofbddgcijnmhnfnkdnaad |
| Leap Cosmos Wallet | fcfcfllfndlomdhbehjjcoimbgofdncg |
| Manta Wallet | enabgbdfcbaehmbigakijjabdpdnimlg |
| Keplr | dmkamcknogkgcdfhhbddcghachkejeap |
| Phantom | bfnaelmomeimhlpmgjnjophhpkkoljpa |
| Compass Wallet for Sei | anokgmphncpekkhclmingpimjmcooifb |
| Math Wallet | afbcbjpbpfadlkmhmclhkeeodmamcflc |
| Fractal Wallet | agechnindjilpccclelhlbjphbgnobpf |
| Station Wallet | aiifbnbfobpmeekipheeijimdpnlpgpp |
| ConfluxPortal | bjiiiblnpkonoiegdlifcciokocjbhkd |
| Plug | cfbfdhimifdmdehjmkdobpcjfefblkjm |
3. Đánh cắp thông tin đăng nhập
StilachiRAT trích xuất các giá trị encryption_key trên trình duyệt Google Chrome được lưu trữ cục bộ trong các tệp người dùng. Mặc dù các khoá này mặc định được Google Chrome mã hoá khi cài đặt lần đầu, tuy nhiên trojan này vẫn có thể thực hiện giải mã thông qua bối cảnh người dùng và các API của Windows. Điều này cho phép StilachiRAT truy cập vào các thông tin đăng nhập đã được lưu trong kho mật khẩu và trích xuất các giá trị này từ:
Thư mục lưu trữ dữ liệu cấu hình của Chrome, bao gồm cả khoá mã hoá:
%LOCALAPPDATA%\Google\Chrome\User Data\Local StateThư mục lưu trữ thông tin đăng nhập của người dùng:
%LOCALAPPDATA%\Google\Chrome\User Data\Default\Login Data
Do thư mục Login Data lưu trữ thông tin bằng cơ sở dữ liệu SQLite, trojan này có thể truy xuất thông tin đăng nhập thông qua câu truy vấn dưới đây:

Hình 2: Câu truy vấn trojan sử dụng để đánh cắp thông tin đăng nhập trong thư mục Login Data
4. Kết nối tới máy chủ C2
Có 02 địa chỉ được cấu hình cho StilachiRAT kết nối tới sau khi lây nhiễm trên hệ thống mục tiêu. Các địa chỉ này đều bị xáo trộn hoặc bị chuyển đổi sang mã nhị phân thay vì được lưu trữ như một chuỗi thông thường, khiến các phương pháp rà quét bảo mật gặp khó khăn hơn trong việc phát hiện các kết nối tới các máy chủ độc hại này.
Các cổng TCP 53, 443 và 16000 được thiết lập ngẫu nhiên để StilachiRAT kết nối tới hai máy chủ C2 app.95560[.]cc và 194.195.89[.]47. Nếu phát hiện có sự theo dõi của các phần mềm giám sát lưu lượng mạng như tcpviewer, trojan ngay lập tức sẽ ngắt các kết nối hiện có, đồng thời tạm ngưng kết nối tới các máy chủ C2 trong khoảng 2 giờ nhằm tránh bị phát hiện.

Hình 3: StilachiRAT thực hiện trì hoãn các kết nối tới máy chủ C2 nhằm tránh bị phát hiện
5. Thiết lập sự tồn tại trên hệ thống
StilachiRAT có thể được khởi chạy dưới dạng một dịch vụ (service) của Windows hoặc một thành phần độc lập. Cả hai hình thức này đều có cơ chế bảo vệ nhằm thiết lập sự hiện diện lâu dài của trojan trên hệ thống bị lây nhiễm. Một luồng giám sát (watchdog thread) được trojan sử dụng để theo dõi định kỳ các tệp tin thực thi .exe và thư viện liên kết động .dll và sẽ được trojan khôi phục lại từ các bản sao lưu trước đó nếu như những tệp độc hại này bị xoá trên hệ thống mục tiêu. Ngoài ra, nếu được khởi chạy như một dịch vụ của Windows, StilachiRAT có thể tái tạo dịch vụ bằng cách thay đổi các cài đặt trong kho registry của hệ thống, đồng thời khởi động lại dịch vụ này thông qua SCM (Service Control Manager) - một công cụ quản lý dịch vụ của Windows.

Hình 4: Khởi chạy trojan dưới dạng một dịch vụ của Windows thông qua SCM
6. Theo dõi RDP
StilachiRAT ghi lại thông của cửa sổ đang hiển thị (foreground window) trong các phiên RDP, đồng thời sao chép các mã thông báo bảo mật (security tokens) của người dùng giữa các phiên. Những token này giúp trojan mạo danh người dùng hợp pháp và thực hiện các hành động mạo danh người dùng đó. Đối với các phiên RDP của quản trị viên, trojan có thể đánh cắp token và dễ dàng thực hiện di chuyển ngang tới các máy tính khác trong hệ thống mạng nội bộ mà không cần thực hiện các bước xâm nhập ban đầu.
Ngoài ra, StilachiRAT cũng liệt kê tất cả các phiên RDP đang có trên hệ thống. Đối với các phiên được xác định, trojan thực hiện truy capaj vào shell của Windows Explorer để đánh cắp đặc quyền và lợi dụng để khởi động các ứng dụng, tiến trình mới với quyền thực thi vừa đánh cắp được trên hệ thống bị lây nhiễm.

Hình 5: Khởi động các tiến trình mới dưới quyền của người dùng đã đánh cắp
7. Thu thập dữ liệu và khay nhớ tạm trên hệ thống
StilachiRAT thu thập nhiều loại dữ liệu của người dùng, bao gồm các tiến trình đang hoạt động và bản ghi các phần mềm được cài đặt trên hệ thống bị lây nhiễm. Trojan này giám sát các cửa sổ GUI đang hoạt động, lưu trữ thông tin được hiển thị trên thanh “Title Bar” và gửi những thông tin trên về máy chủ C2, giúp kẻ tấn công dễ dành theo dõi và phân tích hành vi người dùng.

Hình 6: Theo dõi thông tin hiển thị trên thanh Title Bar
Mặt khác, StilachiRAT cũng thu thập dữ liệu được lưu trữ trong khay nhớ tạm (Clipboard) của hệ thống. Khi người dùng sao chép dữ liệu như thông tin cá nhân, mật khẩu, khoá tiền điện tử,… trojan có thể đọc và trích xuất những thông tin này và gửi về máy chủ C2. Ngoài ra, trojan này cũng truy cập tới các thư mục như %USERPROFILE%\Desktop và %USERPROFILE%\Recent để thu thập sâu hơn các dữ liệu nhạy cảm của người dùng.

Hình 7: Thu thập dữ liệu trong khay nhớ tạm của hệ thống
8. Chống bị truy vết
StilachiRAT triển khai nhiều kỹ thuật tinh vi khác nhau nhằm chống bị truy vết (anti-forensic) trên hệ thống bị lây nhiễm, bao gồm liên tục kiểm tra các công cụ phân tích và bộ đếm thời gian sandbox, ngăn chặn các tính năng phân tích phần mềm độc hại chạy trong môi trường ảo hoá có thể hoạt động, đồng thời thực hiện xoá nhật ký sự kiện (log) thường xuyên để tránh bị phân tích pháp y.
Mặt khác, StilachiRAT cũng che giấu các API của Windows thông qua mã hoá các chuỗi văn bản bằng thuật toán tuỳ chỉnh. Điều này làm chậm đáng kể thời gian phân tích pháp y vì việc hiểu được mã nguồn của trojan trở nên phức tạp hơn. Các kỹ thuật làm mờ API cũng được sử dụng để ngăn cản việc phân tích thủ công. Thay vì gọi trực tiếp các API như RegOpenKey(), trojan này mã hoá tên của các API thành các giá trị checksum và chỉ được giải mã động khi API được gọi đến.
Ngoài ra, để thêm một lớp bảo vệ, các giá trị checksum API đều được StilachiRAT tính trước và lưu trữ trong nhiều bảng tra cứu, mỗi bảng được mã hóa với một giá trị XOR. Khi API được gọi, trojan sẽ chọn bảng tra cứu, thực hiện giải mã và tìm ra các hàm API tương ứng. Sau đó, trojan này lưu trữ các con trỏ hàm với một lớp mã hóa bổ sung (XOR) để ngăn chặn truy quét bộ nhớ và phát hiện ra các tham chiếu đến API.

Hình 8: Giải mã các API trong bảng tra cứu chứa giá trị checksum tương ứng
Khuyến nghị & Khắc phục
Dựa vào các đặc điểm của StilachiRAT đã được nghiên cứu, đội ngũ FPT Threat Intelligence khuyến nghị người dùng nên thực hiện một số các biện pháp phòng người và bảo vệ để giảm thiểu nguy ngơ bị lây nhiễm StilachiRAT trong tương lai nói riêng và các loại mã độc nguy hiểm đang xuất hiện trên không gian mạng nói chung hiện nay như sau:
Cài đặt phần mềm từ nguồn đáng tin cậy: Luôn luôn tải phần mềm từ các trang web chính thức của nhà phát triển hoặc các nguồn uy tín. Tránh tải phần mềm từ các trang web không rõ nguồn gốc vì chúng có thể chứa phần mềm độc hại, như StilachiRAT, lợi dụng việc giả mạo phần mềm hợp pháp hoặc các bản cập nhật phần mềm.
Sử dụng trình duyệt web an toàn: Sử dụng các trình duyệt có tính năng bảo mật có tính năng SmartScreen giúp nhận diện và ngăn chặn các trang web độc hại, các trang web lừa đảo và các trang web chứa phần mềm độc hại. Đảm bảo trình duyệt được cập nhật và cấu hình an toàn để bảo vệ người dùng khỏi các mối đe dọa trực tuyến.
Sử dụng các phần mềm bảo mật: Cài đặt các phần mềm bảo mật với tính năng bảo vệ thời gian thực trên hệ thống, đảm bảo các phần mềm này luôn hoạt động, giúp ngăn chặn phần mềm độc hại ngay khi nó cố gắng xâm nhập vào hệ thống.
Lưu trữ thông tin cá nhân trong Password wallet: Nhằm tránh bị lột lọt thông tin đăng nhập cũng như giảm thiểu khả năng bị đánh cắp thông tin đăng nhập trên hệ thống, người dùng có thể sử dụng một số công cụ lưu trữ mật khẩu phổ biến và an toàn như 1Password, Bitwarden,…để bảo vệ thông tin cá nhân.
Sử dụng dịch vụ giám sát bảo mật 24/7: Là giải pháp hữu hiệu, giúp người dùng có thể phản ứng lập tức với bất kỳ hoạt động tấn công nào của tin tặc, đồng thời phát hiện và ngăn chặn những hành vi đáng ngờ, giúp giảm thiểu nguy cơ mất an toàn thông tin đối với hệ thống của người dùng.
IOCs
Thông tin IOC được Microsoft Threat Intelligence công bố như sau:
| Mô tả | Phân loại | Thông tin chi tiết |
Tệp WWStartupCtrl64.dll độc hại | Mã băm SHA-256 | 394743dd67eb018b02e069e915f64417bc1cd8b33e139b92240a8cf45ce10fcb |
| Máy chủ C2 | Địa chỉ IP | 194.195.89[.]47 |
| Máy chủ C2 | Domain | app.95560[.]cc |






