zsh完成缓存安全模型坏了吗?

时间:2016-01-06 01:53:04

标签: zsh zsh-completion

这可能是zsh中的错误或错误,但我不太清楚,我可能会误解。

compinit(初始化完成的函数)运行compaudit来强制执行安全模型,它只会从$fpath中被视为“安全”的目录中加载完成函数(拥有通过root或我,不是世界可写的等等。它会警告用户不安全的路径并提示跳过它们或中止。这一切都很好。

它会在~/.zcompdump处创建结果缓存。 AFAICT,只能手动无效(即删除)

我不完全清楚缓存中的内容,所以我不能说这是否真的是一个很大的安全问题。但是,至少compinit将认为缓存有效,即使它由不同的用户拥有,从而避免加载 对当前用户有效的完成功能,但不是't 为前一个。

每次我使用sudo -s我的zsh安装所拥有的时候都会发生这种情况(OS X自制软件)。它写了一个不完整的完成缓存。然后我启动下一个shell,它加载被破坏的缓存并且看不到任何完成。

这是我的问题吗? ZSH的?自制程序?

0 个答案:

没有答案