0%

注意

  • 此文仅限于技术交流,请不要做违法的事情。对于那些居心叵测的人根据此文造成违法的事情与本人无关。此文章不得转载!!!
  • 关键图片信息已打码,关键代码信息已用XXOO替代。如果APP方需要删除,请发邮件zhulongfei28@gmail.com,谢谢。
  • 这并不是基础教程,需要一定iOS逆向经验的人才能看懂。

准备

  • ida反汇编mach-o文件
  • class-dump头文件
  • Reveal查看APP层级视图
  • Theos编写tweak插件
  • Charles+SSL Kill Switch 2https抓包
  • Frida Hook框架
阅读全文 »

简介

  • 环境
    • macOS端:Theos、Xcode11.3、macOS10.14.6
    • 客户端:iPhone6、iOS11、unc0ver越狱
    • 服务端:Centos8、Python3.8
  • iOS正向开发中集成支付宝可以参照官方文档
  • iOS逆向开发参照此文

Theos集成

  • 下载iOS_SDK,解压后把AlipaySDK.frameworkAlipaySDK.bundle放入Tweak根目录
  • 在Makefile中添加支付宝依赖和framework
    1
    2
    TweakName_FRAMEWORKS += WebKit SystemConfiguration CoreTelephony QuartzCore CoreText CoreGraphics CoreMotion CFNetwork
    TweakName_LDFLAGS += -lz -lc++ AlipaySDK.framework/AlipaySDK
  • 使用支付宝功能
    1
    2
    3
    4
    5
    #import "AlipaySDK.framework/Headers/AlipaySDK.h"

    [[%c(AlipaySDK) defaultService] payOrder:orderString fromScheme:@"app://" callback:^(NSDictionary *resultDic) {

    }];
阅读全文 »

前言

  • 目的:如果iPhone没有插入SIM卡,每次重启或注销后,重新进入桌面都会弹出如下框。每次点击,弹框才会消除,才能正常地使用iPhone,这样的体验也太差了。
  • 环境:iPhone6、iOS11、unc0ver越狱
  • 工具:
    • Cycript可以用来探索、修改、调试正在运行的iOS APP
    • IDA静态分析二进制文件
    • LLDB与DebugServer动态调试
    • Theos插件开发
阅读全文 »

前言

  • macOS自带的终端超级难用,这才有了iTerm2。iTerm2提供了很多高级设置,让我们无忧无虑地畅游在命令的海洋里。
  • iTerm2 + oh-my-zsh + Go2Shell 配合使用天下无敌,打造最完美的终端,提高你的工作效率。

iTerm2

  • https://www.iterm2.com/下载进行安装
  • 设置iTerm2为默认终端iTerm2 -> Make iTerm2 Default Term
  • 打开多个窗口command + t
    阅读全文 »

注意

  • 此文仅限于技术交流,请不要做违法的事情。对于那些居心叵测的人根据此文造成违法的事情与本人无关。此文章不得转载!!!
  • 关键图片信息已打码,关键代码信息已用XXOO替代。如果APP方需要删除,请发邮件zhulongfei28@gmail.com,谢谢。
  • 这并不是基础教程,需要一定iOS逆向经验的人才能看懂。

前序

工具

  • SSL Kill Switch 2 抓取https包
  • Reveal 查看APP视图结构
  • class-dump 导出头文件
  • IDA 反汇编Mach-O文件
  • Charles APP抓包
  • Frida Hook框架
阅读全文 »

注意事项

  • 测试环境
    • macOS: 10.14.6
    • iPhoneOS: iOS11.0、iOS12.0、
    • iPhone机型:两个iPhone6
    • 越狱工具:unc0ver3.6.2
    • 没有测试:iOS13和iOS10,也许可以。
  • 关于链接
  • 实现目标:点击按钮执行killall -9 SpringBoard,注销SpringBoard
阅读全文 »

daemon包括三个部分:一个可执行的二进制文件、一个plist配置文件、一个二进制文件授权文件

注意事项

  • 测试环境
    • macOS: 10.14.6
    • iPhoneOS: iOS11.0和iOS12.0
    • iPhone机型:两个iPhone6
    • 越狱工具:unc0ver3.6.2

可执行二进制文件配置

  • 下载最新版theos,利用theos来创建一个可执行二进制文件
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    $ nic.pl
    NIC 2.0 - New Instance Creator
    ------------------------------
    [1.] iphone/activator_event
    [2.] iphone/application_modern
    [3.] iphone/application_swift
    [4.] iphone/cydget
    [5.] iphone/flipswitch_switch
    [6.] iphone/framework
    [7.] iphone/ios7_notification_center_widget
    [8.] iphone/library
    [9.] iphone/notification_center_widget
    [10.] iphone/preference_bundle_modern
    [11.] iphone/tool
    [12.] iphone/tool_swift
    [13.] iphone/tweak
    [14.] iphone/xpc_service
    Choose a Template (required): 11
    Project Name (required): k9sd
    Package Name [com.yourcompany.k9sd]: com.slfh.k9sd
    Author/Maintainer Name [XX]: slfh
    Instantiating iphone/tool in k9sd/...
    Done
阅读全文 »

unc0ver3.6.2越狱,使用cyrun附加App,进入cycrip后所有操作跟之前一样

  • 通过Cydia安装New Curses,readline,adv-cmds

  • 通过Cydia安装wget,主要为了在iPhone上可以下载deb文件

  • 以root用户登录到iPhone上,分别下载

    1
    2
    3
    wget http://apt.saurik.com/debs/cycript_0.9.594_iphoneos-arm.deb
    wget http://www.tateu.net/repo/files/net.tateu.cycriptlistenertweak_1.0.0_iphoneos-arm.deb
    wget http://www.tateu.net/repo/files/net.tateu.cyrun_1.0.5_iphoneos-arm.deb
    阅读全文 »

如果使用其它越狱工具请清除越狱环境,然后使用Undecimus3.0.0以上版本越狱。