gpt4 book ai didi

linux - 在隔离的unix环境中执行终端命令

转载 作者:太空宇宙 更新时间:2023-11-04 04:21:08 24 4
gpt4 key购买 nike

我正在编写一个 Web 应用程序,用户可以在其中在服务器上执行 git、bzr 和 hg 命令。基本上,用户将 git/bzr/hg 命令写入 html 表单,点击按钮,命令被发送到服务器,并在用户拥有的目录中执行。

如何确保其安全?我需要能够执行一个只能访问和更改一个特定目录的 bash 命令。并且最好,执行命令的目录不应包含其他文件。我认为这对于 chroot 来说是必要的。

最佳答案

与往常一样,处理用户输入时,请在将其进一步传递给任何命令之前对其进行检查。

  • 它是否是有效的 git/bzr/hg 子命令
  • 是否有分号带有额外的不相关命令
  • ...

您可以尝试在受限 shell (bash -r) 中运行命令,这会阻止一些事情。

虽然更复杂,但更安全的解决方案当然是 chroot 甚至更好的虚拟机。

关于linux - 在隔离的unix环境中执行终端命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13122860/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com