玩具项目:分析 XPC 通信的图形界面
2024-6-16 22:29:26 Author: mp.weixin.qq.com(查看原文) 阅读量:6 收藏

会棍博主最近去逛了 GEEKCON 新加坡🇸🇬和🇵🇱华沙的 WarconPL XI,不过都没攒到值得写的素材,发点玩具项目充数好了。

XPC 是 macOS / iOS 安全研究无法忽视的一个点,之前已经有几个项目可以在命令行下抓取和打印 XPC 流量日志。我又写了个完全山寨 Wireshark 的界面,提供图形界面分析用户态进程之间的通信。

https://github.com/chichou/XpcScope

虽然 nodejs 和 python 两个运行时都算是 frida 优先支持的一等公民,但实际安装部署体验则是 python 远远比 node 流畅。GitHub 里天天都是小白问不完的 node-gyp 报错,因为 npm 的预编译包比较坑。

之前用 node 写了一些小工具,图 web 界面开发简单,最后却变的难以维护。所以试一下切到 Qt 加上 copilot 的开发效率如何。

由于依赖 Qt,pip 安装的时候需要下几百 M 的库,可能构建起来稍微需要一些时间。

python 要求 >=3.10 并 < 3.13,当前 brew install 的版本默认就可以。

接下来用 poetry 做虚拟环境管理,依赖项用 poetry install 一键安装即可。

第一次运行之前需要构建两个东西,一个是 js 的 frida 脚本:make agent

另一个则是 Qt 的资源脚本:make res

如果您的系统不支持 make,可以打开 Makefile 找到对应的命令手动执行。

接下来打开 bin/xpcscope,编辑其中的 get_target 函数。因为 python 的语法比命令行传参灵活太多,我就懒得封装了。

由于是玩具项目,不提供客服支持🏳️🏳️


文章来源: https://mp.weixin.qq.com/s?__biz=Mzk0NDE3MTkzNQ==&mid=2247485408&idx=1&sn=dbf63cc3cfbf33741c95ba67708b6e84&chksm=c329f910f45e7006b402d6c02d7d8686b272ed362bc034d28d7617a2b4fb87ec7149e03565b0&scene=58&subscene=0#rd
如有侵权请联系:admin#unsafe.sh