最終更新 2019-01-02 setuid とは、UNIX/Linux において、root など特定の権限でプログラムやコマンドを実行する仕組みである。 ●setuid の基礎 UNIX/Linux において passwd コマンドでパスワードを変更したり、chsh コマンドでログイン時のシェルを変更したりすることができる。これらの情報は /etc/passwd や /etc/shadow (または /etc/master.passwd) などに保存されている。 ここでよ〜く考えてみよう。つまり passwd コマンドや chsh コマンドは、/etc/passwd・/etc/shadow などのファイルを更新するということだ。しかしながら、んこれらのファイルは、一般ユーザが書き換えできないようにパーミッションが設定されている。 % ls -l /etc/passwd /etc/mast