-
-
[求助]【xposed】要怎么“虚构”一个对象呢?
-
发表于:
2017-5-29 02:11
3739
-
[求助]【xposed】要怎么“虚构”一个对象呢?
初次接触Xposed框架,在使用xposed方法过程中,我hook到了一个 Sensor 的一个返回值。 Sensor即是传感器的一个类。 当hook到一个不存在这个传感器的时候,它返回的Sensor显然是null的。
现在我想手动自己 new 一个 Sensor 去伪造出这个传感器、但是Sensor的构造函数是私有的不能访问,只能通过 SendsorManager类下的getDefaultSensor方法获得,在这种情况下该如何解决呢
XposedHelpers.findAndHookMethod("android.hardware.SensorManager", loadPackageParam.classLoader, "getDefaultSensor",int.class, new XC_MethodHook() {
@Override protected void afterHookedMethod(MethodHookParam param) throws Throwable {
Sensor s = new Sensor();//无法这样手动构造传感器类,这样就没法伪装成是存在的了
int type = (int)param.args[0];
if(type == Sensor.TYPE_STEP_DETECTOR)
{Log.e("***TAG***","步行 - 传感器");}
if(type == Sensor.TYPE_GRAVITY)
{Log.e("***TAG***","重力 - 传感器");}
if(type == Sensor.TYPE_ORIENTATION)
{Log.e("***TAG***","方向 - 传感器");}
if(type == Sensor.TYPE_ACCELEROMETER)
{Log.e("***TAG***","加速度(重力) - 传感器");}
if(type == Sensor.TYPE_MAGNETIC_FIELD)
{Log.e("***TAG***","磁场 - 传感器");}
if(type == Sensor.TYPE_PROXIMITY)
{Log.e("***TAG***","距离(临近性) - 传感器");}
if(type == Sensor.TYPE_GYROSCOPE)
{Log.e("***TAG***","陀螺仪 - 传感器");}
if(type == Sensor.TYPE_LIGHT)
{Log.e("***TAG***","光线 - 传感器");}
}
});
[课程]Linux pwn 探索篇!