ios逆向笔记之Logos语法

2020-06-10  本文已影响0人  第x个等于4乘x的阶乘

ios逆向笔记之Logos语法

使用的是CydiaSubstruct

 1.非越狱机是通过动态库的注入

 2.越狱是直接导入到系统里面

oc的hook利用的是运行时Runtime 

c函数的hook利用的是fishHook

logos的语法 

MSHookIvar(self,"123")//拿到某个方法的某个成员变量

%C(xxxx) 拿到具体某个类

%orig 保持函数原来的调用

%new 添加新的方法

在调用类方法时候 %c(类)

拿到某个类的成员变量

  NSString *key=nil;

       for(int i = 0;i < numIvars;i++){

           Ivar thisIvar = vars[i];

           key =[NSString stringWithUTF8String:ivar_getName(thisIvar)];  //获取成员变量的名字

           NSLog(@"variable name :%@",key);

           key =[NSString stringWithUTF8String:ivar_getTypeEncoding(thisIvar)];//获取成员变量的数据类型

           NSLog(@"variable type :%@",key);

       }

       free(vars);

    Method *meth = class_copyMethodList(NSClassFromString(@"UIView"),&numIvars);

     //Method *meth = class_copyMethodList([UIView class],&numIvars);

     for(int i = 0;i < numIvars;i++){

         Method thisIvar = meth[i];

         SEL sel = method_getName(thisIvar);

         const char *name = sel_getName(sel);

         NSLog(@"zp method :%s",name);

     }

     free(meth);

     WRUserProfileDataSource *placeholderLabel =[self valueForKeyPath:@"_profileDataSource"];

    WRVIPCardSummary *vipCardSummaryModel =[placeholderLabel valueForKeyPath:@"_vipCardSummary"];

//拿到具体哪个成员变量

Ivar ivar =class_getInstanceVariable(objc_getClass("123"),"");;

上一篇下一篇

猜你喜欢

热点阅读