iOS 逆向学习

class-dump : 主要作用是从可执行文件中导出APP头文件中的内容,根据这些头文件能够大致分析APP的结构和内容

     安装:

         下载地址:http://stevenygard.com/projects/class-dump/

         下载之后把dmg文件中的class-dump 文件复制到/usr/bin (command+shift+G  /usr/local)目录下(此方法由于权限问题无法使用,可以使用以下方法)

         安装方法:https://www.jianshu.com/p/025fa775f3a6

         1、首先打开Terminal,输入mkdir ~/bin,在当前用户根目录下创建一个bin目录。

         2、把下载下来的 dmg 打开,复制文件里面的class-dump到创建的bin目录下。赋予其可执行权限:

            chmod +x ~/bin/class-dump

         3、打开bash_profile文件配置环境变量:

            vim ~/.bash_profile

            **按下 i 键进入编辑状态,在最下方加一行 **

            export PATH=$HOME/bin/:$PATH

            按下esc键,再按shift+: 输入 wq进行保存退出编辑

         4、在Terminal中执行source ~/.bash_profile

         5、测试是否改变成功

     使用:

         class-dump -H /xxx/xxx.app -o /xxx/test

         /xxx/xxx.app 是计算器app的路径

         /xxxx/test   是存放dump出来头文件的文件夹路径

openSSH链接手机的两种方式:

         通过WiFi 链接iOS 越狱设备

            1、越狱iPhone 使用Cydia 安装openSSH,保证手机和Mac 在同一网络环境下

            2、建立链接 假如iPhone的ip 地址是:192.168.00.00

             ssh roor@192.168.00.00

            越狱手机默认链接密码:alpine

            输入cycript 如果命令行显示 cy# 则表明安装成功(control+d退出cycript)

            ctrl +D 断开链接

         通过USB 建立链接:

            1、首先下载usbmuxd-1.0.8.tar(https://upyun.assets.chenpeng.info/wordpress_cp/uploads/2013/03/usbmuxd-1.0.8.tar.gz)

            解压之后cp 到python-client 文件夹下

            2、命令行输入:python tcprelay.py -t 22:2222

            3、屏幕显示:Forwarding local port 2222 to remote port 22(成功,注意此时不要关闭命令窗口)

            4、重新打开一个命令窗口输入:ssh root@localhost -p 2222

Reveal 分析第三方APP UI页面结构:

     1、手机需要越狱 (越狱可以使用  PP助手 盘古 太极等)

     2、越狱后需要使用Cydia 安装两个软件: OpenSSH  和 Cydia Substrate (OpenSSH 是一个SSH链接传输工具,只有安装了Cydia Substrate 之后才会有MobileSubstrate目录,MobileSubstrate 是一个公有库,用来动态替换内存中的代码,数据等。)

     3、将libReveal.dylib 上传到越狱设备的/Library/MobileSubstrate/DynamicLibraries目录下

        1、保证手机和电脑在同一个网络环境下,通过SSH传输文件

        2、打开终端输入:ssh root@iOS设备上的IP地址,然后回车,默认密码是alpine,如果出现root#则表示链接成功

        3、cd /Library/MobileSubstrate/DynamicLibraries  验证Cydia Substrate 是否安装成功。即使有的提示No such file or directory 可以通过ls -l /Library 查看,如果有RHRevealLoader也表示安装成功

        4、scp /Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/libReveal.dylib root@192.168.18.184:/Library/MobileSubstrate/DynamicLibraries 上传文件到设备中

         (/Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/libReveal.dylib 路径可以通过以下方法获取,打开Reveal ->help -> Show             Reveal Library in Finder -> iOS Library,自从Reveal更新到version 2以后,就没有dylib库了,都是RevealServer.framework.

            scp /Applications/Reveal.app/Contents/SharedSupport/iOS-Libraries/RevealServer.framework/RevealServer             root@192.168.18.184:/Library/MobileSubstrate/DynamicLibraries )

        5、在设置内找到Reveal->Enabled Applications ->选择需要检测的APP即可,连接上设备打开对应的APP就可以看到想要的效果啦。

     

    Cydia 中需要安装的插件:

     OpenSSH :  一个允许其他终端远程访问当前设备的插件,在cydia下载即可

     Apple File Conduit 2:  一个确保越狱插件正常运行的补丁,在cydia下载即可

     Cycript:   Cycript是一款由saurik推出的脚本语言,在逆向工程中可以帮助我们测试App。可直接在越狱设备中用Cydia安装

     RevealLoader:  RevealLoader帮助我们通过Reveal来偷窥别人的应用


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值