setuidを設定しましたが、mkdir
実行可能にはしませんでした。
chmod u+s /usr/bin/mkdir
chmod u-x /usr/bin/mkdir
[root@rhel-85 /]# ls -l /usr/bin/mkdir
-rwSr-xr-x. 1 root root 84664 Jul 9 2021 /usr/bin/mkdir
今別のユーザーとしてログインすると"user1"
私はまだable to create directory even when the "mkdir" binary is non-executable.
mkdir
私の理解は、 "user1"が実行可能ではないため、ディレクトリを作成できないことです。
答え1
ファイル所有者から実行権限を削除しましたが、そのグループメンバーまたは他のユーザーは実行権限を削除しませんでした。その結果、唯一のユーザーのアクセスが拒否されました。パス権限ルートであり、他のすべてのユーザーには権限が付与されます。 (ルートは実行可能ビットが設定されている任意のバイナリを実行できるため、ルートはまだバイナリを実行できます。)
setuid ビットは許可または拒否方法には影響しません。プロセスがバイナリを実行すると、有効なuidにのみ影響します。
バラよりUNIXの権限とファイルタイプの理解そして「グループ」権限は制限し、「世界」権限は公開しますか?もっと学ぶ。