macOS内核扩展
kext通信方式考虑
- macOS内核拓展与用户态进程的通信实现(一)
https://www.jianshu.com/p/4268e02e7c4c - macOS内核拓展与用户态进程的通信实现(二)
https://www.jianshu.com/p/8318cabe9535 - KernControl实现
https://github.com/Kiprey/HelloKernControl - IOKit实现
https://github.com/maurice-schuppe/flockflock - 在macOS11或更高版本中对kext要求更高
https://support.apple.com/zh-cn/guide/deployment/depa5fb8376f/web
建议在macOS 10.15上开发kext 避免频繁重启
内核扩展
https://support.apple.com/zh-cn/guide/deployment/depa5fb8376f/web
在 macOS 11 或更高版本中,如果启用了第三方内核扩展 (Kext),就不能按需将其载入内核中。第三方内核扩展需要用户批准、重新启动 macOS 以将更改载入内核,还需要在搭载 Apple 芯片的 Mac 上将安全启动配置为“降低安全性”。
内核扩展kext和系统扩展sext例子 NuwaStone
https://github.com/ConradSun/NuwaStone
A macOS behavior audit system with scope of file, process and network events.
1 | file/process -> kauth |
类似软件 -> 火绒剑Mac版
https://www.huorong.cn/mac_download.html
https://bbs.huorong.cn/thread-84449-1-1.html
火绒剑要求11.1 只支持sext
[EndpointSecurity/NetworkExtension]
1 | $ otool -L HRSword |
HRSword.app/Contents/Library/SystemExtensions/cn.huorong.HRSword.HRSwordEx.systemextension/Contents/Info.plist
1 | <key>NetworkExtension</key> |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 WuRui!
评论