Android中Binder安全性和还原逆向中被混淆的AIDL接口

本文探讨了Android应用中通过Service定义的AIDL接口如何通过Binder提供API,详细介绍了逆向过程,包括查看b类和j对象,修复混淆的AIDL接口,以及AIDL接口的潜在安全风险和重利用可能性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、逆向发现某APP通过某Service定义AIDL接口,通过Binder对外提供可以操作的API:

package com.***.plugin;

import android.app.Service;
import android.content.Context;
import android.content.Intent;
import android.os.IBinder;

public class PluginInterfaceService extends Service {
private final b bZC;

public PluginInterfaceService() {
super();
this.bZC = new j(this);
}

private String TD() {
return w.fT(l.getCUID(((Context)this)));
}

private String TE() {
return w.chiperEncrypt.AESB64Encrypt(this.TD(), "UTF-8");
}

private String TF() {
return w.bOG.getUid();
}

private String TG() {
return aj.bPE[1];
}

private String TH() {
String v0 = "keyboard";
if(w.bOe.getFlag(2494)) {
v0 = "voice";
}

return v0;
}

public IBinder onBind(Intent arg2) {
return this.bZC;
}

}

 

通过binderservice启动该PluginInterfaceService时,可以获得该b类型的IBinder接口的对象j;

2、分别查看b类和j对象;

package com.***.plugin;

import android.os.Binder;
import android.os.IBinder;
import android.os.IInterface;
import android.os.Parcel;

public abstract class b extends Binder i

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值