macOS Kauth API 缺少虚拟节点重命名保护



为了保护我的项目文件不被未经授权的实体删除,我使用带有KAUTH_SCOPE_VNODE选项的kauth_listen_scope来添加新的回调函数,以防止其他人删除这些文件。

但是,似乎可以将这些文件从Finder移动到废纸篓,因为它使用rename系统调用。 此命令不会触发可以阻止的虚拟节点授权事件,只会触发 Fileop 事件(但这些事件仅用于检测(。

也许任何人都有另一种选择,可以做些什么来防止这种行为?

谢谢

因此,rename系统调用似乎也通过虚拟节点授权。

但是,它不会请求对文件本身的授权,而是对其容器(父目录(请求授权。

最新更新