Назад | Перейти на главную страницу

sudo chown - предотвратить ../

Необходимо разрешить пользователю копировать файлы в определенном каталоге с помощью sudo. Это помогает:

user1 ALL= NOPASSWD: /bin/chown -[RPfchv] user2\:user2 /opt/some/path/[a-zA-Z0-9]*

Но это не мешает пользователю быть подлым и делать что-то вроде:

[user1 @ rhel ~] sudo / bin / chown -v user2: user2 /opt/some/path/../../../etc/shadow

Как от этого уберечься?
Машина работает под управлением Linux (Red Hat)

sudo создает неотъемлемые риски безопасности, и, как правило, не рекомендуется предоставлять его пользователям, у которых нет высокого уровня доверия.

Почему бы не ограничиться простым рекурсивным chown для родительского каталога?

sudoers в основном использует подстановку. Согласно man-странице, он не соответствует / по подстановочным знакам. Подробнее на странице руководства.

Что касается более продвинутого решения, то сценарий должен помочь.

[root@server wmoore]# egrep '^wmoore' /etc/sudoers
wmoore ALL= NOPASSWD: /bin/chown -[RPfchv] wmoore\:wmoore /home/wmoore/[a-zA-Z0-9]*

[wmoore@server ~]$ sudo -l
User wmoore may run the following commands on this host:
    (root) NOPASSWD: /bin/chown -[RPfchv] wmoore:wmoore /home/wmoore/[a-zA-Z0-9]*

[wmoore@server ~]$ sudo chown -R wmoore:wmoore /home/wmoore/../../tmp/test
Sorry, user wmoore is not allowed to execute '/bin/chown -R wmoore:wmoore /home/wmoore/../../tmp/test' as root on server.

О верно. пакет sudo:

Name        : sudo                         Relocations: (not relocatable)
Version     : 1.6.9p17                          Vendor: CentOS
Release     : 3.el5_3.1                     Build Date: Tue 24 Mar 2009 07:55:42 PM EDT

CentOS5.

Попробуйте создать сценарий замены chroot, который проверяет ввод перед выполнением функции chown (). Затем добавьте этот сценарий вместо / bin / chown в файл sudoers. Затем вы можете настроить псевдоним chown для пользователей, если это необходимо.

С другой стороны, уверены ли вы, что вашим пользователям нужно выполнять chown с правами root? Может быть, биты sgid или suid в каталогах решат вашу проблему?