编辑全局 PATH 环境变量是否安全?

编辑全局 PATH 环境变量是否安全?

我最近发现,如果不输入完整路径或处于正确的目录中,我就无法运行 mysql——除非我将路径添加到 PATH 环境变量中。

我成功做到了这一点,现在我可以在启动命令行时运行 mysql。我很懒,不想为了从 cmd 运行 mysql 而输入整个路径。而且,我不知道还有其他方法可以做到这一点。我偶然在论坛上看到了这个解决方案。

我现在唯一想知道的是,对于我的所有程序来说,这样做是否可以/安全。

虽然这并不实际,但这只是一种预防措施。

我注意到,在网上的一些教程中,有些人将 PATH 变量用作用户变量,而我没有。我只在系统变量部分找到了 PATH 环境变量。这是件坏事吗?

我的电脑上唯一的账户是管理员账户。至少,这是我唯一使用的账户。

我可以对此获得一些澄清/意见吗?

答案1

通常,向 中添加目录不会有什么危险PATH。它只会在两个方面给您带来问题:

  1. 使用命令提示符时,您可能会意外运行不想要的程序。不过,如果您知道自己在计算机上安装的程序PATH,就不会发生任何恶意行为。
  2. 程序可能会在那里找到通常不会加载的 DLL。DLL 搜索顺序指定如果在正常位置找不到请求的 DLL,则最终将在这些PATH位置查找它。例如,如果某个程序通过尝试按名称加载 DLL 来选择性地加载模块,并且不关心是否失败,则PATH如果在搜索中没有找到具有其名称的 DLL,则控制文件夹的人可能会导致该程序加载任意 DLL。顺便说一句,这个可能的安全问题就是为什么尝试加载可能存在也可能不存在的 DLL 是个坏主意。编写良好的程序不会出现此问题。

你也可以想象最大化PATH变量长度,但这实际上不是一个安全问题。

关于您找不到用户PATH变量:如果您创建该变量的每个用户版本,则您的有效变量PATH将是系统变量自动与每个用户变量相结合的变量。

相关内容