Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
“运行”是否存在任何安全问题;bash-n文件“任意”INPUT.txt的“U”;?_Bash - Fatal编程技术网

“运行”是否存在任何安全问题;bash-n文件“任意”INPUT.txt的“U”;?

“运行”是否存在任何安全问题;bash-n文件“任意”INPUT.txt的“U”;?,bash,Bash,如果假设您正在编写一个web服务来检查bash文件的语法,那么在任何用户输入上运行bash-n会不会有任何安全问题?据我所知,-n应该可以像您所期望的那样工作,但我还是要小心:我不知道有人认真研究过使用bash-n检查不可信代码的语法,而且bash或您的C库中的bug,或者任何地方的bug都可能会产生影响,这些影响可能会以难以理解的方式被利用 永远不要相信用户输入似乎很谨慎,而像bash这样的大型代码库是隐藏bug的好地方 下面是我要做的: 准备一个chroot脚本来运行静态链接的bash 为

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

据我所知,
-n
应该可以像您所期望的那样工作,但我还是要小心:我不知道有人认真研究过使用
bash-n
检查不可信代码的语法,而且
bash
或您的C库中的bug,或者任何地方的bug都可能会产生影响,这些影响可能会以难以理解的方式被利用

永远不要相信用户输入似乎很谨慎,而像bash这样的大型代码库是隐藏bug的好地方

下面是我要做的:

  • 准备一个chroot脚本来运行静态链接的bash
  • 为此目的准备一个非root用户
  • 编写一个脚本,从模板构造监狱,插入源文件,放弃特权,关闭除(1)和DUP(2)之外的所有FD,然后用程序运行
    bash-n