🍎 Agent · iOS 实现
agent/src/ios/ 下每个 .ts 文件实现一组在 iOS 目标进程内运行的逻辑,通过 rpc.exports 暴露给 Python 侧。所有 ObjC 交互经 lib/libobjc.ts 的 libObjc Proxy(懒加载 + 方法指针缓存)。
🗺️ 实现结构
📂 文件清单
主模块
| 文档 | 源码 | 主要 RPC |
|---|---|---|
| binarycookies | ios/binarycookies.ts | iosCookiesGet |
| binary | ios/binary.ts | iosBinaryInfo |
| bundles | ios/bundles.ts | iosBundles* / iosInfo |
| credentialstorage | ios/credentialstorage.ts | iosUrlCredentialsDump |
| crypto | ios/crypto.ts | iosMonitorCrypto |
| filesystem | ios/filesystem.ts | iosFile* |
| heap | ios/heap.ts | iosHeap* |
| hooking | ios/hooking.ts | iosHooking* |
| jailbreak | ios/jailbreak.ts | iosJailbreak* |
| keychain | ios/keychain.ts | iosKeychain* |
| nsuserdefaults | ios/nsuserdefaults.ts | iosNsuserDefaultsGet |
| pasteboard | ios/pasteboard.ts | iosPasteboardMonitor |
| pinning | ios/pinning.ts | iosPinningDisable |
| plist | ios/plist.ts | iosPlistRead |
| userinterface | ios/userinterface.ts | iosUi* |
lib 工具模块
| 文档 | 源码 | 作用 |
|---|---|---|
| lib/constants | ios/lib/constants.ts | iOS 系统常量 |
| lib/helpers | ios/lib/helpers.ts | 通用辅助(含 arrayBufferToHex) |
| lib/interfaces | ios/lib/interfaces.ts | 接口定义 |
| lib/libobjc | ios/lib/libobjc.ts | ObjC 桥 Proxy |
| lib/types | ios/lib/types.ts | 类型别名 |
