基本上,我正在创建一个可以监视进程的kext。以下是目标。
- 观察流程的创建--->当前正在使用https://developer.apple.com/library/archive/technotes/tn2127/_index.html
中所述的vnode范围
- 根据用户策略,允许或拒绝许可。需要可执行文件的路径,命令行参数,父pid和父路径来做出决定---->托管以获取可执行文件路径,父进程名称(而不是完整路径)。
- 进程退出时的通知--->当前,有一个用户登陆进程,已设法使用kqueue在用户登陆中获取退出通知。如果我可以让kext回调代替用户土地依赖来监听,那就太好了。
到目前为止,我遇到了一个博客,他们设法获取了命令行参数macf policy based kext where command line args are retrived。 Mac政策中的问题是私有API,并且非Apple Kexts不推荐使用。
以下是我目前尚未解决的问题。帮助/指针很棒
我需要帮助来获取访问命令行arg
- 在kauth侦听器的vnode范围内检索命令行参数
- 处理kext的退出监听器回调
谢谢您的帮助。