运行“bash -n FILE_OF_ARBITRARY_INPUT.txt”是否存在任何安全问题?

时间:2013-01-12 12:08:30

标签: bash

如果您假设编写了一个检查bash文件语法的Web服务,那么在任何用户输入上运行bash -n会不会有任何安全问题?

1 个答案:

答案 0 :(得分:2)

尽可能地说,-n应该按照您的预期工作,但我仍然会保持谨慎:我不知道使用bash -n进行不可信的语法检查的任何认真检查代码,bash或C库中的错误,或者实际上任何地方都可能产生影响,可能会以难以推理的方式利用这些影响。

从不信任用户输入似乎总是谨慎,而像bash这样的大代码库是隐藏错误的重要场所。

这就是我要做的事情:

  • 准备chroot监狱以运行静态链接的restricted bash
  • 为目的准备非root用户
  • 编写一个脚本,从模板构建jail,使用源文件chroot,删除权限,关闭除(1)和dups(2)之外的所有fds,然后最终使用您的程序运行bash -n