吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 2012|回复: 23
上一主题 下一主题
收起左侧

[Android 原创] Android组件导出检测工具ComponentFuzzer

  [复制链接]
跳转到指定楼层
楼主
North886 发表于 2025-3-25 23:17 回帖奖励
在Android中,组件是一个很重要的模块,主要分为四大组件Activity,Service,BroadcastReceive,ContentProvider


Activity:就相当于是一个个页面,用户交互的主要部分,用于显示界面处理用户事件,通过Inetnt进行通信
Service:就是一个个后台服务,eg:下载音乐等操作,其生命周期独立于Activity,通过startService()或bindService()方法进行启动
BroadReceive :用于接收系统或者应用发出的广播消息,用于不同组件之间或者不同应用之间的通信
ContetnProvider: android中用于应用程序之间共享数据的一种机制,允许一个应用向其他应用提供数据,但并不需要知道数据的具体存储细节

对于这些组件,经常会看到这样的标签属性


如果export="true",那么就证明该组件导出,也就是第三方软件可以通过普通权限进行获取intent的执行权限
对于这些组件的安全性问题的话,很多,常见的就是:
[JavaScript] 纯文本查看 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
[mw_shl_code=c,true]Activity
1.越权:一些敏感页面需要验证用户身份才能访问,如果对与Activity组件没有进行权限验证,调用此Activity即可进行绕过
2.拒绝服务崩溃:通过Intent给Activity传输畸形数据让程序崩溃
3.对Activity界面进行劫持
Service
1.提权
2.service劫持
3.消息伪造
4.拒绝服务
BroadReceive
1.消息伪造和拒绝服务:通过两种方式注册广播接收器,一种在AndroidMainfest.xml文件中通过<receiver>标签进行静态注册,一种通过Context.registerReceiver()动态注册,指定相应的intentFilter参数。动态注册的广播低质都是默认导出的,如果对于导出的没有做权限控制,导致其组件可以接受一个外不可控的url或者其他命令,导致用户可以越权利用应用
2.拒绝服务
[/mw_shl_code]
当然涉及到具体的就需要定位去构造action和intent中传输的数据达成一个具体的风险问题,所以组件安全也是很重要的

由于具体的需要去分析代码,所以就不追说太多,但是对于导出的组件还有一个要检测的就是是否会存在crash风险
先说这次的工具,通过Android的原生类PackageMangager等技术实现定位检测指定应用是否存在导出风险,

根据结果跳转至对应逻辑去对该类的导出组件进行构造intent传输,通过传递空参数和反序列化参数进行启动对应导出的组件
并检测该组件是否会存在crash风险。
该工具实现了自动化查询并且执行的操作,有效的避免了对于检测目标应用时,目标应用崩溃导致自身检测应用也崩溃的情景

效果图:


当然该工具仍然存在许多不足,也希望大家能多多指定反馈,并且提供自己的想法,项目地址:https://github.com/z0Reverse/ComponentFuzzer
希望大家多多start(apk过大放不下,如果无法科学上网的小伙伴有需要可以留言我看情况找网盘的)






















image.png (129.4 KB, 下载次数: 1)

image.png

免费评分

参与人数 8吾爱币 +14 热心值 +5 收起 理由
qtfreet00 + 7 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!
ch0222 + 1 热心回复!
zhczf + 1 + 1 我很赞同!
dyyxqy2014 + 1 + 1 我很赞同!
Psyber + 1 谢谢@Thanks!
beihai1314 + 1 + 1 我很赞同!
Xinchen86 + 1 感谢发布原创作品,吾爱破解论坛因你更精彩!
芽衣 + 2 我很赞同!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

推荐
zhangsan173 发表于 2025-3-26 23:02
大佬好,使用什么环境安装软件,Pixel 3真机Android12提示“解析软件包时出现问题”,夜神模拟器Android9 64位提示“安装文件与当前模拟器的安卓版本不匹配”,mumu模拟器Android12 64位提示“ComponentFuzzer.apk安装失败,请重新下载安装包后安装。”
沙发
may5422 发表于 2025-3-26 11:52
3#
lacui 发表于 2025-3-26 11:58
4#
宜城小站 发表于 2025-3-26 12:17
Android组件能导出
自己安装的APP也可导出吧
5#
HXlyf 发表于 2025-3-26 12:36
有谁知道这是干嘛用的
6#
Atiamo 发表于 2025-3-26 14:53
怎么使用呢,手机端的还是电脑端的
7#
fcrzh 发表于 2025-3-26 15:38
谢谢楼主分享
8#
Gccc11 发表于 2025-3-26 19:12
谢谢分享
9#
508916 发表于 2025-3-26 19:46
作者用Androidstudio吗?
10#
wanmeiyanchu 发表于 2025-3-26 20:15

谢谢分享
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2025-4-1 05:01

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表