📌  相关文章
📜  存在不安全目录 usr local share zsh - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:09:22.651000             🧑  作者: Mango

存在不安全目录 usr/local/share/zsh - Shell/Bash

在Shell/Bash环境下,存在一个可能导致安全漏洞的目录,即 usr/local/share/zsh。这个目录被默认添加到了Shell/Bash的 $PATH 环境变量中,而该目录下的文件可被任意用户执行,包括被恶意篡改后的文件。

这个目录的存在意味着,一个恶意攻击者可以通过将一个具有相同名称的可执行文件放置在该目录下,然后等待Shell/Bash使用该命令时,执行其恶意代码以获取系统权限。

为避免此类漏洞,通常建议程序员在脚本中显式地指定所有可执行文件的完整路径,或限制 $PATH 环境变量的值,或仅仅使用安全的位置依赖的执行文件。

需要注意的是,如果你仍然需要使用 usr/local/share/zsh 目录中的文件,则应确保该目录下的文件不会被恶意篡改。此外,建议使用文件审计功能,以便监控该目录下的文件,可以立即发现任何恶意篡改操作。

参考资料:

代码实例:

# 存在不安全目录 `usr/local/share/zsh` - Shell/Bash

在Shell/Bash环境下,存在一个可能导致安全漏洞的目录,即 `usr/local/share/zsh`。这个目录被默认添加到了Shell/Bash的 `$PATH` 环境变量中,而该目录下的文件可被任意用户执行,包括被恶意篡改后的文件。

这个目录的存在意味着,一个恶意攻击者可以通过将一个具有相同名称的可执行文件放置在该目录下,然后等待Shell/Bash使用该命令时,执行其恶意代码以获取系统权限。

为避免此类漏洞,通常建议程序员在脚本中显式地指定所有可执行文件的完整路径,或限制 `$PATH` 环境变量的值,或仅仅使用安全的位置依赖的执行文件。

需要注意的是,如果你仍然需要使用 `usr/local/share/zsh` 目录中的文件,则应确保该目录下的文件不会被恶意篡改。此外,建议使用文件审计功能,以便监控该目录下的文件,可以立即发现任何恶意篡改操作。

参考资料:

- [知乎 - Shell 脚本编程陷阱&原则](https://zhuanlan.zhihu.com/p/26643289)
- [Linux中PATH环境变量该如何设置,以兼容安全和便利呢?](https://blog.csdn.net/u011012932/article/details/78813317)