Вопросы с тегом «setuid»

185
Разрешить setuid для сценариев оболочки

setuidБит разрешение говорит Linux для запуска программы с эффективным идентификатором пользователя владельца вместо исполнителя: > cat setuid-test.c #include <stdio.h> #include <unistd.h> int main(int argc, char** argv) { printf("%d", geteuid()); return 0; } > gcc -o setuid-test...

45
Правильное использование бита setuid

У меня есть процесс, которому нужны права root при запуске обычным пользователем. Очевидно, я могу использовать «бит setuid» для достижения этой цели. Как правильно сделать это в системе POSIX? Кроме того, как я могу сделать это со скриптом, который использует интерпретатор (bash, perl, python, php...

35
Какой самый безопасный способ программной записи в файл с привилегиями root?

Огромное приложение должно в одно конкретное время выполнить небольшое количество операций записи в файл, для которого требуются права суперпользователя. На самом деле это не файл, а аппаратный интерфейс, который представлен Linux как файл. Чтобы избежать предоставления привилегий root всему...

26
Что было бы лучшим способом обойти эту проблему glibc?

Я управляю коробкой Gentoo Hardened, которая использует файловые возможности для устранения большей части необходимости в двоичных файлах setuid-root (например, /bin/pingимеет CAP_NET_RAW и т. Д.). Infact, единственный двоичный файл, который я оставил, является этим: abraxas ~ # find / -xdev -type...

25
Разница между владельцем / root и RUID / EUID

Я относительно новичок в понятиях, упомянутых в вопросе, и чтение о них из разных источников только делает их более запутанными. Так вот что я понял до сих пор: Когда нам дают разрешения для файла, они выглядят так: -rwsr-xr-- 1 user1 users 190 Oct 12 14:23 file.bin Мы предполагаем, что...

16
Может ли gdb отлаживать программы suid root?

Я написал программу, которая вызывает setuid(0)и execve("/bin/bash",NULL,NULL). Тогда я сделал chown root:root a.out && chmod +s a.out Когда я выполняю, ./a.outя получаю корневую оболочку. Однако, когда я это делаю, gdb a.outон запускает процесс как обычный пользователь и запускает...

14
Что значит GID?

Что на самом деле означает GID? Я прогуглил это, и вот что сказал linux.about.com : Идентификационный номер группы для процесса. Действительные номера групп указаны в /etc/groupи в поле GID /etc/passwdфайла. Когда процесс запускается, его GID устанавливается равным GID его родительского процесса....

14
Бит setuid, похоже, не влияет на bash

Я немного поэкспериментировал и заметил кое-что странное: установка бита setuid для копии bash, расположенной в, /usr/bin/bash-testказалось, не имела никакого эффекта. Когда я запускал экземпляр bash-test, мой домашний каталог не был установлен, /rootи когда я запускал whoamiкоманду bash-test, мое...

13
Как мне удалить привилегии root в скриптах оболочки?

Параметр «--up» в OpenVPN обычно используется для маршрутизации и т. Д. И поэтому он обрабатывается до того, как OpenVPN отбрасывает привилегии root для запуска как никто. Тем не менее, я вызываю сценарии оболочки, которые должны запускаться как непривилегированный пользователь. Как мне это...

13
программа, принадлежащая пользователю root, с включенным битом setuid

Ping - это программа, которой владеет root с установленным битом идентификатора пользователя. $ ls -l `which ping` -rwsr-xr-x 1 root root 35752 Nov 4 2011 /bin/ping Насколько я понимаю, если пользователь запускает процесс проверки связи, тогда эффективный идентификатор пользователя изменится с...

13
Как работают реальные и эффективные идентификаторы пользователей?

Когда обычный пользователь хочет внести изменения в файл passwd, ему по setuid будет предоставлен эффективный доступ пользователя. Пользователь временно становится пользователем root и может редактировать пароль. Однако вы можете редактировать только свой пароль правильно, и не все остальные?...

10
Членство в группах и процессы setuid / setgid

Процессы, которые де-эскалируют привилегии через setuid()и setgid(), кажется, не наследуют членство в группах установленного ими uid / gid. У меня есть серверный процесс, который должен быть выполнен от имени пользователя root, чтобы открыть привилегированный порт; после этого он де-эскалирует к...

10
Какой пароль пользователя запрашивает `sudo`?

$ ls -l /usr/bin/sudo -rwsr-xr-x 1 root root 136808 Jul 4 2017 /usr/bin/sudo так что он sudoможет быть запущен любым пользователем, и любой пользователь, который запускается, sudoбудет иметь root в качестве эффективного идентификатора пользователя процесса, потому что установлен бит set-user-id...

9
Почему setuid не работает на исполняемом файле?

Я знаю, что включение setuid для скриптов имеет проблемы с безопасностью и поэтому неактивно по умолчанию, но ожидаю, что оно работает для исполняемых файлов. Я создал исполняемый файл, который показывает uid в качестве вывода, следуя инструкциям, описанным в этом посте: Разрешить setuid для...

8
Как запретить очистке chgrp «бит setuid»?

У нас есть образы Linux на основе RH; на котором я должен «применить» некоторый «специальный архив», чтобы обновить их до последней версии разработки нашего продукта. Человек, создавший архив, понял, что в нашем базовом изображении некоторые разрешения неверны; поэтому нам сказали бежать sudo chgrp...

8
SetUID бит не работает в Ubuntu?

Я предполагаю, что исполняемый файл с установленным битом SetUID должен быть запущен как его владелец, но я не могу воспроизвести его. Я попробовал следующее. $ cat prepare.sh cp / bin / bash. chown root.root bash chmod 4770 bash # Проверено $ sudo sh prepare.sh $ ./bash $ id -u 1000 $ выход $ $...

8
Почему бит setuid работает непоследовательно?

Я написал код: // a.c #include <stdlib.h> int main () { system("/bin/sh"); return 0; } скомпилировано с командой: gcc a.c -o a.out добавлен бит setuid: sudo chown root.root a.out sudo chmod 4755 a.out В Ubuntu 14.04, когда я работаю как обычный пользователь, я получил привилегию root. но в...