Форум сайта python.su
Я и не предлагал ничего применять. Я показывал как в линуксе программе можно дать права что-то делать. Отвечал на поставленный вопрос, так сказать.
Офлайн
вот ещё вариант
user@user-u10:~/0$ echo 'touch from_root' > command.sh
user@user-u10:~/0$ echo 'sudo ./command.sh' > start.sh
user@user-u10:~/0$ chmod +x start.sh command.sh
user@user-u10:~/0$ ./start.sh
user@user-u10:~/0$ ls -l
итого 8
-rwxr-xr-x 1 user user 16 2010-08-02 10:25 command.sh
-rw-r--r-- 1 root root 0 2010-08-02 10:26 from_root
-rwxr-xr-x 1 user user 18 2010-08-02 10:25 start.sh
/etc/sudoers
ALL ALL = NOPASSWD: /bla/bla/command.sh
Отредактировано (Авг. 2, 2010 07:45:11)
Офлайн
o7412369815963Я не знал, что пользователей тоже можно указать как ALL. После внимательного прочтения man sudoers обнаружил что это действительно так. Спасибо!
/etc/sudoers ALL ALL = NOPASSWD: /bla/bla/command.sh
Офлайн
мои пользователи не знают пароля рута, поэтому вижу в основном 2 варианта:
1) тот который вы предложили - функциональная часть под рутом, морда с правами клиента. (без ввода пароля)
2) через судоерсы.
использую вариант 2. доволен.
Офлайн
Alex2ndrя так понял что в той статье дали право на весь ifconfig, и через подстановку различных аргументов получают “дыру”.
Вот например темка, где делают что-то подобное и случайно создают дыру в безопасности.
Офлайн
o7412369815963
по идее должно нормально работать
Офлайн
o7412369815963Если дали так, как показали выше, то теоретически можно дописать в данный файлик все что угодно и получим дырку. А как дописать есть много способов, т к command.sh у вас открыт для редактирования обычному пользователю user(под которым как я понимаю вы работаете в системе). Имхо достаточно продвинутого скрипта на веб странице. Впрочем думаю это просто исправить выставив соответсвующего владельца и права…
дал судо на свой скрипт который не принимает никаких параметров и выполняет чисто одну команду. по идее должно быть надежно.
Офлайн
o7412369815963
…
и передаем файлы start и command руту.
…
Офлайн