iOS app 逆向过程(持续更新完善)

一、获取待逆向的app

     1、用cyder2直接从源里下载,适合逆向越狱开发的软件。

     2、从pp助手中下载,pp助手中有越狱应用和正版应用。越狱应用直接是已经脱壳的,未越狱应用还需要执行砸壳

 

二、获取待逆向的二进制文件

      1、从源里下载的deb文件,用dpkg-deb -x ./逆向软件.deb ./tmp,在tmp目录下得到Applications,Libarary,Var三个目录,在Applications下有.app文件,右键-显示包内容,在里面就能查看到二进制文件,也就是待逆向的二进制文件。

      2、从pp助手下载的ipa文件,直接解压缩???

 

三、定位需要修改的位置

     1、此步骤需要用到多个工具,主要如下:reveal,ida,hopper,class-dump,cycript,debugserver,lldb。具体工具介绍,请看本博客逆向工具,持续更行中。

     2、用class-dump导出.app文件的头文件,然后可以拖入到xcode中,根据ios开发的经验大体猜出是哪个类和方法。

     3、用reveal、cycript查看消息提示或软件界面相应的类,到导出的头文件中去找。

     4、通过2,3两步,再到ida或是hopper中去找具体位置。也可以在ida或是hopper中直接用字符串搜索。

     5、debugserver,lldb可以对程序进行动态调试。

     6、通常逆向一个程序需要上面几种方法结合使用,怎么方便有效就怎么来。

posted @ 2017-07-19 12:33  iamonion  阅读(1052)  评论(0编辑  收藏  举报