Linux为touch命令设置一个强制位SUID,并测试其SUID强制位的效果
设置SUID1. 使用命令“chmod u+s /bin/touch”来设置touch命令的SUID强制位。
2. 检查是否已成功设置SUID,可使用命令“ls -l /bin/touch | grep '^-rwsr'”查看文件的权限位,如果出现“-rwsr-xr-x”的样式,表明已成功设置SUID。
测试效果:
1. 创建一个文件夹test_dir,并在其中创建一个文件test_file。
2. 将test_file的所有者信息修改为root:chown root:root test_file。
3. 检查是否成功修改了所有者信息:ls -l test_file | grep '^-rw'。如出现 “-rw------- 1 root root 0 Aug 27 15:31 test_file” 样式表明已成功修改所有者信息。
4. 由于test_file文件拥有root权限,因此只能由root用户对其操作。尝试使用非root用户对其操作会失败并报Permission denied 错误。 例如使用命令 “touch test_file” 将会失败并抛出Permission denied 错误。 5. 运行 “sudo touch test_file” 命令将会重写test_file文件时间戳而不会出错误,这表明 SUID 已生效并正常工作
免责声明:
以上内容除特别注明外均来源于网友提问,创作工场回答,未经许可,严谨转载。