微信项目 (20)

hook思路

  1. 界面入手, 定位UI
    1. 最好的是View Debug
    2. 第一次有可能挂载失败 -> 重新运行
  2. 导入hank.cy
    1. HKCurrentVC() -> 找到当前视图
      1. NewSettingViewController
    2. 找到头文件
      1. command + t
      2. class-dump -H WeChat -o Headers/ -> 导出可执行文件的头文件
      3. 用Sublime Text打开头文件的文件夹
      4. 找 @interface WCTableViewManager
    3. 地址.dataSource -> 数据源
      1. WCTableViewManager
      2. .tableView -> 查看该管理器的tableView对象
      3. .sections -> 查看sections
    4. 判断该界面是不是我们要找的界面
      1. .backgroundColor = [UIColor redColor] -> 改背景颜色来验证
    5. 从头文件里找我们要Hook的参数
  3. 发现很多界面都有用到WCTableViewManager, 我们必须确定只有hook设置界面的
    1. choose(WCTableViewManager) -> 全局查找该对象,看看初始化了多少个

    2. 查找该对象的响应链来判断哪个是我们要找的

      1. <地址>.tableView.nextResponder.... -> 此处可以一直.nextResponder来往上查找
        image.png
    3. 图片资源可以直接拖到IPA包里

  4. %new 方法建议加上前缀 SY_......来放置以后有可能的冲突

越狱概念

通过iOS系统安全启动链漏洞,从而禁止掉信任链中负责验证的组件。拿到iOS系统最大权限ROOT权限.

iOS 安全启动链


image.png

完美越狱 & 非完美越狱

  • 完美越狱: 就是破解iOS系统漏洞之后,每次系统重启都能自动调用注入的恶意代码,达到破坏安全验证,再次获得ROOT权限。
  • 非完美越狱: 越狱系统后,并没有完全破解安全链,有部分信息或功能应用不佳;比如;关机以后必须去连接越狱软件来引导开机;或者重启会导致越狱的失效;这样的越狱称为“不完美越狱”。

两大主流越狱工具:

//这里本来是MarkDown语法, 被拒了, 说是不能够打开外部链接,惹不起惹不起
[uncOver](https://unc0ver.dev/)
[Odyssey需要断网](https://theodyssey.dev/)
  • 需要安装的插件 OpenSSH

国内软件源

image.png

还有一个比较重要的软件源如下: 安装OpenSSH需要添加

//这里本来是MarkDown语法, 被拒了, 说是不能够打开外部链接,惹不起惹不起
https://apt.bingner.com/

你可能感兴趣的:(微信项目 (20))