iOS 应用砸壳
什么是壳在软件保护和安全领域,“壳”指的是利用特殊的算法对应用程序的二进制文件进行加密或包装的保护层,通常被称为 “加壳”。壳的作用是保护应用程序的代码,防止未经授权的访问、篡改和逆向工程。壳通常会在应用程序启动时将其解密到内存中,以便正常运行。 苹果会在应用发布到 App Store 时,对应用程序进行 DRM(数字版权管理)保护,这种保护即一种壳,目的是防止非法分发。所以从 App...
微信抢红包插件
本篇文章将介绍如何从 0 到 1 一步步实现微信抢红包插件功能,需要用到 一部能越狱的 iPhone,作者使用的 iOS12.5.7 的 5s。 推荐使用 iOS15 之前的设备,因为 iOS15 SSV 的出现诞生了一种新的越狱方案 rootless。导致很多以前能运行的越狱插件,工具都无法在 iOS15 及后续的系统上正常运行。因为这些工具大多都还没有针对 rootless...
iOS逆向与安全开篇介绍
学习 iOS 逆向开发的前提 有一定的正向开发经验(最起码对 iOS 系统的 UIKit 框架有一定的了解) 一台越狱的 iOS 设备(推荐至少是 64 位架构,iPhone 是从 iPhone 5s 开始,iPad 是从 iPad Air 和 iPad mini 2 开始) 一台 Mac 电脑,理论上来说 Linux 或 Windows...
2023年10月了黑苹果还香吗?性价比超高黑苹果台式机搭配&黑苹果安装教程
缘由最近一段时间对 iOS 逆向开发进行了一定的研究,之前也更新过一段时间的相关文章(后续由于搬家,不幸感染病毒🦠等一些原因断更了个把月),在学习和探索过程中,非常明显的感受到逆向分析对电脑的性能要求很高尤其是 CPU,在使用逆向分析工具 ghidra,hopper 等程序对 MachO 文件进行分析的时候,常常一分析就要等上大几个小时,而且我使用了 n 年的 MacBook Pro...
Reveal
之前已经介绍过 Cycript 这个越狱动态分析的神器,Cycript 是纯命令式的分析工具,对于大多数人/普通开发者来说,这种方式还是显得太极客了。还是图形化的界面更容易接受和使用,所以今天介绍的就是这样一款神器 Reveal 。很多 iOS 的正向开发人员会感觉到困惑,说我用 Xcode 的 view debugger 用的挺好的啊。还去了解这个 Reveal...
Cycript
什么是 CycriptCycript 是一种用于 iOS 操作系统的脚本语言,同时也是该语言的解释器(一般来说不需要编译的脚本语言都会提供它对应的解释器,比如 Python、JavaScript、Ruby、PHP 等),Cycript 是 JavaScript,Objective-C++ 等语言的混合物这意味着它能理解 JavaScript,Objective-C++ 甚至是...
OpenSSH
简介平时在使用 Mac 的过程中,经常会使用终端输入命令来执行一些操作。在越狱开发的过程中,同样需要在 iOS 系统上输入一些命令来执行一些任务。那么如何才能在 iOS 系统上输入命令呢,在 iOS 上安装一个终端命令行工具,然后在 iPhone 那小小的屏幕上用触摸屏输入命令吗?虽然说理论上和实际上都是可行的,但是通过手指触摸屏幕来输入命令的方式效率比较低,也不是很方便。这里还是推荐在...
LLVM之clang插件开发
最终实现的效果在 Xcode 中使用自己编译的 clang 编译自己的源码,并给出符合自己风格或者公司所需的代码规范的提示!还可以给出修复建议 在动手开发之前,先了解一下相关理论知识,特别强调 clang 插件开发并不是一件很容易的事情,需要有一定的知识储备,你需要: 对 C++ 有一定的了解 对编译原理有一定的了解 不想了解,只想直接动手开发 clang 插件的可以直接跳到...
Calendar 和 Reminders 编程指南
最近的项目需要用到 EventKit 来实现,于是在官网找到了这篇文章,虽然属于老文档了,但是对于需要接入 EventKit 的人来说还是有必要了解一下的。最新的文档也只是在这个基础上做了些更新,对于英语好的读者,完全可以直接看 官网介绍就好了,我这里是对官方文档的一遍翻译,再加上自己实践的一点点内容。 介绍 Calendars 和 RemindersEventKit...
8天让iOS开发者上手Flutter之八
介绍四种 Flutter Project先介绍一下这四个的差别和使用的场景。 Flutter App如果是想要使用 flutter 开发一个新的项目,那么就选择 Flutter App。就像我们之前的 wechat_demo Flutter Module但是很多时候我们目前手上的原生 APP 可能会很庞大,不是随便就可以重新使用 flutter 重新再写一遍的。但是又想在现有的 APP...