自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Airths 的博客

Thinking Codeing Sharing

  • 博客(79)
  • 资源 (22)
  • 收藏
  • 关注

原创 FLEX(Flipboard Explorer)简介

目录FLEX给予你自己强大的调试能力(Give Yourself Debugging Superpowers)用法(Usage)功能示例(Feature Examples)安装(Installation)避免将 FLEX 编译到 Release 版本(Excluding FLEX from Release (App Store) Builds)注意事项(Additional Notes)鸣谢(Thanks & Credits)贡献(Contributing)待做(TODO)FLEXFLEX(Fl

2022-03-16 16:59:03 3684

原创 Cycript(五):安装与使用

目录Cycript 的安装在非越狱环境中使用 Cycript(通过手动配置)在非越狱环境中使用 Cycript(通过 MonkeyDev 自动配置)在越狱环境中使用 Cycript导入外部的 Cycript 脚本补充:Cycript 和 LLDB 中经常用到的 Objective-C 私有方法补充:其他细节Cycript 的安装① 下载与安装从 Cycript 官网 下载 Cycript SDK,并将其放到 /opt 目录下。Cycript SDK 的目录结构如下所示:/opt/cycript_

2022-03-14 23:37:11 3727

原创 Cycript(四):常用脚本

目录MDCycript/MS.cyMDCycript/md.cymjcript/mjcript.cylibcycript.cycycript-utils/utils.cyMDCycript/MS.cygit 地址:https://github.com/AloneMonkey/MDCycript/blob/master/MS.cy(function(ms) { // 获取存储 libcycript.dylib 的目录的路径 let GetLibraryPath = function() {

2022-03-12 20:22:18 5039

原创 Cycript(三):使用技巧

目录获取对象(Getting objects)获取成员变量(Getting ivars)获取 BundleID(Getting bundle identifier)获取方法(Getting methods)列出所有子类(List all subclasses)加载框架(Load frameworks)包含其他 Cycript 文件(Include other Cycript files)使用 NSLog(Using NSLog)使用 CGGeometry 函数(Using CGGeometry functi

2022-03-10 13:58:26 2315

原创 Cycript(二):使用手册

目录常见问题(General Questions)Cycript 控制台(Cycript Console)JavaScript 解析器(JavaScript Parser)CommonJS 模块(CommonJS Modules)C 类型和指针(C Types and Pointers)C 结构体和数组(C Structs and Arrays)Objective-C 基础(Objective-C Basics)Objective-C 高级(Objective-C Advanced)Java 初始预览版(J

2022-03-09 21:26:22 1660

原创 Cycript(一):基础简介

目录Cycript 简介Cycript 附加的特性其他Cycript 简介什么是 Cycript ?Cycript 允许开发者通过具有语法高亮显示和代码补全功能的交互式控制台,使用 Objective-C++ 和 JavaScript 语法的混合体,来探索和修改 iOS 或 macOS 上正在运行的应用程序(Cycript 还可以在 Android 和 Linux 上独立运行,并提供对 Java 的访问,但是不能注入进程)可以将 Cycript 看成是一个理解 Objective-C 语法的 J

2022-03-08 19:55:16 1135

原创 LLDB(六):常用命令举例

目录创建符号断点关于 Xcode 底部的调试区域在使用 expression 命令执行方法时,需要将发送的消息强制转换为该方法的返回值类型关于 p 和 po 的输出格式通过 expression 命令读取、设置、操作寄存器的值expression 命令只能在当前线程中执行表达式,expression 命令不能跨线程执行表达式获取 UIButton 的 target 和 action关于渲染服务(backboardd)获取指定镜像当前的 ASLR 偏移量使用 watchpoint 命令监视对指定对象的指定成员

2022-03-07 22:53:55 1900

原创 LLDB(五):DerekSelander-LLDB 的安装与使用

目录DerekSelander-LLDB 简介DerekSelander-LLDB 命令详解__generate_scriptbiofcopyzdclassddddpdumpenviapiblogincludeinfojtoolkeychainlbrlookuplsofmsloverlaydbgpframeworkpmodulesbtsclasssearchsectionsnoopiesystobjectivecxrefyoinkDerekSelander-LLDB 简介什么是 DerekSelan

2022-03-05 22:17:35 828

原创 LLDB(四):Chisel 的安装与使用

目录Chisel 简介Chisel 命令详解alamborderalamunborderbdisablebenablebinsidebmessagebordercaflushcopydcomponentsdismissfa11yfindinstancesflickerfvfvcheapfromhidemaskmwarningpa11ypa11yipactionspaltracepanimpbcopypblockpbundlepathpcellspclasspcomponentspcurlpdatapdocs

2022-03-04 20:36:04 1520

原创 LLDB(三):通用参数类型详解

目录本文所使用的 LLDB 版本addressaddress-expressionalias-namearchboolbooleanbreakpoint-idbreakpoint-id-listbreakpoint-namebreakpoint-name-listbreakpt-idbreakpt-id-listbyte-sizeclass-namecmd-namecmd-optionscolumncommandcommand-optionsconnect-urlcountdescription-verbo

2022-03-03 16:42:22 1131

原创 LLDB(二):基础命令详解

目录本文所使用的 LLDB 版本_regexp-attach_regexp-break_regexp-bt_regexp-display_regexp-down_regexp-env_regexp-jump_regexp-list_regexp-tbreak_regexp-undisplay_regexp-upaproposbreakpointbreakpoint clearbreakpoint commandbreakpoint command addbreakpoint command deletebr

2022-03-02 23:54:22 2832

原创 LLDB(一):入门指南

目录LLDB 简介LLDB 入门帮助命令与搜索命令:help 与 apropos基础命令总览LLDB 简介什么是 LLDB?LLDB(Low Level Debugger)是新一代高性能调试器,其是一组可重用组件的集合,这些组件大多是 LLVM 项目中的现有库,例如:Clang 表达式解析器,LLVM 反汇编程序,等等LLDB 是 macOS 上 Xcode 中的默认调试器,Xcode 主窗口底部的控制台便是开发者与 LLDB 交互的区域。LLDB 允许开发者在程序运行的特定时刻暂停进程,查看变

2022-03-01 22:21:18 7910

原创 MonkeyDev(二):补充

目录MonkeyDev 安装过程中的一些问题OCMethodTrace 官方文档在编译时,MonkeyDev 中的 Logos 代码会转换成 Objective-C++ 代码MonkeyDev 安装过程中的一些问题① 在按照官方文档,远程执行安装脚本 md-install 时:sudo /bin/sh -c "$(curl -fsSL https://raw.githubusercontent.com/AloneMonkey/MonkeyDev/master/bin/md-install)"报

2021-12-08 13:55:55 931

原创 MonkeyDev(一):官方文档

目录前言Home(主页)安装开始使用配置说明非越狱 App 集成CocoaPods非越狱插件 PodMac 插件越狱插件 Xcode 调试更新日志Q & A前言今天(2021.11.03)在查 MonkeyDev GitHub Wiki 的时候,发现其图片资源全部加载不出来,影响阅读因此,根据 MonkeyDev GitHub Wiki 对其官方文档进行了整理,补全了图片资源,供自己和他人参考原文地址:https://github.com/AloneMonkey/MonkeyDev/wiki

2021-12-08 13:49:50 3768

原创 CaptainHook 源码分析(七):其他宏接口

目录CHOptimizedMethodCHOptimizedClassMethod用于调试和日志的相关宏接口其他宏接口CHOptimizedMethod宏接口 CHOptimizedMethod 用于针对对象方法生成对宏接口 CHMethod_super_、CHMethod_self_、CHMethod_new_ 的调用,其定义为:// @param.count 对象方法的参数个数// @param.args 可变的参数列表// 注意:宏接口 CHOptimizedMethod 不能生成对宏

2021-12-08 13:47:18 575 1

原创 CaptainHook 源码分析(六):动态地创建类 && 获取与设置成员变量的值 && 动态地添加属性

目录动态地创建类(CHRegisterClass)向动态创建的类中添加成员变量(CHAddIvar)获取与设置实例对象中成员变量的值(CHIvar)动态地添加属性(CHPropertyRetainNonatomic + CHHookProperty)动态地添加属性(CHPrimitiveProperty + CHHookProperty)各种动态添加属性的宏接口的区别与联系访问动态添加的属性动态地创建类(CHRegisterClass)在 CaptainHook.h 中,宏接口 CHRegisterCl

2021-12-08 13:36:48 680

原创 CaptainHook 源码分析(五):Hook 对象方法 && 类方法

目录Hook 对象方法(CHMethod + CHHook)Hook 对象方法(CHDeclareMethod)CHMethod 与 CHDeclareMethod 的区别Hook 类方法(CHClassMethod + CHClassHook)Hook 类方法(CHDeclareClassMethod)CHClassMethod 与 CHDeclareClassMethod 的区别调用被 Hook 的方法的原始实现(CHSuper)Hook 对象方法(CHMethod + CHHook)在 Cap

2021-12-08 13:33:56 1208

原创 CaptainHook 源码分析(四):交换 Objective-C 方法实现的核心代码(使用 Cydia Substrate)

目录计算方法的类型编码(CHDeclareSig0_ ~ CHDeclareSig9_)生成交换 Objective-C 方法实现的核心代码(CHMethod_)生成交换 Objective-C 方法实现的核心代码(CHMethod_super_)生成交换 Objective-C 方法实现的核心代码(CHMethod_self_)宏接口:CHMethod_ 、CHMethod_super_、CHMethod_self_ 的区别生成添加 Objective-C 方法的核心代码(CHMethod_new_)计

2021-12-08 13:28:16 336

原创 CaptainHook 源码分析(三):交换 Objective-C 方法实现的核心代码(使用 RunTime API)

目录计算方法的类型编码(CHDeclareSig0_ ~ CHDeclareSig9_)生成交换 Objective-C 方法实现的核心代码(CHMethod_)生成交换 Objective-C 方法实现的核心代码(CHMethod_super_)生成交换 Objective-C 方法实现的核心代码(CHMethod_self_)宏接口:CHMethod_ 、CHMethod_super_、CHMethod_self_ 的区别生成添加 Objective-C 方法的核心代码(CHMethod_new_)计

2021-12-08 13:16:39 500

原创 CaptainHook 源码分析(二):构造函数 && 类的声明 && 类的加载

目录一个最简单的 CaptainHook 代码生成构造函数(CHConstructor)生成类的声明(CHDeclareClass)生成类的加载(CHLoadLateClass、CHLoadClass)其他常用的宏接口(CHClass、CHMetaClass、CHSuperClass、CHAlloc、CHSharedInstance、CHIsClass、CHRespondsTo)一个最简单的 CaptainHook 代码在 .m 文件中单纯地导入 CaptainHook.h 头文件:#import "

2021-12-08 13:15:53 651

原创 CaptainHook 源码分析(一):前导知识

目录CaptainHook 简介宏定义相关知识的补充LLVM 相关知识的补充源码分析前的准备:自定义 HcgPerson 类CaptainHook 简介什么是 CaptainHook?CaptainHook 是 Objective-C 2.0 运行时的通用 Hook 框架,旨在简化对 Objective-C 方法的 HookCaptainHook 的全部源码其实只是一个拥有近 760 行代码的 CaptainHook.h 头文件。(CaptainHook.h 头文件)通过使用(大量的宏定义)将(

2021-12-08 13:14:50 1061

原创 Theos(七):常见问题

目录Theos 故障排除(Theos/Troubleshooting)空的 $THEOS 环境变量或者损坏的符号链接(Empty $THEOS or corrupt symlink)缺少 SDK(Missing SDK)SDK 体积过小(Small SDK)默认设置(Default settings)缺少 Substrate 头文件(Missing Substrate header)缺少 Substrate 符号(Missing Substrate symbols)缺少 Substrate 动态库(Miss

2021-11-03 10:59:48 1284

原创 Theos(六):官方文档

目录Home(主页)Installation(安装)Installation iOS(iOS 平台上的安装)Installation macOS(macOS 平台上的安装)Installation Linux(Linux 平台上的安装)Installation Windows(Windows 平台上的安装)Upgrading from legacy Theos(从 legacy 版的 Theos 升级)Features(特性)NICSwiftTechnical(技术实现)Structure(目录结构)Hel

2021-11-03 10:46:06 1874

原创 Theos(五):.deb 与 dm.pl

目录Linux 免费发行版本:Ubuntu、CentOS、Debian.deb 文件结构dpkg 与 APTCydia 安装和卸载 .deb 包的过程Theos 的 dm.pl 脚本Linux 免费发行版本:Ubuntu、CentOS、DebianLinux 有非常多的发行版本,从性质上划分,可以分为:由商业公司维护的商业版本由开源社区维护的免费版本商业版本以 RedHat 为代表,免费版本以 Debian 为代表。绝大多数 VPS(Virtual Private Server,虚拟专用服务器

2021-11-03 10:45:05 282

原创 Theos(四):Logos 与 logify.pl

目录Logos 语法简介Block LevelTop LevelFunction LevelLogos 补充关于 logify.plLogos 语法简介Logos 语法简介Logos 是 Theos 开发套件中的一个组件,它允许使用一组特殊的预处理器指令,轻松且清晰地编写 hook 代码Logos 提供的语法极大地简化了 MobileSubstrate 插件(即 Tweak)的开发。MobileSubstrate 插件可以在整个操作系统中 hook 其他方法。在这种情况下,hook 是指一种用于

2021-11-03 10:38:10 606

原创 Theos(三):GNU Make

目录GNU MakeMake 的功能Make 的规则(Rule)和目标(Target)GNU Make 的优势编写 makefile 的约定下载 Make文档邮件列表参与进来Licensing(许可)GNU MakeGNU Make 是一个工具,用于控制从程序的源文件生成程序的可执行文件和程序的其他非源文件Make 从一个名为 makefile 的文件中获取有关如何构建程序的知识, makefile 列出了每个非源文件、以及如何从其他文件中计算它。当您编写一个程序时,您应该为它编写一个 makefil

2021-11-03 10:37:00 300

原创 Theos(二):NIC(New Instance Creator)

目录NIC 简介nic.pl 如何工作补充NIC 简介NIC 全称叫 New Instance Creator(也叫 Nicolas!),是一个项目模板系统。它提供了一种基于模板创建项目(即 Instance)的方法,为不同的目的创建可立即构建的空项目。Theos 附带了一些有用的模板,而其他的模板也可以从社区中的各种开发者那里获得本文参阅以下文档:Theos GitHub Wiki:Features - NICiPhone Dev Wiki:NICiPhone Dev Wiki:N

2021-11-03 10:31:34 491

原创 Theos(一):简介 && 安装

目录Theos 简介Theos 安装Theos 的目录结构Tweak 工程的目录结构Tweak 插件加载图片资源Tweak 插件的实现原理补充:Q & A其他注意点Theos 简介相关链接Theos(iphonedev)Theos GitHub Wiki - Installation - Installation macOSTheos GitHub Wiki - Technical - Structure什么是 Theos?Theos 是一个跨平台的开发工具套件,用于在不使用

2021-11-03 10:23:20 4483 1

原创 绕过 iOS 代码签名验证 && ldid

目录绕过 iOS 代码验证ldidHomebrew绕过 iOS 代码验证iOS 的代码验证分为 2 个环节:签名验证,用于确认代码是经过苹果授权的有效验证,用于确认代码没有被修改过以下内容是基于 saurik 在 Cydia 中编写的一个文档,他文章的另一个版本的名称为:Bypassing iPhone Code Signatures苹果要求 iOS 设备上的所有代码都要经过苹果的签名。这主要是为了让通过苹果应用商店(Apple App Store)下载和安装的 App 不能再下载和运行未经

2021-10-24 11:12:11 3010

原创 Cydia Substrate(iOS)

目录Cydia Substrate 简介Cydia Substrate 主要 API 讲解Cydia Substrate 其他注意点Cydia Substrate 简介相关链接Cydia Substrate 官网地址Cydia Substrate 维基百科(iphonedev)Cydia Substrate 开发者:Jay Freeman(Saurik)什么是 Cydia Substrate?Cydia Substrate(原名:Mobile Substrate)实际上是一个框架,它允

2021-10-24 11:02:23 2845 1

原创 fishhook(二):基本使用 && 源码分析

目录fishhook 基本使用fishhook 源码分析验证实验:通过 MachOView 验证 fishhook 准备基地址的过程拓展延伸:fishhook 为何能在第一次调用外部 C 函数之前,获取到外部 C 函数的真实地址巩固练习:通过 lldb 恢复被 fishhook 替换掉的符号地址使用 fishhook 进行简单的 hook 防护注意fishhook 基本使用fishhook 简介fishhook 是一个非常简单的库,它可以对运行在 iOS 模拟器和设备上的 MachO 二进制文件的

2021-10-24 10:56:57 820

原创 fishhook(一):前导知识

目录相关的数据结构与函数iOS 系统的懒绑定机制如何获取到 Lazy Symbol Pointers 对应的函数名懒绑定函数 dyld_stub_binder 的执行流程相关的数据结构与函数MachO 文件中的链接信息段(LinkEdit Segment)LC_SEGMENT_64(__LINKEDIT) 命令用于描述链接信息段,其在 MachOView 中对应的图形界面,如下所示:LC_SEGMENT_64(__LINKEDIT) 命令对应的数据结构,如下所示:#import <ma

2021-10-24 10:53:08 548

原创 iOS 非越狱下的代码注入

目录免责声明非越狱下的代码注入步骤使用 ViewDebug 和导出的 Objective-C 类的头文件分析目标 AppObjective-C 方法常见的 Hook 方式免责声明本文为一篇严肃的学术研究型文章,文中所提及的注入手段仅供 iOS 底层技术的学习与交流,不针对任何公司与 App。为防止读者将本文用于商业或者非法用途,本文不提供任何注入工具与重签名脚本。读者如果将本文用于商业或者非法用途,则所产生的后果由读者自行承担。非越狱下的代码注入步骤材料与工具WeChat

2021-10-24 10:51:48 1124

原创 class dump 和 yololib 的使用

目录class dump 的使用class dump 原理简介yololib 的使用补充class dump 的使用class dump 简介class dump 是一个命令行工具,用于检查存储在 MachO 文件中的 Objective-C 运行时信息。class dump 可以导出 MachO 文件中 Class、Category、Protocol 的声明,这与使用 otool -ov 提供的信息相同。class dump 可以将 MachO 文件中 Class、Category、Protoc

2021-10-24 10:32:15 1100

原创 Objective-C 的 KVO(二):NSKeyValueObserving.h 代码注释

/*NSKeyValueObserving.hCopyright (c) 2003-2019, Apple Inc.All rights reserved.*/#import <Foundation/NSArray.h>#import <Foundation/NSOrderedSet.h>#import <Foundation/NSSet.h>#import <Foundation/NSDictionary.h>@class NSInde

2021-08-08 22:37:13 370

原创 Objective-C 的 KVO(一):基本使用 && 底层原理

目录KVO 简介KVO 的基本使用KVO 触发监听的方式KVO 与集合类型KVO 与属性的依赖观察KVO 的底层实现原理KVO 的其他细节自定义 KVOKVO 简介相关文档Key-Value Observing Programming GuideObjective-C 的 KVO(二):NSKeyValueObserving.h 代码注释Objective-C 的 KVC(一):基本使用 && 底层原理Objective-C 的 KVC(二):NSKeyValueCoding

2021-08-08 22:36:32 597

原创 Objective-C 的 KVC(二):NSKeyValueCoding.h 代码注释

/*NSKeyValueCoding.hCopyright (c) 1994-2019, Apple Inc. All rights reserved.*/#import <Foundation/NSArray.h>#import <Foundation/NSDictionary.h>#import <Foundation/NSOrderedSet.h>#import <Foundation/NSSet.h>#import <Found

2021-08-08 22:35:50 270

原创 Objective-C 的 KVC(一):基本使用 && 底层原理

目录KVC 简介KVC 的基本使用KVC 对(非对象指针类型的值)的处理KVC 的搜索模式通过 KVC 进行字典与模型的相互转换KVC 与集合类型KVC 的集合运算符KVC 对异常的处理KVC 的其他细节自定义 KVCKVC 简介相关文档Key-Value Coding Programming GuideNSKeyValueCoding.h 代码注释KVC 的概念KVC(Key-Value Coding)翻译成中文叫:键值编码,是由 NSObject 的非正式协议(即 NSObject

2021-08-08 22:34:59 512

原创 macOS 与 iOS 中的 Tagged Pointer

目录Tagged Pointer 的简介解除 Tagged Pointer 的数据混淆Tagged Pointer 的原理:macOSTagged Pointer 的原理: iOSTagged Pointer 的判断Tagged Pointer 的注意点其他Tagged Pointer 的简介程序从 32 位 cpu 迁移到 64 位 cpu 所造成的内存空间浪费假设要存储一个 NSNumber 对象,其值是一个整数。如果这个整数只是一个 NSInteger 类型的普通变量,那么它所占用的内存大

2021-07-01 21:51:30 414 2

原创 PerformSelector 与 NSInvocation

目录PerformSelectorNSMethodSignatureNSInvocationPerfromSelector 与 NSInvocation 的简单使用PerformSelectorPerformSelector 简介performSelector: 方法等价于直接向消息接受者(即方法调用者)发送一个 aSelector 消息。例如,以下消息都会执行相同的事情:id aClone = [anObject copy];id aClone = [anObject performSele

2021-07-01 21:50:49 447

Reveal_2412917

Reveal 是一款 iOS 越狱开发利器,借助越狱手机可以分析任何 App(包括系统应用)的视图构成,这对于参照开发很方便。Reveal 能连接到应用程序,并允许开发者编辑各种用户界面的参数,界面参数编辑后会立即反应到当前 App 的 UI 上,对于调试 iOS 应用非常方便

2022-03-11

libSubstrate.dylib + libSubstrate.h

armv7/arm64 : libSubstrate.dylib + libSubstrate.h

2021-12-07

CaptainHook.h(注释版)

CaptainHook 是 Objective-C 2.0 运行时的通用 Hook 框架,旨在简化对 Objective-C 方法的 Hook。 CaptainHook 的全部源码其实只是一个拥有近 760 行代码的 CaptainHook.h 头文件。(CaptainHook.h 头文件)通过使用(大量的宏定义)将(Hook Objective-C 方法的通用操作)抽取成(精简的宏接口),而(这些宏接口)会在(预处理阶段)展开成(通用的 Hook 代码模板)。 通过使用 CaptainHook 提供的(宏接口)可以让开发者只关心(Hook 的业务逻辑),而无需关心(Hook 的底层实现),极大地简化了 Hook 代码的开发。

2021-12-02

theos(macOS).zip

Theos 是一个跨平台的开发工具套件,用于在不使用 Xcode 的情况下管理、开发和部署 iOS 软件。它是人们为越狱的 iOS 构建插件(Tweak)的重要工具,大多数插件开发人员使用 Theos

2021-10-22

libSubstrate.dylib + libSubstrate.h

x86_64 : libSubstrate.dylib + libSubstrate.h

2021-10-08

使用 fishhook 进行简单的 hook 防护(Demo)

1.DefenseDemo 是用于防护的代码。 2.AttackDemo 是用于进攻的代码。 3.Other 用于存储逆向过程中的中间产物。

2021-09-29

fishhook(C 语言,注释版)

fishhook 是一个非常简单的库,它可以对运行在 iOS 模拟器和设备上的 MachO 二进制文件的部分符号进行动态重绑定。fishhook 提供了类似于在 macOS 上使用 DYLD_INTERPOSE 的功能。fishhook 可以用来 hook 系统的 C 函数以进行调试和跟踪(比如解决文件描述符重复回收等问题)

2021-09-01

yololib(macOS)

yololib 是一个命令行工具,用于向 MachO 文件中注入动态库

2021-09-01

class-dump(macOS)

class dump 是一个命令行工具,用于检查存储在 MachO 文件中的 Objective-C 运行时信息。class dump 可以导出 MachO 文件中 Class、Category、Protocol 的声明,这与使用 otool -ov 提供的信息相同。class dump 可以将 MachO 文件中 Class、Category、Protocol 的声明分别存储在单独的 .h 文件中,使得导出的结果拥有更紧凑的布局和更高的可读性 对于 iOS 逆向工程来说,class dump 是一个很好的工具。开发者可以通过 class dump:查看闭源的 application、framework、bundle,观察不同版本之间接口的演变,尝试使用私有框架,查看应用程序包中的私货,了解邮件应用潜在插件的 API

2021-09-01

objc4(787.1)

iOS 系统 RunTime 源码

2021-01-18

dyld 源码(750.6)

dyld(dynamic loader、dynamic link editor) 是 macOS / iOS 的动态链接器,用于加载与链接主程序可执行文件所依赖的动态库

2021-01-18

XNU 源码(6153.61.1)

XUN 是苹果操作系统开源的内核,包括了 Mach 与 BSD。 macOS、iOS、watchOS、tvOS 都基于 XNU。

2020-11-19

Go2Shell.dmg(macOS)

用于在任意文件位置打开终端的快捷工具。

2020-08-20

ReSignature.sh(Bash)

用于对 iOS 的 IPA 包进行重签名的 Bash 脚本(直接运行脚本重签)。

2020-08-12

WeChat_7.0.14 IPA(脱壳)

微信(WeChat)7.0.14 脱壳 IPA 包,里面包含 arm64 架构的 MachO 文件。 适用于 iOS App 重签名技术的学习与演练。 解压密码 QQ994923259

2020-08-08

EncryptionTools(Objective-C)

对 Objective-C 中,对称加密的核心函数 CCCrypt 进行了简单的封装,提供了对字符串进行 DES 加解密、AES(128 bit 秘钥)加解密的方法。并附使用 Demo。

2020-07-10

NSString+Hash(Objective-C)

Objective-C 中 NSString 关于常见 Hash 算法的分类,能对字符串,文件进行 Hash 运算,具备 HMAC 功能。支持的 Hash 算法有:MD5、SHA1、SHA256、SHA512。

2020-07-03

iTerm2(macOS)

iTerm2 是 Mac OS 中使用最为广泛的终端工具,特有的插件 plugin 提供了主题选择、生命高亮、代码自动填充、分屏等功能,相较于macOS 自带的终端实在是强大太多。

2020-06-23

MachOView(macOS)

Mach-O(Mach Object)是 macOS 上可执行文件的格式,类似于 Windows 上的 PE (Portable Executable)格式, Linux 上的 elf(Executable and Linking Format)格式 。 MachOView 可在 macOS 平台中可查看 MachO 文件格式信息。 解压密码:994923259

2020-06-23

Hopper 4.0.8(macOS)

Hopper Disassembler 是一款 32 位和 64 位二进制的反汇编程序,用于Mac操作系统的反编译和调试。您可以使用这个工具来反汇编您想要的任何二进制文件。 解压密码:994923259

2020-06-23

RSACryptor(Objective-C)

对 iOS 底层 RSA 加密算法进行封装,向上层提供简单易用的加密和解密接口。主要功能包括: 1.生成秘钥对 2.读取公钥/私钥 3.数据的加密/解密

2020-06-23

emu8086(Windows)

emu8086 为 8086CPU 的模拟器,集成了代码编写、调试、运行的功能。适合新手入门汇编使用。附8086CPU中断向量表、DOS系统功能调用表INT-21H。

2020-05-04

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除