3
私は、PHP関数posix_getuidとposix_geteuidの違いを見つけるのに苦労しています。私はposix_geteuidが現在のプロセスの実効ユーザーIDを返すことを知っていますが、それはどういう意味ですか?また、実効ユーザーIDの設定とユーザーIDの設定の違いは何ですか?PHPプロセスの実効ユーザーIDと実際のユーザーIDは何ですか?
私は、PHP関数posix_getuidとposix_geteuidの違いを見つけるのに苦労しています。私はposix_geteuidが現在のプロセスの実効ユーザーIDを返すことを知っていますが、それはどういう意味ですか?また、実効ユーザーIDの設定とユーザーIDの設定の違いは何ですか?PHPプロセスの実効ユーザーIDと実際のユーザーIDは何ですか?
PHPプロセスでは常に同じである可能性が高いです。彼らが一般的に異なるのは、プロセスがsetuidとして実行されているときだけです。これは、PHPスクリプトでは非常に安全ではありません(インタプリタは環境変数で簡単に破壊されるためです)。
現在のプロセスの1つが現在0(ルート)に設定されている場合にのみ、現在のプロセスのuid/euidを変更できることにも注意してください。
スクリプトファイルでもsuidフラグは無視されます。したがって、何らかの種類のラッパーがなければ、スクリプトを扱うことは不可能です。 – ThiefMaster