Так вот, недавно я пережил чудесное приключение исправления файла /usr/bin/sudo
после того, как его разрешения были изменены. Это было в системе, где он был намеренно перенастроен, чтобы затруднить получение root через другие обычные маршруты.
Теперь, чтобы предотвратить это в будущем, я могу просто запустить эти команды в задании cron root:
chown root:root /usr/bin/sudo
chmod 4755 /usr/bin/sudo
Однако в идеале этот набор команд должен был бы исправить не только файл sudo, но и все файлы, необходимые для эффективного получения прав root.
Мой вопрос:Есть ли скрипт или библиотека, которые я могу установить, чтобы обеспечить сохранение эффективного root-доступа?
Это для Fedora 26, работающей на виртуальной машине.
решение1
Вы можете сбросить все разрешения и права собственности пользователя/группы на RPM с rpm
помощью --setperms
и --setugids
соответственно.
Итак, из командной строки выполните:
$ sudo rpm --setperms -a
$ sudo rpm --setugids -a
Или вы можете поместить скрипт, запускающий их, в /etc/cron.daily
— но кажется необычным, что вам это понадобится. Вместо этого будьте немного более осторожны при запуске от имени root (и используйте спасательный загрузочный носитель, если вы когда-нибудь допустите эту ошибку в будущем).