Các nhà nghiên cứu an ninh mạng đã tiết lộ một họ mã độc Android mới có tên là Perseus, đang được phân tán rộng rãi với mục đích thực hiện chiếm quyền điều khiển thiết bị (DTO) và gian lận tài chính.
Perseus được xây dựng dựa trên nền tảng của Cerberus và Phoenix, đồng thời phát triển thành một "nền tảng linh hoạt và có khả năng hơn" để xâm nhập các thiết bị Android thông qua các ứng dụng dropper được phân phối qua các trang web lừa đảo (phishing sites).
"Thông qua các phiên điều khiển từ xa dựa trên Accessibility, mã độc cho phép giám sát theo thời gian thực và tương tác chính xác với các thiết bị bị nhiễm, cho phép chiếm quyền kiểm soát hoàn toàn thiết bị và nhắm mục tiêu vào nhiều khu vực khác nhau, với trọng tâm mạnh mẽ vào Thổ Nhĩ Kỳ và Ý," ThreatFabric cho biết trong một báo cáo chia sẻ với The Hacker News.
"Ngoài việc đánh cắp thông tin xác thực truyền thống, Perseus còn giám sát các ghi chú của người dùng, cho thấy trọng tâm là trích xuất thông tin cá nhân hoặc tài chính có giá trị cao."
Cerberus lần đầu tiên được ghi nhận bởi công ty bảo mật di động Hà Lan vào tháng 8 năm 2019, làm nổi bật việc mã độc lạm dụng accessibility service của Android để tự cấp thêm quyền, cũng như đánh cắp dữ liệu nhạy cảm và thông tin xác thực bằng cách hiển thị các màn hình giả mạo (overlay screens). Sau khi mã nguồn bị rò rỉ vào năm 2020, nhiều biến thể đã xuất hiện, bao gồm Alien, ERMAC, và Phoenix.
Một số tệp độc hại (artifacts) được phân phối bởi Perseus được liệt kê dưới đây:
- Roja App Directa (com.xcvuc.ocnsxn) - Dropper
- TvTApp (com.tvtapps.live) - Perseus payload
- PolBox Tv (com.streamview.players) - Perseus payload
Phân tích của ThreatFabric đã tiết lộ rằng mã độc này mở rộng dựa trên cơ sở mã nguồn của Phoenix, với các tác nhân đe dọa có khả năng dựa vào một large language model (LLM) để hỗ trợ phát triển. Điều này dựa trên các chỉ số như việc ghi nhật ký rộng rãi trong ứng dụng và sự hiện diện của biểu tượng cảm xúc (emojis) trong mã nguồn.
Tương tự như mã độc Android Massiv được tiết lộ gần đây, Perseus mạo danh các dịch vụ IPTV để nhắm mục tiêu vào những người dùng đang tìm cách cài đặt các ứng dụng này trên thiết bị của họ để xem nội dung cao cấp. Các chiến dịch phát tán mã độc này chủ yếu nhắm vào Thổ Nhĩ Kỳ, Ý, Ba Lan, Đức, Pháp, Các Tiểu vương quốc Ả Rập Thống nhất (U.A.E.) và Bồ Đào Nha.
"Bằng cách nhúng payload của nó vào ngữ cảnh mong đợi này, mã độc Perseus đã giảm hiệu quả sự nghi ngờ của người dùng và tăng tỷ lệ lây nhiễm thành công, pha trộn hoạt động độc hại với một mô hình phân phối được chấp nhận rộng rãi cho các dịch vụ như vậy," ThreatFabric cho biết.
Sau khi được triển khai, Perseus hoạt động không khác gì các mã độc ngân hàng Android khác khi nó khởi động các cuộc tấn công overlay và ghi lại keystrokes để chặn đầu vào của người dùng theo thời gian thực và hiển thị các giao diện giả mạo trên các ứng dụng tài chính và dịch vụ tiền điện tử nhằm đánh cắp thông tin xác thực.
Mã độc cũng cho phép kẻ tấn công ra lệnh từ xa thông qua bảng điều khiển command-and-control (C2), thực hiện và ủy quyền các giao dịch gian lận. Một số lệnh được hỗ trợ như sau:
- scan_notes, để chụp nội dung từ nhiều ứng dụng ghi chú khác nhau, như Google Keep, Xiaomi Notes, Samsung Notes, ColorNote Notepad Notes, Evernote, Simple Notes Pro, Simple Notes, và Microsoft OneNote (chỉ định sai tên package là "com.microsoft.onenote" thay vì "com.microsoft.office.onenote").
- start_vnc, để khởi chạy một luồng hiển thị trực quan gần thời gian thực của màn hình nạn nhân.
- stop_vnc, để dừng phiên điều khiển từ xa.
- start_hvnc, để truyền một biểu diễn có cấu trúc của hệ thống phân cấp UI và cho phép kẻ tấn công tương tác với các phần tử UI theo chương trình.
- stop_hvnc, để dừng phiên điều khiển từ xa.
- enable_accessibility_screenshot, để bật tính năng chụp màn hình bằng cách sử dụng accessibility service.
- disable_accessibility_screenshot, để tắt tính năng chụp màn hình bằng cách sử dụng accessibility service.
- unblock_app, để xóa một ứng dụng khỏi danh sách chặn (blocklist).
- clear_blocked, để xóa toàn bộ danh sách các ứng dụng bị chặn.
- action_blackscreen, để hiển thị một lớp phủ màn hình đen (black screen overlay) nhằm che giấu hoạt động của thiết bị khỏi người dùng.
- nighty, để tắt tiếng.
- click_coord, để thực hiện một lần chạm tại các tọa độ màn hình cụ thể.
- install_from_unknown, để buộc cài đặt từ các nguồn không xác định.
- start_app, để khởi chạy một ứng dụng được chỉ định.
Perseus thực hiện nhiều kiểm tra môi trường để phát hiện sự hiện diện của các trình gỡ lỗi (debuggers) và công cụ phân tích như Frida và Xposed, cũng như xác minh xem thẻ SIM đã được lắp hay chưa, xác định số lượng ứng dụng đã cài đặt và nếu con số này thấp bất thường, đồng thời xác thực các giá trị pin để đảm bảo nó đang chạy trên một thiết bị thực.
Mã độc sau đó kết hợp tất cả thông tin này để đưa ra một điểm số nghi ngờ tổng thể được gửi đến bảng điều khiển C2 để quyết định hành động tiếp theo và liệu kẻ tấn công có nên tiến hành đánh cắp dữ liệu hay không.
"Perseus làm nổi bật sự phát triển không ngừng của mã độc Android, chứng minh cách các mối đe dọa hiện đại được xây dựng dựa trên các họ mã độc đã có như Cerberus và Phoenix, đồng thời đưa ra những cải tiến có mục tiêu thay vì các mô hình hoàn toàn mới," ThreatFabric cho biết.
"Các khả năng của nó, từ điều khiển từ xa dựa trên Accessibility và các cuộc tấn công overlay cho đến giám sát ghi chú, cho thấy trọng tâm rõ ràng vào việc tối đa hóa cả tương tác với thiết bị và giá trị của dữ liệu thu thập được. Sự cân bằng giữa chức năng kế thừa và đổi mới có chọn lọc này phản ánh một xu hướng rộng lớn hơn về hiệu quả và khả năng thích ứng trong phát triển mã độc."