macOS进程注入
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/macos-process-injection-lr-mgs0。
技能介绍
要解决的问题
在 macOS 上做进程注入,不是简单调一个 API。不同机制对签名、权限、SIP 和运行环境的约束完全不同,选错向量可能一开始就被拦下。
核心能力与关键步骤
这个技能面向的是已经明确要做注入的排查场景,提供几条主线的对照和选择:
- DYLD 注入:通过
DYLD_INSERT_LIBRARIES在进程启动时插入 dylib,适用于能控制启动环境或启动参数的场景;也覆盖 weak、rpath、proxy 三类 dylib hijacking 的差异。 - XPC PID 复用:针对 XPC 通信中的 PID 可预测或可重用窗口,属于更高阶的利用方式,需要先理解目标进程的 XPC 服务暴露面。
- Mach 端口与 MIG:涉及 Mach port manipulation、MIG abuse 和
task_for_pid模式,用于在进程间拿句柄或直接操作任务端口。 - Electron 注入:面向基于 Electron 的应用,利用其多进程和加载机制的特点做定向注入。
技能会先提醒 entitlement 前置条件和 SIP 对向量的约束,避免在不具备权限的目标上反复试错;需要绕过 TCC、Gatekeeper 或 SIP 时,应联动 macos-security-bypass,底层共享对象劫持思路也可参考 linux-privilege-escalation。
适用边界与注意点
这份资料是攻击侧 playbook,适用于授权测试、漏洞验证和攻防研究中的路径确认,不是通用 macOS 开发指南。
使用场景
- 渗透测试人员在授权评估中需要确认目标 macOS 应用是否可被 `DYLD_INSERT_LIBRARIES` 或 dylib 劫持注入,并记录依赖条件与失败原因
- 红队成员遇到 macOS 客户端使用 XPC 通信,需要分析 PID 复用窗口,评估能否把消息投递到目标进程完成注入
- 安全研究员在 macOS 漏洞利用研究中需要构造 Mach 端口句柄操作,结合 MIG 或 `task_for_pid` 测试权限边界
- 针对 Electron 应用的客户端安全测试中,需要判断能否通过其 dylib 加载或进程通信路径注入代码并验证前置条件
适合人员
- 做 macOS 应用安全审计的渗透测试工程师,需要在授权测试中判断目标进程可被哪些注入技术攻破
- 研究 macOS 漏洞利用的安全研究员,需要对照 DYLD、XPC、Mach 端口和 Electron 注入的适用条件设计复现路径
- 负责客户端防护的蓝队工程师,需要理解注入向量与 SIP 约束来编写检测规则和事件响应手册
- 开发 macOS 客户端的工程师,需要识别 dylib 加载、XPC 服务和 Mach 通信中的注入风险并加固代码