背景
SUID,SGIDの動作確認を色々しているときにファイルがrootグループとしては作れないのにrootユーザとしては作れたのでよく考えると不思議だなあと思い調査(rootグループとして実行することってあんまりないからね)
結論
① root以外のユーザがrootグループとして実行する → パーミッションに基づいて許可が決まる
② root以外のユーザがrootユーザとして実行する → パーミッション関係なく実行できる!!
準備
#こんなディレクトリ作った
d--------- 2 root root 6 Mar 24 23:27 no-perm
#touch コマンドのファイル情報
-rwxr-xr-x 1 root root 58264 Jan 24 2020 /bin/touch
実験
① root以外のユーザがrootグループとして実行する
sudo chmod g+s `which touch`
touch /no-perm/groupfile
touch: cannot touch ‘/no-perm/groupfile’: Permission denied
# ↑ これはディレクトリの権限的に当たり前
② root以外のユーザがrootユーザとして実行する
sudo chmod g-s `which touch`
sudo chmod u+s `which touch`
touch /no-perm/userfile
sudo ll /no-perm/userfile
-rw-r--r-- 1 root root 0 Mar 24 23:37 /no-perm/userfile
# ↑ いました・・・