setuid 実行可能ファイルの環境設定

setuid 実行可能ファイルの環境設定

ビットが有効な状態でプログラムを実行したときに奇妙な動作を観察しましたsetuid

プログラムはsetuidビットが設定されているユーザーが所有しますfoobar

ユーザーがexecbar実行foo

foo動的ライブラリの1つにアクセスできないことを報告します。

問題の動的ライブラリはld.so.conf通常の検索パスの外にあるディレクトリにあるため、次のようにLD_LIBRARY_PATH設定されます。execbar

問題は、プログラムを実行するとsetuidユーザーが設定した環境が消去されることexecbarです。

ベストアンサー1

いいえ。ただし、動的リンカーはsetuidで実行すると一部の環境変数を無視します。それ以外の場合は、ターゲットユーザーにすべてのコードをロードして実行させることができます。LD_LIBRARY_PATHこれはLD_PRELOAD背中に適用されます。バラよりld.so(8)

おすすめ記事