هل هناك أي نظام يونكس مثل تنسب معنى SUID بت على الدليل ؟

StackOverflow https://stackoverflow.com/questions/627880

سؤال

كما يقول العنوان, هل هناك أي نظام يونكس مثل تنسب معنى SUID بت على الدليل, و إذا كان الأمر كذلك ، ماذا يعني ذلك ؟

على SVTX (حفظ النص ، أو لزجة) بت له معنى - انت لا حذف ملف من هذا الدليل إلا إذا كنت يمكن الكتابة إلى الملف.يتم استخدامه على /tmp ، على سبيل المثال.

على SGID (مجموعة GID) بت له معنى - الملفات التي تم إنشاؤها في هذا الدليل سوف تنتمي إلى المجموعة التي تملك الدليل (على الرغم من أن المهمة في وقت لاحق يمكن أن يتغير من خلال دعوة صريحة إلى chown(2)).

ماذا عن SUID ؟

هل كانت مفيدة؟

المحلول

مثل متابعة عقدة الجواب, أنا سيتم نشر التالية من فري رجل الصفحة جبل(8):

             suiddir
                 A directory on the mounted file system will respond to
                 the SUID bit being set, by setting the owner of any new
                 files to be the same as the owner of the directory.  New
                 directories will inherit the bit from their parents.
                 Execute bits are removed from the file, and it will not
                 be given to root.

                 This feature is designed for use on fileservers serving
                 PC users via ftp, SAMBA, or netatalk.  It provides secu-
                 rity holes for shell users and as such should not be used
                 on shell machines, especially on home directories.  This
                 option requires the SUIDDIR option in the kernel to work.
                 Only UFS file systems support this option.  See chmod(2)
                 for more information.

و chmod(2) صفحة المقطع الذي يشير إلى suid بت:

           4000    (the setuid bit).  Executable files with this bit set will
               run with effective uid set to the uid of the file owner.
               Directories with this bit set will force all files and sub-
               directories created in them to be owned by the directory
               owner and not by the uid of the creating process, if the
               underlying file system supports this feature: see chmod(2)
               and the suiddir option to mount(8).

يرجى أن يكون على علم بأن هذا هو خطر أمني و تعرف ما تقومون به عند تمكين ذلك في فري ولكن أعتقد لينكس كما تتطلب الخاص جبل العلم إلى تمكين وسيتم تغيير طريقة الملفات في هذا الدليل التصرف.

نصائح أخرى

هنا :

<اقتباس فقرة>   

في معظم النظم، إذا تم تعيين بت مجموعة، مجموعة-ID دليل، والفرعيين تم إنشاؤها حديثا ترث نفس المجموعة الدليل، والدلائل التي تم إنشاؤها حديثا ترث بت مجموعة، مجموعة-ID من الدليل الأصل. على عدد قليل من النظم، قليلا مجموعة المستخدم-ID دليل لديها تأثير مماثل على ملكية الفرعيين الجديد وبت مجموعة المستخدم-ID من الدلائل الجديدة. هذه الآليات تتيح للمستخدمين مشاركة الملفات بسهولة أكبر، عن طريق تقليل الحاجة إلى استخدام chown CHMOD أو لمشاركة الملفات الجديدة.

     

وهذه الآليات الراحة تعتمد على مجموعة المستخدم-ID وتعيين-مجموعة-ID بت من الدلائل. إذا أوامر مثل شمود ومكدير مسح روتيني هذه القطع على الدلائل، وآليات سيكون أقل ملاءمة، وسيكون من الصعب لتبادل الملفات. لذلك، أمر مثل شمود لا يؤثر على مجموعة المستخدم معرف أو وضعها مجموعة-ID بت من دليل ما لم يذكر المستخدم خصيصا لهم في وضع الرمزي، أو يضع لهم في وضع رقمي.

عند تعيين على الدليل، كافة الملفات والدلائل التي تم إنشاؤها ضمن هذا الدليل سيكون لها نفس المالك كما SUID-الدليل نفسه، بغض النظر عمن إنشاء الملف. هذه هي ميزة التي لا تستخدم في كثير من الأحيان، ولكن يمكن أن يكون مفيدا في بعض الحالات. ( مصدر )

تحديث: لقد حاولت هذه على لينكس 2.6.25.5-1.1 الافتراضية # 1 SMP x86_64 GNU / لينكس زحمة 11.0 (إكس86-64)

mkdir tmp
chmod 4777 tmp
su othergroup
touch testfile

وكان أي تأثير.

وينص بت SUID ذلك، سوف تعمل على تنفيذ ملف (عند تنفيذ) عملية تحت هوية صاحب قالت ملف، وليس للمستخدم أن تنفيذه.

وهناك عدد قليل من الحالات التي يكون فيها فائدة البرنامج هو "جذر SUID" للسماح تجاوز الصلاحيات.

وتحرير: أخطأت السؤال الأصلي (الذي يشير إلى الدلائل بدلا من الملفات) - ترك الجواب دون تغيير للأغراض التعليمية ؛-)

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top