Спеціальні права доступу (suid, sgid, sticky)

Матеріал з Wiki TNEU
Версія від 23:28, 20 вересня 2012; Donserg (Обговореннявнесок)

(різн.) ← Попередня версія • Поточна версія (різн.) • Новіша версія → (різн.)
Перейти до: навігація, пошук

Попередження про suid / sgid

Ми побачили як працює suid, sgid працює схожим чином. Вона дозволяє програмі успадковувати права доступу групи, а не поточного користувача. Важливо! Трохи розрізнена, але в той же час дуже важлива інформація про suid і sgid. По-перше, біти suid і sgid займають ті ж поля у виведенні команди ls-l. Якщо біт x теж заданий, відповідні біти будуть показані як s (у нижньому регістрі). Однак, якщо біт x не заданий то він буде відображатися як S (у верхньому регістрі). Важливо! Ще одне важливе зауваження: suid і sgid бувають зручні в багатьох ситуаціях, але неправильне їх використання може призвести до появи вразливостей в захисті системи. Найкраще мати якомога меншу кількість suid програм. Команда passwd - одна з не багатьох, яка повинна бути suid.


Зміна suid і sgid

Спосіб установки і видалення бітів suid і sgid надзвичайно простий. Ось так ми задаємо біт suid:

  1. Chmod u + s / usr / bin / myapp
А в наступному прикладі ми знімаємо прапор sgid з директорії. 

Ви побачите, як біт sgid працює з директоріями нижче:

  1. Chmod g-s / home / drobbins


Sticky

Біт, якому в коді режиму доступу відповідає вісімкове значення 1000, називається sticky-бітом ("sticky" - липучка). Це хороший приклад того, як UNIX в міру дорослішання позбувається рудиментів, але вони продовжують слідувати за системою по п'ятах. У системах з невеликою пам'яттю, наприклад PDP-11/70, де UNIX працювала у свої ранні роки, було потрібно, щоб окремі програми постійно залишалися в пам'яті. Тоді sticky-біт був дуже важливий, так як забороняв вивантаження програм з пам'яті. Сьогодні у світі 25-доларових модулів пам'яті і швидкодіючих дискових накопичувачів sticky-біт нікому не потрібний, і сучасні ядра просто ігнорують його. Якщо sticky-біт встановлюється для каталогу, то більшість версій UNIX дозволяють видаляти і перейменовувати його файли тільки в тому випадку, якщо користувач є власником каталогу, власником файлу або користувачем root. Мати одне лише дозвіл на запис у каталог недостатньо. Така міра направлена на те, щоб зробити каталоги зразок / tmp більш захищеними. Системи Solaris і HP-UX не такі суворі щодо каталогів з встановленим sticky-бітом. Користувач, що має право запису в такий каталог, може видаляти з нього файли, навіть якщо він не є їх власником.

Особисті інструменти
Простори назв

Варіанти
Дії
Навігація
Інструменти