我想让这个脚本安全,所以不能直接利用它。
我有一个名为Test.sh的Bash文件,我给它一个User Sudo权限:
user ALL=(root) NOPASSWD: /home/user/Test.sh
因此,用户对此文件具有完全的Sudo权限。
下一步是确保用户无法使用以下内容编辑此文件:
chown root:root /home/user/Test.sh
chmod u=rwx,g=rwx,o=rx /home/user/Test.sh
例如,文件包含此命令
if [ "$1" = "run" ]; then
sudo -u ${2} ${3};
fi
OR
`sudo cp -R /home/test/test/${2}/* /home/${3}/test/
useradd ${2} -r -d /home/${2} -s /bin/bash
userdel -r ${2}
基本上用户甚至可以以root身份登录并搞砸了。 所以我的第一个想法是,让我们检查Home文件夹是否存在:
if [ -d "/home/$2" ] && [ "$2" != "" ]; then
哪会阻止像root这样的东西运行垃圾,只让他们像我想要的那样登录其他用户。或者我认为错了?
我还会检查命令是否以/ home /....
开头grep '^/home/....' $3
那么,这是否应该?或不?我想我也应该过滤一下;