自制 Instagram iOS 动态插桩工具,可记录最高约 800 万条函数调用日志

大家好,我想分享一下我近期在 Instagram iOS 逆向方向做的一些工作,也许对使用 instagrapi 或相关研究的人会有帮助。

我通过修改 Instagram 的 iOS 应用包,制作了一个自定义的插桩工具,使其在运行过程中能够自动记录关键函数调用和参数。IPA 使用 Sideloadly 等方式安装,运行后生成的日志文件可以直接在 macOS 的 Finder 中访问(例如:log_0x0_0x0.txtlog_0x0_0x0_259.txt 等)。

功能特性

  • 单次运行可记录 约 800 万条 函数调用日志

  • 捕获底层函数调用的详细信息

  • 日志为共享文件,可直接导出分析

日志格式说明

每一条日志记录包括:

  • 时间戳

  • 栈指针(可用于推断调用深度)

  • 函数地址(PC),可与 IDA 中地址对应

  • 线程 ID(可按线程整理调用序列)

  • 函数参数(主要是可见字符串)

  • 对于不可见或加密参数,以 <x> 加 hex 表示

由于 Instagram 在本地并未使用特别复杂的加密函数,分析系统调用基本足够。对于字符串类参数,日志已经能直接观察;对于不可见数据,也会记录为十六进制。

截图中展示了日志格式。

如果这个插桩方法或日志结构对你在 instagrapi 或相关逆向分析中的研究有帮助,欢迎参考或进一步改造。

下面是ipa 网盘地址:

https://drive.google.com/file/d/1jpNb_dLxF4L4_O2VWP5SeIlKgah9Emgt/view?usp=drive_link