Cycript 如何列出用某个类创建出的实例?

某个进程里面用类A创建了一个实例B,用cycript注入该进程,我应该怎么操作获得这个实例B的地址呢?

没有通用的方法,要自己测试,根据线索找到它

还找不到方法,版主是否能说一下思路?感激涕零~~~

@snakeninny

好像有点思路了,想到两方法:
1、去hook new函数,把返回值打印出来
2、用gdb在代码中,new后的r0的值打印出来

正在实验中。

没有固定的套路吧,这个实例是什么,随机性太大了,我觉得没有规律啊

在逆向进程:biometrickitd(一个daemaon),进程一开始会new一个对象(对应的类是:BiometrickKitXPCServer)

两个实验
1没hook成功
2按书上去cydia源装的gdb在我的机器上(5s,ios7.1.2)上运行,attach进程的时候报error,郁闷中~~~~

  1. 没hook成功,具体是怎么没成功?
  2. 换LLDB吧,干货区有个帖子,iOS上的gdb已经基本不能用了

1.可能new方法还不知道怎么hook,乱写了个代码,坛主莫笑,嘿嘿:
%hook BiometrickitXPCServer
-(id)new
{
NSLog(@"==================hook new============");
}
%end
日志里面报:Oct 22 20:02:28 iPhone biometrickitd[377]: MS:warning: message not found [BiometricKitXPCServer new]

2.嗯,我换LLDB搞起,多谢坛主大大