众所周知的原因,上次的安全笔记提到了华为小范围推送鸿蒙系统,我想了想,那得赶紧把鸿蒙上的应用给研究一下,比如开发,逆向,漏洞类型,扫描引擎
如果有兴趣一起研究学习的同学,可以参考下面的开发文档
- https://developer.harmonyos.com/cn/docs/documentation/doc-guides/installation_process-0000001071425528
当前阶段的开发环节我觉得还是比较难受的,使用虚拟机是云端的,需要申请账号,每次限制一个小时的使用,界面不清晰,滑动会卡顿
如果要生成签名包需要申请签名文件,好在运行的时候会生成调试版本的HAP包,拿来逆向效果一样的
HAP包是一个ZIP压缩文件
➜ file entry-debug-rich-unsigned.hap
entry-debug-rich-unsigned.hap: Zip archive data, at least v1.0 to extract
解压缩后看到的文件略微有些尴尬,有一个classes.dex
以及entry_debug_signed_entry.apk
,这也就难怪了一大堆说鸿蒙套壳的,这里应该是为了兼容过渡,有待后面研究的深入了再看
➜ ls -al
total 72
drwxr-xr-x@ 6 wnagzihxa1n staff 192 5 7 18:01 .
drwxr-xr-x 5 wnagzihxa1n staff 160 5 7 18:02 ..
drwxr-xr-x@ 3 wnagzihxa1n staff 96 5 7 18:01 assets
-rwxr-xr-x@ 1 wnagzihxa1n staff 3304 1 1 2019 classes.dex
-rwxr-xr-x@ 1 wnagzihxa1n staff 770 1 1 2019 config.json
-rwxr-xr-x@ 1 wnagzihxa1n staff 25046 1 1 2019 entry_debug_signed_entry.apk
entry_debug_signed_entry.apk
就是APK文件,拖出来就可以反编译分析
Path Finder单独切了个分支出来处理鸿蒙版本的应用包,先解压缩再提取APK进行反编译分析,不过当前这也是过渡版本,所以后续HAP包的结构肯定也会变,动态跟进呗
华为Mate 9 Pro之前在Pwn2Own被F-Secure实验室攻破的第一个逻辑漏洞,华为的应用商店AppGallery可以通过DeepLink启动任意私有组件
- https://labs.f-secure.com/assets/BlogFiles/the-mate-escape-huawei-pwn2own-2018-10-13.pdf
- https://labs.f-secure.com/assets/BlogFiles/huawei-mate9pro-pwn2own-write-up-final-2018-04-26.pdf
这几天一直在适配这个漏洞模型,子类父类抽象类接口来回跳,光梳理清楚就头秃
这个漏洞是我一直最喜欢的导出组件可以调用到startActivity()
模型,入口是浏览器,当scheme为"hiapp"
且host为"com.huawei.appmarket"
的时候,就可以走到startActivity()
分支,构造对象r7
的时候挺复杂的,需要点耐心
} else if ("hiapp".equals(_scheme) && "com.huawei.appmarket".equals(_host)) { // <-- 2
String _uri_activityName = _uri.getQueryParameter("activityName");
String _uri_params = _uri.getQueryParameter("params");
String _uri_channelId = _uri.getQueryParameter("channelId");
if (!TextUtils.isEmpty(_uri_activityName)) {
JSONArray jSONArray = null;
try {
if (!TextUtils.isEmpty(_uri_params)) {
jSONArray = new JSONObject(_uri_params).getJSONArray("params");
}
axj.m2725().f3677 = _uri_channelId;
OpenGateway.b r7 = OpenGateway.m354(_uri_activityName, jSONArray);
if (r7 != null) {
if (r7.f564 != null) {
this.callback.startActivity(r7.f564, 0);
} else if (r7.f563 != null) {
this.callback.startActivity(r7.f563);
}
}
} catch (JSONException e) {
ye.m7630(TAG, "can not get params:" + e.toString());
}
}
this.callback.finish();
利用的话,需要结合一个已经完成初始化的Map表,启动的私有组件必须存在于这个Map表,我们选择WebViewActivity
tr.m7477("webview.activity", WebViewActivity.class);
看下效果
然后本来是应该使用这个WebViewActivity的导出对象实现代码执行的,但是并未找到一个触发路径,所以使用launchApp
调用另一个存在WebView漏洞的应用,这就是后话了
有兴趣的可以分析一遍,这漏洞如果是我来挖,那肯定挖一半就放弃了
若干NFC漏洞
Issue 2144: Android: OOB Write in NFC stack when handling MIFARE Classic TLVs
- https://bugs.chromium.org/p/project-zero/issues/detail?id=2144
Issue 2152: Android: Memory Disclosure, OOB Write, and Double Free in NFC’s Felica Tag Handling
- https://bugs.chromium.org/p/project-zero/issues/detail?id=2152
Quarkslab对聊天应用Session的审计,包含了三个平台,其中一些审计点值得学习
- https://blog.quarkslab.com/audit-of-session-secure-messaging-application.html#full-report
- https://blog.quarkslab.com/resources/2021-05-04_audit-of-session-secure-messaging-application/20-08-Oxen-REP-v1.4.pdf
ELECTRIC CHROME - CVE-2020-6418 on Tesla Model 3,特斯拉车机上的浏览器漏洞利用
- https://leethax0.rs/2021/04/ElectricChrome/
说到车机,我一直想搞一下车机上的应用逻辑漏洞,因为车机上的应用都是单独提供的,之前我也审计过一些车机版本的应用,逻辑相对手机版本的会简单许多,而且稳定第一,所以一般分析起来比较轻松,接下来找找车机安全的议题和论文看看
Black Hat Asia 2021的议题出来了,依旧是线上举办,视频应该是还没放出来,不过大部分Slides都有了
来自360 Alpha Lab的大佬对高通QTEE的研究,小弟对这个只了解一丁点皮毛,抓紧时间多学学
- http://i.blackhat.com/asia-21/Thursday-Handouts/as-21-Zhao-Wideshears-Investigating-And-Breaking-Widevine-On-QTEE.pdf
- http://i.blackhat.com/asia-21/Thursday-Handouts/as-21-Zhao-Wideshears-Investigating-And-Breaking-Widevine-On-QTEE-wp.pdf
Android 9,10,11预览版的广播保护机制存在问题
- http://i.blackhat.com/asia-21/Thursday-Handouts/as-21-Johnson-Unprotected-Broadcasts-In-Android-9-and-10.pdf
- http://i.blackhat.com/asia-21/Thursday-Handouts/as-21-Johnson-Unprotected-Broadcasts-In-Android-9-and-10-wp.pdf
以下几个的Slides还没放出来
关于快应用的安全研究
- https://www.blackhat.com/asia-21/briefings/schedule/#a-new-era-of-one-click-attacks-how-to-break-install-less-apps-22259
对手机系统厂商提供的私密数据保护机制的安全研究,比如小米的Second Space之前就爆过一个密码绕过的漏洞
- https://www.blackhat.com/asia-21/briefings/schedule/#a-mirage-of-safety-bug-finding-and-exploit-techniques-of-top-android-vendors-privacy-protection-apps-22336
新的WebView漏洞模型又要来了,而且一次性来三种模型,可以刷SRC了,等Slides放出来第一时间抓紧学习
- https://www.blackhat.com/asia-21/briefings/schedule/#the-tangled-webview——-javascriptinterface-once-more-21831