最近在尝试对接virus total的api,汇总数据再交给ai分析,就能免去手动截图或者抓数据再丢给ai的步骤了。主要流程差不多走通了,今晚小修小补后,想着之前都是测试的win pe以及url,ip域名这些,于是心血来潮想找个apk来测下结果
最终决定测个来头大的,网络身份认证app。这里先不得不吐槽,下载地址只在bing和google上找到,百度上都是些自媒体彩虹屁,要不就是第三方平台的下载链接。不过我也不确定这个地址是不是官方站点,先贴出来认证一下:下载
最近在尝试对接virus total的api,汇总数据再交给ai分析,就能免去手动截图或者抓数据再丢给ai的步骤了。主要流程差不多走通了,今晚小修小补后,想着之前都是测试的win pe以及url,ip域名这些,于是心血来潮想找个apk来测下结果
最终决定测个来头大的,网络身份认证app。这里先不得不吐槽,下载地址只在bing和google上找到,百度上都是些自媒体彩虹屁,要不就是第三方平台的下载链接。不过我也不确定这个地址是不是官方站点,先贴出来认证一下:下载
由于还没有细分思考和正文,文本是混杂在一起的,这里排版把思考分开了。只能说最终结果挺意料之中的
`cyberIdentity-android.apk`
`https://www.virustotal.com/gui/file/2d2240048c656f0c660f8847c19690af29c27424dc69480d00acf3c3abdb8aa0`
Android APK.
* `malicious`: 0
* `suspicious`: 0
* `undetected`: 61
* `timeout`: 4
* `failure`: 2
* `type-unsupported`: 8
* *Initial Verdict based on stats*: Safe/Undetected.
* `tags`: `android`, `contains-elf`, `reflection`, `apk`, `checks-network-adapters`, `obfuscated`.
* `bundle_info`: Contains many XMLs, PNGs, and some ELF files (`.so`).
* `signature_info`: Null (No signature provided in JSON).
* Sandbox: `Zenbox android`.
* Verdict: `CLEAN` (Confidence 93%).
* *Key Signatures/Behaviors*:
* Internet connection (`java.net.URL.openConnection`).
* Debugger check (`android.os.Debug.isDebuggerConnected`).
* HTTPS traffic (Port 443).
* Reads SharedPreferences.
* Connects to IPs without DNS (Cloudflare/Google IPs).
* Obfuscated method names (14%).
* Loads native libraries (`RiskStub`).
* Queries Device ID (IMEI/SubscriberId).
* Accesses `/proc/self/status`.
* Queries WiFi access points and MAC address.
* Permissions: `RECORD_AUDIO`, `CAMERA`, `INTERNET`, `MODIFY_AUDIO_SETTINGS`, `WAKE_LOCK`, `WRITE_EXTERNAL_STORAGE`.
* Queries sensitive phone info (IMSI, model, brand, etc.).
* Uses Reflection.
* Files dropped: `/data/user/0/cn.cyberIdentity.certification/.cache/libDexHelper-x86.so` (ELF file).
* `Defense Evasion` (TA0030) -> `Obfuscated Files or Information` (T1406).
* `Discovery` (TA0032) -> `System Network Connections Discovery` (T1421), `System Information Discovery` (T1426).
* `Collection` (TA0035) -> `Audio Capture` (T1429).
* `Command and Control` (TA0011) -> `Encrypted Channel` (T1573), `Application Layer Protocol` (T1071).
* *Phase 1 (Stats)*: 0 malicious. -> [Safe/Suspicious].
* *Phase 2 (Intent)*:
* Persistence: Not explicitly seen.
* Process Hijacking: Not seen.
* Defense Evasion: Obfuscation and Debugger checks present.
* Privacy Probing: **Strong evidence**. Queries IMEI, IMSI, MAC address, WiFi networks, and requests Camera/Microphone permissions.
* Sensitive Outbound: HTTPS to various IPs.
* *Phase 3 (MITRE)*: Hits Collection (Audio) and Discovery (Device IDs).
* *Phase 4 (Special)*: APK file, dynamic data available.
* *Synthesis*: While antivirus engines say "Clean", the behavior is highly invasive. It collects unique hardware identifiers and has permissions for audio/camera. This is typical of "Spyware" or "Aggressive Telemetry". However, since no engine flagged it and the sandbox says "Clean", it might be a legitimate (though privacy-invasive) corporate/identity app. But from a security expert's perspective, the combination of *Obfuscation + Device ID harvesting + Audio/Camera permissions* is a red flag.
* *Final Verdict*: **[可疑 (Suspicious)]**. It's not "Malicious" in the sense of destroying data, but it's "Suspicious" due to high-privacy-risk behaviors and obfuscation.
* *A. Analysis Stats*: 0/61. Explain "blacklist" (matching known bad hashes).
* *B. Static Attributes*: Mention obfuscation and the ELF file in the bundle.
* *C. Intention & Behaviour*: Focus on the "Privacy Probing" (IMEI, MAC, Audio/Camera).
* *D. MITRE Cards*:
* Defense Evasion (T1406)
* Discovery (T1421, T1426)
* Collection (T1429)
* C2 (T1573, T1071)
* *E. Final Judgment*: Explain the gap between "AV Clean" and "Behavioral Risk".
**页面访问地址**: VirusTotal
**定性判断**: [可疑]
**报告说明**:
该样本是一个 Android 安装包 (APK)。虽然所有主流杀毒引擎均未将其标记为恶意,且沙箱初步判定为"干净",但深度行为分析显示该程序具有极强的**隐私探测**和**环境感知**能力,并采用了代码混淆技术。这种"引擎未检出但行为激进"的特征,使其被定性为 [可疑]。
**汇总全量沙箱数据 (Zenbox android)**:
**[战术卡片: Defense Evasion - 防御规避]**
**[战术卡片: Discovery - 探测/发现]**
**[战术卡片: Collection - 资源收集]**
**[战术卡片: Command and Control - 命令与控制]**
该样本虽然在杀毒引擎层面表现为"安全",但其行为模式呈现出典型的**间谍软件 (Spyware)** 特征:
**结论**:该文件极可能是一个用于身份追踪或隐私收集的工具。由于其行为高度敏感且具有对抗性,即便目前没有报毒,也应将其视为 **[可疑]** 样本,建议用户谨慎安装,严禁在包含敏感信息的设备上运行。
你这发的让我觉得,我应该接受心理治疗了。
因为互联网大概真的已经变成了某种不知所谓的东西
那个…我知道里面还有很多不必要的权限请求,但是,其他的部分,不一定是有问题
所以,这里看上去分析的挺多,可是,很多的报告是正常软件也会有的。
这里并不是说"这个软件就是安全的,楼主啥技术都不懂在这里吓唬大家",而是说,这个报告里的很多东西并不能成为判定软件是否危险的依据。或者用个更简单的举例:
恐怖分子为了隐蔽身上携带的武器,所以要穿上衣服进行遮掩
但是,这不意味着大街上穿着大衣羽绒服的人就都是恐怖分子
很多软件的权限索取也跟白加黑一样,不知道哪些是必要的,哪些是多余的
安卓的权限还全看开发者调的api。比如过久的版本就只有 允许/不允许,没有 仅本次允许/运行时允许 的选项
VT只做特征匹配,不会主观分析意图,这也是明面的局限性了,只能在面对来源不明的未知软件时做个参考
互联网早就成属于克系了![]()
如果一个身份认证的app, 不能人脸认证(摄像头和麦克风), 不能设备绑定(IMEI), 不能避免dns中间人攻击. 还必须代码开源供人寻找漏洞,
你觉得这个app 该如何实现身份认证功能?
这些不是问题。问题在于授权后可能不放,然后在后台就为所欲为了,像pdd之类的。而且之前微信就遇到过打完微信电话不释放麦克风权限
不得不说安卓的权限还是太拉跨了。权限看板跟个无能的丈夫一样,只能马后炮看着
你一个《可能》就给一个国家APP打成恶意软件了, 我看你的恶意比这个APP还大
全信AI也是牛
闭源软件混淆代码也正常。我觉得问题就只有读取手机三码这点
感谢提供的新思路,对错且不论,这样的报告容易看多了,相比原版(还是英文),一般只看AV检测结果,毕竟看起来太累。
这个是AI翻译的吧?安卓好像没有后台录音。
感觉 @xiaokonglong 说的也有道理。
标题的“意料之中”是指?我自己是网络安全从业者,说实话没看出有任何越界的地方,如果楼主一定要先射箭后画靶的话,那我也可以说我认为楼主是 50w。
首先第一点,对于代码混淆,这个是 Google 官方建议的做法,而且目的也不仅仅是增加逆向分析难度,因为混淆后的代码通常能减少体积。
相关文档:通过 R8 启用应用优化 | App quality | Android Developers
Google 原文:
混淆处理(也称为“缩减大小”):为了减小 DEX 文件的大小,R8 会缩短类、字段和方法的名称(例如,
com.example.MyActivity可能会变为a.b.a)。
另一点,关于反射,这个本来就是 Java 的基本特性,虽然这个技术会被用于绕过一些技术能力比较垃圾的反病毒引擎,但本身在软件开发层面是非常常用的技术,只要软件有许多复杂的联网功能需求,几乎不可避免地会用到反射技术来实现高自由度的网络数据序列化与反序列化。
一个常见的基于反射技术的 Android 网络请求库: square/retrofit: A type-safe HTTP client for Android and the JVM
还有关于权限的申请,首先 Android 上的录音权限不区分前后台,RECORD_AUDIO就是单纯的录音权限,而使用录音权限的地方有很多,尤其是涉及到 KYC 的相关场景,在 KYC 阶段采集环境音是非常合理且合规的需求。
至于摄像头权限,这同样也是 KYC 阶段不可能不用的权限,不然活体检测完全没法做。
至于所谓的“部分连接直接通过 IP 访问而未经过 DNS 解析”,这其实是因为使用了 DoH / DoT,同样也是从安全角度考虑,裸 DNS 本来就更容易被劫持。
有任何不同看法?欢迎反驳。
另外再说一点,你至少应该告诉 AI 这个 App 本身具有哪些功能,这样才能让 AI 不像个无头苍蝇一样瞎分析。
至少对于现在楼主从 AI 那搬来的分析,我的看法是:傻逼。
明显的AI-Slop……
附议
同意
@Qingwa 要不要看看这里,上面有几层已经开始人身攻击了,不会又要吵起来了吧
另外, 准则 - 小众软件官方论坛 我没细看过,这种直接骂人的行为是可以接受的吗?或者说,这种程度的言论完全不算是"指名道姓"亦或是"人身攻击"?
等一下,这个结果不是 AI 扫码后得出的结论么?
所以现在是和AI吵起来了?哦不,针对AI的内容吵起来了么
不知道,应该说"现在"还没吵起来
但是我看到了这个词,所以,开始警觉了,毕竟两天前,我们刚盖了五十多层楼…两栋五十多层的楼
调用了 报告接口(引擎检出,静态信息)/行为接口(所有沙箱的行为分析结果)/att&ck汇总接口(所有沙箱的行为分析结果中的战术技术详细描述),组成一个大json后,用特定的提示词让ai对所有数据进行综合分析和特点格式的输出,一些词汇ai可能会进行自主翻译
这是gemma的分析。我就没有提供额外描述的参数。用gemma是因为api暂时是免费的,而且不调用工具(调用工具额外算费用),主观描述太多担心会有误导
你这倒提醒我完善程序逻辑。但我保持意见,官方的东西也不见那么干净,这里官方代指所有,不指一个。毕竟我这套代码打包的exe传上去分析的结果一样是可疑 ![]()
这就是ai啊,我一开始就说了