権限のないユーザーが実行可能ファイルの所有者またはグループを変更したときにS_ISUIDおよびS_ISGIDモードビットがクリアされるのはなぜですか?

権限のないユーザーが実行可能ファイルの所有者またはグループを変更したときにS_ISUIDおよびS_ISGIDモードビットがクリアされるのはなぜですか?

私が読んでいるmanページchown。関数が正常に返されたときにモードをクリアする理由を理解できませんS_ISUIDS_ISGID

ベストアンサー1

私はあなたがマニュアルページでこれを指摘したと思います。

権限のないユーザーが実行可能ファイルの所有者またはグループを変更すると、S_ISUIDおよびS_ISGIDモードビットがクリアされます。

それでは、なぜ今は消去されたのですか?次の場合にのみ削除されることがわかります。実行可能ファイル文書。これは、ビット(SUID / SGID)のいずれかが設定されていると、権限のないユーザーが新しい所有者としてファイルを実行できるためです。これは膨大なセキュリティ抜け穴になります。

おすすめ記事