Mã độc ngân hàng SharkBot đã xâm nhập vào Google Play Store, kho ứng dụng Android chính thức, giả dạng phần mềm diệt virus với khả năng dọn dẹp hệ thống.
Mặc dù ứng dụng chứa mã độc này không phổ biến cho lắm nhưng sự hiện diện của nó trên Play Store cho thấy các đối tượng xấu vẫn tìm ra cách để vượt qua hệ thống phòng thủ tự động của Google. Cho tới thời điểm bài ứng dụng này vẫn còn tồn tại trên Google Play Store.
Các nhà nghiên cứu của NCC Group đã phát hiện ra sự tồn tại của SharkBot trên Google Play Store. Mới đây, NCC Group đã xuất bản một bài viết phân tích kỹ thuật chi tiết về phần mềm độc hại này.
SharkBot có thể làm gì?
Malware SharkBot được phát hiện lần đầu bởi Cleafy vào tháng 10/2021. Tính năng quan trọng nhất của nó, giúp nó khác biệt với các trojan ngân hàng khác, là chuyển tiền qua Hệ thống Chuyển tiền Tự động (ATS). Điều này được nó thực hiện bằng cách mô phỏng các thao tác chạm, nhấp và nhấn nút trên các thiết bị bị xâm nhập.
NCC cho biết tính năng chuyển tiền vẫn có trong phiên bản mới nhất của SharkBot nhưng chỉ được dùng trong trường hợp tấn công nâng cao.
Hiện tại, bốn chức năng chính trong phiên bản SharkBot mới nhất là:
- Injections (overley attack): SharkBot có thể lấy cắp thông tin đăng nhập bằng cách hiển thị nội dung web (WebView) với trang đăng nhập giả mạo (phishing) ngay khi phát hiện ứng dụng ngân hàng chính chủ được mở.
- Keylogging: SharkBot có thể lấy cắp thông tin đăng nhập bằng cách ghi nhật ký các sự kiện trợ năng (liên quan tới các thay đổi trường văn bản và các nút được nhấp vào) và gửi các nhật ký này đến máy chủ command and control (C2).
- Chặn SMS: SharkBot có thể chặn/ẩn tin nhắn SMS (đánh cắp mã OTP mà người dùng không hề hay biết).
- Điều khiển từ xa/ATS: SharkBot có thể chiếm toàn quyền kiểm soát thiết bị Android và điều khiển nó từ xa (thông qua Accessibility Services).
Để thực hiện những điều trên, SharkBot lạm dụng đặc quyền Accessibility trên Android và sau đó tự cấp thêm quyền cho nó nếu cần.
Bằng cách này, SharkBot có thể phát hiện khi nào người dùng mở ứng dụng ngân hàng sau đó thực hiện việc injection trang web phù hợp và đánh cắp thông tin của người dùng.
Ngoài ra, SharkBot còn có thể nhận lệnh từ máy chủ C2 để thực hiện các hành động khác như sau:
- Gửi SMS tới một số điện thoại.
- Thay đổi trình quản lý SMS.
- Tải xuống file từ một URL được chỉ định.
- Nhận file cấu hình đã được cập nhật.
- Gỡ cài đặt ứng dụng khỏi thiết bị.
- Tắt tính năng tối ưu hóa pin.
- Hiển thị overlay phục vụ lừa đảo (phishing).
- Kích hoạt hoặc dừng ATS.
- Đóng một ứng dụng cụ thể (ví dụ như công cụ diệt virus) khi người dùng cố gắng mở nó.
Trả lời thông báo
Một trong những điểm khác biệt đáng chú ý giữa SharkBot và các trojan ngân hàng Android khác là việc sử dụng các thành phần tương đối mới để tận dụng tính năng "Direct reply" cho các thông báo.
SharkBot có thể chặn các thông báo mới và trả lời chúng bằng các thông điệp tới trực tiếp từ máy chủ C2.
NCC lưu ý rằng SharkBot sử dụng tính năng này để thả các payload nhiều tính năng lên thiết bị bị xâm nhập thông qua một URL Bit.ly rút rọn.
Ban đầu, ứng dụng diệt virus giả mạo sẽ chỉ chứa một phiên bản SharkBot thu gọn để giảm nguy cơ bị phát hiện và vượt qua lớp phòng thủ tự động của Google Play Store. Sau đó, thông qua tính năng "Direct reply", phiên bản chính thức của SharkBot với đầy đủ tính năng bao gồm cả ATS sẽ được tải xuống và cài đặt.
Máy chủ C2 của SharkBot dựa trên một DGA (thuật toán tạo tên miền) nên việc phát hiện và ngăn chặn các tên miền cấp lệnh cho SharkBot trở nên khó khăn hơn nhiều.
Để bảo vệ bản thân trước những trojan nguy hiểm như SharkBot bạn đừng bao giờ hoàn toàn tin tưởng vào các ứng dụng trên Google Play Store. Hãy cài ít ứng dụng nhất có thể trên thiết bị của mình. Nói cách khác, chỉ nên cài các ứng dụng mà bạn cảm thấy cần thiết cho cuộc sống và công việc.
Nếu đang tìm kiếm một phần mềm diệt virus cho Android bạn có thể tham khảo tại đây:
Chúc các bạn luôn vui!