Có gì bên trong mã độc Android đánh cắp tiền ngân hàng tại Việt Nam

tgnd

Moderator
Thành viên BQT
18/08/2021
45
73 bài viết
Có gì bên trong mã độc Android đánh cắp tiền ngân hàng tại Việt Nam
Xin chào các bạn, hôm nay cuối tuần rảnh rỗi mới nhớ ra thời gian gần đây, có rất nhiều trường hợp khách hàng của các ngân hàng báo với cơ quan chức năng rằng không thao tác chuyển tiền nhưng tài khoản ngân hàng bỗng dưng mất tiền, trường hợp mất nhiều có thể lên tới hàng tỷ đồng, vậy thì nguyên nhân đến từ đâu? Mời các bạn cùng tôi tìm hiểu trong bài viết này!

Android_malware_banking.png

Nếu các bạn có theo dõi tin tức thì các nạn nhân mất tiền trong tài khoản ngân hàng đều sử dụng ANDROID và nhận được các cuộc gọi hướng dẫn cài đặt các phần mềm không nằm trong chợ ứng dụng, mà từ các đường link tải và cài đặt file APK từ bên ngoài. Ví dụ ở đây, tháng trước fanpage của WhiteHat cũng có bạn nhờ tôi kiểm tra một ứng dụng tương tự, khi cài đặt vào có tên: “THUẾ ĐIỆN TỬ”. Dựa vào các thông tin tôi biết thì đây là chiến dịch lừa đảo giả mạo các ứng dụng Chính Phủ, Tổng cục Thuế, các ứng dụng tiện ích, quản lý dữ liệu nhắm vào Việt Nam.

summary.png


Điều quan trọng nhất ở đây đó là sau khi được cài đặt vào máy, ứng dụng giả mạo này sẽ liên tục yêu cầu người dùng kích hoạt quyền “Trợ Năng” - Accessbility. Tôi đã thử cấp quyền này cho ứng dụng, thì phát hiện ứng dụng này có rất nhiều điều bất thường:
  1. Luôn hiển thị thông báo trên thanh thông báo
  2. Khi vào phần Cài đặt -> Ứng dụng và bấm vào ứng dụng giả mạo (mục đích là để xem thông tin) thì màn hình tự động quay trở về màn hình chính (home).
  3. Liên tục kết nối tới một địa chỉ IP.
  4. Máy hoạt động liên tục, rất nóng, hao pin.
uip.png

Đến đây đã có rất nhiều điểm đáng ngờ, vì vậy tôi bắt đầu phân tích ứng dụng giả mạo này.

1.png


Sử dụng công cụ JADX để decompile ứng dụng android giả mạo này, tôi phát hiện 4 payload, bao gồm 3 payload có tên bắt đầu bằng ký tự “o” và kết thúc bằng 2 ký tự “bf”, 1 payload có tên “tg.iapk”.

Những gì ứng dụng giả mạo này thực hiện đó là lấy đường dẫn hiện tại và tạo thư mục “newobfs", sau đó trích xuất thông tin từ resource file, giải mã 3 payload (sử dụng thuật toán xor) trên thành 0.pobfs, 1.pobfs, 2.pobfs ra thư mục này và thực thi trên bộ nhớ.

2.png

Sau khi giải mã bằng thuật toán của ứng dụng giả mạo này, tôi thu được 3 file có định dạng “dex”:

3.png

Những payload này chủ yếu có các chức năng liên quan đến xử lý hình ảnh, xử lý database sql, kiếm tra quyền root của thiết bị, gửi và nhận dữ liệu thông qua nhiều giao thức khác nhau: HTTP, UDP, TCP…

4.png

Kiểm tra quyền accessbility và thu thập các thông tin deviceNo, deviceId, osVersion, imei … của thiết bị:

5.png

Sau đó, ứng dụng giả mạo gửi các thông tin này đến C&C, địa chỉ C&C được mã hóa bằng RSA:

6.png

Ứng dụng giả mạo giải mã các domain, URL:

decrypt.png

Kết quả giải mã thu được 2 domain: “myecat1[.]ieasyclick[.]net” và “myecat1[.]ieasytest[.]net”.

Ngoài ra, các payload này còn thu thập thêm nhiều thông tin và ứng dụng khác trên máy, nhưng tôi sẽ tập trung vào phân tích payload thứ 4: tg.iapk.
Payload này được trích xuất từ resource, extract sau đó giải mã bằng thuật toán XOR:

8.png
Thuật toán giải mã:

9.png

Khi được cấp quyền trợ năng - accessbility, ứng dụng giả mạo này sẽ tự động cấp cho chính nó các quyền thông thường khác, ví dụ: danh bạ, bộ nhớ, tin nhắn, cuộc gọi… Ứng dụng này sẽ tạo một cửa sổ hiển thị dạng overlay, có nghĩa là hiển thị lên trên tất cả các ứng dụng khác.

overlay.png

Mục đích của cửa sổ này rất rõ ràng đó là:
  1. Đọc nội dung từ màn hình của bất kỳ ứng dụng nào
  2. Đọc nội dung từ nút mà người dùng chạm vào
  3. Tìm một nút, trường thông tin mong muốn để thực hiện một hành động, vd: ấn nút
  4. Mô phỏng thao tác chạm vào màn hình
Tiếp theo, ứng dụng giả mạo này sẽ chờ lệnh và thực thi rất nhiều chức năng độc hại khác nhau, sau khi phân tích, tôi phát hiện khoảng 90 lệnh độc hại.

11.png

Danh sách các lệnh và chức năng cụ thể như sau:

STTLệnhMô tả/Chức năng
1accStatusTrạng thái của Accessibility
2appDetailThay đổi các thiết đặt setting của app
3permissionXin tất cả các quyền
4openMeMở lại app
5capturePermissionXin quyền chụp ảnh màn hình
6floatPermissionXin quyền hiển thị trên các cửa sổ app khác
7autoBootTắt tính năng khởi động lại
8allPermissionChưa xác định chức năng
9closePlayĐóng GooglePlay
10installApkCài đặt Apk
11startCamMở camera
12setCamChụp ảnh
13stopCamĐóng camera
14readContactListĐọc danh bạ
15readAlbumListĐọc danh sách album các file names
16readAlbumLastĐọc danh sách album các file names đã xóa
17readAlbumThumbnailĐọc album thumbnails
18readSmsListĐọc các tin nhắn và gửi cho server
19showShortcutsThêm biểu tượng ở màn hình chính
20callAccKiểm trả xem dịch vụ Android Accessibility đã được kích hoạt
21callAppSettingMở settings
22openIntentChưa xác định
23backstageKiểm tra dịch vụ backstage
24requestFloatyYêu cầu quyền cửa sổ động trên Android
25permissionYêu cầu toàn quyền
26autoBootTự động reboot lại máy
27permissionBTự động phê duyệt quyền
28reqFloatyTự động phê duyệt quyền cửa sổ động
29releaseScreenCaptureChụp màn hình
30reqScreenPermissionYêu cầu quyền chụp màn hình
31reqPerListYêu cầu danh sách quyền
32updateApk || installCập nhật và cài đặt Apk
33updateCập nhật Easyclick scripts
34powerChưa xác định (có thể là tắt máy)
35captureChụp màn hình và gửi đi
36screen_relayThông tin ảnh chụp màn hình
37logModeMở trạng thái ghi log
38capturePicBật tính năng chụp màn hình
39homeNhấp vào nút ‘Home’ qua dịch vụ accessibility
40backNhấp vào nút ‘Back’ qua dịch vụ accessibility
41recentNhấp vào nút ‘Recent’ qua dịch vụ accessibility
42restartScKhởi động lại dịch vụ easyclick script
43restartMeTự động khởi động lại ứng dụng
44restartAppKhởi động lại ứng dụng
45reConnKết nối lại đến C&C
46AwakeGiữ thiết bị luôn hoạt động
47cancelAwakeDừng thiết bị không cho tự đánh thức.
48wakeupMở màn hình
49cancelWakeupGiữ màn hình mờ
50setWakeupHẹn giờ hoạt động
51swipePwdScreenOnBật chế độ bắt buộc dùng mật khẩu
52swipePwdScreenOffTắt chế độ bắt buộc dùng mật khẩu
53catAllViewSwitchHiện thị thông tin UI
54reOpenMeMở lại ứng dụng
55setDebugOnBật chế độ gỡ lỗi
56setDebugOffTắt chế độ gỡ lỗi
57autoRequestPermTự động yêu cầu quyền
58antiDeleteOnBật chế độ anti-delete
59antiDeleteOffTắt chế độ anti-delete
60lockScreenKhóa màn hình
61closeEnvĐặt cờ trạng thái trợ năng thành false
62screenshotChụp ảnh màn hình và tải lên
63blackThiết lập màn hình overlay màu đen
64doNotDisturbBật chế độ không làm phiền
65realtimeSetĐặt gửi dữ liệu thời gian thực
66closeProtectTắt chế độ bảo vệ GooglePlay Protect
67installPermissionCài đặt quyền người dùng
68transparentLàm cho màn hình trong suốt
69lightĐóng cửa sổ Overlay màu đen (closeBlackScreen)
70lightTĐóng cửa sổ Overlay trong suốt (closeTransparentScreen)
71inputSendThu thập các văn bản được nhập
72touchDownThực hiện thao tác vuốt xuống
73touchMoveThực hiện thao tác vuốt chạm và giữ
74touchUpThực hiện thao tác vuốt lên
75rightClickẤn phím quay lại (back)
76clickInputẤn vào phần giao diện nhập
77gestureUnlockThực hiện hành động “vuốt để mở khóa” (swipeForUnlockScreen)
78gestureCaptureThực hiện hành động “vuốt để chụp ảnh màn hình”
79gestureBThực hiện một loạt các cử chỉ
80clickPointThực hiện nhấp vào một điểm trên giao diện
81stopHereTestDừng tác vụ
82closeNewWinclearNewWin
83clickBBấm vào một phần tử trong giao diện (Image, Text, Button…)
84clearXóa thông tin package khỏi danh sách ứng dụng sử dụng gần đây
85wallpaperHành vi chưa xác định
86googleAuthThu thập thông tin mã xác thực 2FA của google và gửi cho server
87emailListThu thập và gửi danh sách ứng dụng email đã cài đặt
88walletListThu thập và gửi danh sách ứng dụng ví điện tử đã cài đặt
89fetchIconThay đổi biểu tượng ứng dụng
90walletSendTự động chuyển tiền số (tự động mở ứng dụng và thao tác chuyển tiền)

Ứng dụng giả mạo này sẽ kiểm tra ngôn ngữ của máy và thiết lập C&C tùy vào ngôn ngữ của máy. C&C mã độc sử dụng là: “*.unixpop.xyz” cùng với các subdomain khác gồm test, jump, với các subdomain chia theo khu vực (sg, sg1, sg2, kr, hk, us, eu, ca, au, za, ru, uss, usn).

Kèm theo rất nhiều các chức năng phụ trợ khác để lấy cắp thông tin.

Tổng kết lại, đây là một ứng dụng giả mạo, một phần mềm độc hại khi được cấp quyền trợ năng - Accessbility của các thiết bị Android, mã độc hoàn toàn có thể kiểm soát thiết bị và thao tác điều khiển từ xa, từ đó có thể đánh cắp thông tin tài khoản, mật khẩu và thao tác mở ứng dụng ngân hàng để chuyển tiền. Mọi người nên thường xuyên theo dõi tin tức, cảnh giác với các chiêu trò gọi điện giả mạo cơ quan chức năng, yêu cầu tải và cài đặt các ứng dụng từ các trang không rõ nguồn gốc để tránh rủi ro đáng tiếc.

IOCs:

sha256:
c5de22493ed0112aa28ea1bf1cae63e33b5fe68f1ebe08f3d41093fda7913ac2 - file signed10310c.apk

5014c054aaf2d18f77c598fb6b015d3ecf23996db86c48b64822913d1f0cf65e - payload tg.iapk

e91d268ffd0675b1b916e01326288d3054cefd6717fed84bb0912fe5539194cd - payload ocRgbQOtbf

4134682c329689a678797bc0bb5425a2f080ae831292ec5f33129d88554a7af3 - payload ocgpRVawbf

1bad2304c958a7d1fdb8ba07cd38e4577dc14f2f90b50c9098338f9cfda5eb2d - payload oixN6vtJbf

C&C:
myecat1[.]ieasyclick[.]net

myecat1[.]ieasytest[.]net

*.unixpop[.]xyz

38[.]54[.]17[.]46

Cảm ơn các bạn đã theo dõi bài viết, nếu thấy bài viết hữu ích đừng quên like và chia sẻ nhé!

tgnd
 
Chỉnh sửa lần cuối:
Thẻ
mã độc android ngân hàng việt nam
Bên trên