-
-
[原创] android 系统服务的查找
-
发表于:
2017-9-18 16:04
2996
-
service 源码
想看一下 android /system/bin/service 这个程序的源码!可是不知道对应的android 源码存放在哪个文件夹下面!
(@疯子)已经为我解答!
特定的一个系统服务查找
最近要逆向一个Android的一个应用,发现在一个很尴尬的问题,查找一个服务的实现一直查找不到。
使用
adb shell service list
可以看到我想要的那个服务名字和接口
因为接口使用的是上面这个ServiceManager.getService来得到的一个具体服务的接口,再使用Binder通信来实现具体的功能调用。可是这个服务我查找到了系统下的 /system/framework/services.jar 相关的代码 ,还有/system/lib下所有.so 文件,查找关键词是上面getService里面name 。都没有查到 addService的实现在哪里。
查阅相关资料,android 自定义服务的实现,我的理解系统服务的实现代码应该也就在/system/framework 和 /system/lib 里面
请教各位大牛能不能一个查找的思路!都不知道从何下手了!找到这个服务的实现代码在哪里!
自己找到了一个解决方法
利用Xposed 模块的这个接口 IXposedHookZygoteInit 对 addService 进行Hook 通过传入到的名称来和对应该的包名可以查找到代码实现的包在哪个模块里面!
在IXposedHookInitPackageResources 这里进行Hook应该也是可以!
@Override
public void initZygote(IXposedHookZygoteInit.StartupParam startupParam) throws Throwable {
try{
Class ServiceManager = XposedHelpers.findClass("android.os.ServiceManager", Process.class.getClassLoader());
XposedBridge.hookAllMethods(ServiceManager, "addService", new XC_MethodHook() {
@Override
protected void beforeHookedMethod(MethodHookParam param) throws Throwable {
super.beforeHookedMethod(param);
LogUtil.d(TAG, "addService 被Hook:"+ param.args[0]);
}
});
}
catch (Throwable e)
{
LogUtil.e(TAG, e.getLocalizedMessage());
}
}
上面就可得到的结果
...
09-19 21:20:18.638 1610-1610/system_process D/Bawei-bawei.MainXposed: addService 被Hook:launcherapps
09-19 21:20:18.638 1610-1610/system_process D/Bawei-bawei.MainXposed: addService 被Hook:launcherapps
09-19 21:20:18.638 1610-1610/system_process D/Bawei-bawei.MainXposed: addService 被Hook:launcherapps
09-19 21:20:18.643 1610-1610/system_process D/Bawei-bawei.MainXposed: addService 被Hook:media_projection
09-19 21:20:18.643 1610-1610/system_process D/Bawei-bawei.MainXposed: addService 被Hook:media_projection
09-19 21:20:18.643 1610-1610/system_process D/Bawei-bawei.MainXposed: addService 被Hook:media_projection
09-19 21:20:18.643 1610-1610/system_process D/Bawei-bawei.MainXposed: addService 被Hook:media_projection
09-19 21:20:18.643 1610-1610/system_process D/Bawei-bawei.MainXposed: addService 被Hook:media_projection
09-19 21:20:18.644 1610-1610/system_process D/Bawei-bawei.MainXposed: addService 被Hook:media_projection
09-19 21:20:39.344 4358-4358/com.android.phone D/Bawei-bawei.MainXposed: addService 被Hook:ims
09-19 21:20:39.345 4358-4358/com.android.phone D/Bawei-bawei.MainXposed: addService 被Hook:ims
09-19 21:20:39.345 4358-4358/com.android.phone D/Bawei-bawei.MainXposed: addService 被Hook:ims
...
[培训]内核驱动高级班,冲击BAT一流互联网大厂工作,每周日13:00-18:00直播授课