Seizmann/govv-banking-trojan-analysis

GitHub: Seizmann/govv-banking-trojan-analysis

对 GOVV 三阶段 Android 银行木马的完整静态逆向分析,包含加密方案还原、C2 协议文档、YARA 规则和 IOC 指标。

Stars: 0 | Forks: 0

# GOVV Android 银行木马 — 完整静态分析 ## 🚨 TL;DR 一种复杂的 **3 阶段 Android 银行木马**,通过孟加拉国的 **Facebook 广告**进行分发,主要针对 **bKash** 移动金融账户。该恶意软件结合了基于 VPN 的流量拦截、Accessibility Service 滥用、短信 OTP 窃取以及完整的远程访问木马 (RAT) 功能集。单次感染就导致受害者 bKash 账户中的约 **BDT 20,000** 被未经授权转移。 | 属性 | 值 | |----------|-------| | **恶意软件家族** | GOVV / ShellA | | **类型** | Dropper → 银行木马 → RAT | | **传播途径** | Facebook 广告 ("World Cup Live Free TV") | | **主要目标** | bKash (孟加拉国 MFS) | | **次要目标** | Nagad, Rocket, 手机银行应用 | | **外部包名** | `com.mmv.jnkh.rql7.tc8szt0d` | | **Payload 包名** | `com.d9fe4v4.pmpgv.eai.uszaw` | | **阶段** | 3 (Stub → 注入 DEX → 银行 APK) | | **置信度** | 95% | | **分析类型** | 仅静态分析(未执行) | | **分析日期** | 2026-06-24 | ## 📁 仓库结构 ``` govv-banking-trojan-analysis/ ├── README.md ← This file (overview + quick summary) ├── ANALYSIS.md ← Full technical writeup ├── IOCs.md ← All indicators of compromise ├── TIMELINE.md ← Incident & infection timeline ├── MITIGATIONS.md ← Protection tips for users & defenders ├── static-analysis/ │ ├── manifest.txt ← AndroidManifest.xml (decoded) │ ├── permissions.txt ← All declared permissions │ ├── findings.md ← Static analysis findings summary │ └── decompiled-classes/ ← Key class structure excerpts ├── dynamic-analysis/ │ ├── c2-communication.md ← C2 protocol documentation │ └── mitmproxy-log.txt ← (placeholder — not captured) ├── malware-samples/ │ ├── SHA256-hashes.txt ← Hashes only, NO binaries │ ├── yara-rules.yar ← YARA detection rules │ └── virustotal-links.txt ← VirusTotal report links └── LICENSE ← CC0 1.0 ``` ## 🔗 快速链接 - [完整技术分析 →](ANALYSIS.md) - [入侵指标 →](IOCs.md) - [攻击时间线 →](TIMELINE.md) - [如何保护自己 →](MITIGATIONS.md) - [YARA 检测规则 →](malware-samples/yara-rules.yar) ## 💀 攻击链(概述) ``` [Facebook Ad] "World Cup Live Free TV" APK │ ▼ [Stage 1: Stub APK] com.mmv.jnkh.rql7.tc8szt0d App Name: "GO​VV" (invisible Unicode chars) • attachBaseContext() → decrypts NhxxcPuLOx (XOR+GZIP) • Injects payload.dex via ClassLoader hijacking • Extracts b.apk bundle from lAsFuQPphUK asset │ ▼ [Stage 2: Injected DEX] com.shell.a • Shows fake "Google Play Installing..." WebView • Silently installs b.apk • Starts PpVpn → routes ALL traffic (0.0.0.0/0) │ ▼ [Stage 3: Banking Trojan] com.d9fe4v4.pmpgv.eai.uszaw • Requests Accessibility Service (fake tutorial) • Intercepts SMS OTP • Overlays banking apps with fake UI • Full RAT: keylogger, screen capture, crypto miner │ ▼ [Impact] bKash PIN + OTP captured → BDT 20,000 stolen ``` ## 🛡️ 发现的主要功能 | 功能 | 已确认 | |-----------|-----------| | VPN 流量拦截 (100%) | ✅ | | 银行应用覆盖攻击 | ✅ | | 短信 OTP 窃取 | ✅ | | 键盘记录 | ✅ | | 实时屏幕流传输 | ✅ | | 摄像头录像 | ✅ | | 麦克风录音 | ✅ | | GPS 位置跟踪 | ✅ | | 加密货币矿工 | ✅ | | DoS 引擎 | ✅ | | 远程 shell / Telnet | ✅ | | 恢复出厂设置功能 | ✅ | | 手机克隆 | ✅ | | 通讯录和短信外发 | ✅ | | 摄像头麦克风指示灯隐藏 | ✅ | | 开机持久化 | ✅ | | 自我更新机制 | ✅ | ## 🔒 加密方案(逆向) 该恶意软件使用了 **3 层加密** 栈: ``` # Layer 1: Java Random XOR + GZIP SEED = 3017671131121758624 # 0x29DF7E6ADE0B0FA0 def decrypt_asset(asset_bytes): skip_header(24) # fixed 24-byte header enc_len = read_int_BE() # big-endian length xor_decrypted = java_random_xor(enc_data, SEED) return gzip.decompress(xor_decrypted) # Layer 2: Repeating-key XOR (用于 DEX 字符串) def decrypt_string(ciphertext, key): return bytes(c ^ key[i % len(key)] for i, c in enumerate(ciphertext)) # Layer 3: 来自 C2 的 Runtime key (用于 .bt overlay files) # 无法静态解密 — key 通过 rckey 从 C2 服务器发送 ``` ## 📊 样本哈希 | 文件 | SHA256 | |------|--------| | 外部 Stub APK | `cee63a18cf8f25fad52a8184fbc3a617618cba3760d55528aa02975cc140d61d` | | 第 3 阶段银行 APK (b.apk) | `449524566579de83d8a810bb06de985ed5a17ac533909968d5629d30bcb9bbe3` | | 解密后的 Payload DEX | `5f229ccf7c30d914aba8970a65cca750c35519e8912a750825e8422e5b6c9152` | ## 📢 报告 此事件已报告至: - [ ] bKash 安全团队 - [ ] 孟加拉国银行网络安全部门 - [ ] CERT-BD (BGD e-GOV CIRT) - [ ] VirusTotal(已提交哈希) - [ ] Facebook(已举报广告) ## 📖 参考 - [VirusTotal 报告](https://www.virustotal.com) *(通过哈希搜索)* - [MITRE ATT&CK Mobile — T1417: 输入捕获](https://attack.mitre.org/techniques/T1417/) - [MITRE ATT&CK Mobile — T1430: 位置跟踪](https://attack.mitre.org/techniques/T1430/) - [MITRE ATT&CK Mobile — T1406: 混淆文件](https://attack.mitre.org/techniques/T1406/) - [Android VPN 服务滥用](https://developer.android.com/reference/android/net/VpnService) *分析在 Linux 上使用 androguard、Python 和自定义解密脚本完成。在此过程中未执行任何恶意软件。*
标签:Android安全, DAST, 云安全监控, 域名枚举, 威胁情报, 开发者工具, 恶意软件分析, 逆向工具, 静态分析