Обмежте команди sudoers командами sudo -i або sudo -s


0

Чи є спосіб обмежити наступні команди sudo -iабо sudo -sу sudoersфайлі?

Коли я додаю !/usr/bin/sudo -iабо !/usr/bin/sudo -s, sudoвсе ще дозволяє користувачам виконувати команду.


1
А як щодо sudo /bin/bashабо sudo /bin/zshчи sudo /some/renamed/bash? Якщо ви хочете обмежити користувачів, вам слід додати дозволених команд.
Даніель Б

Ви говорите, що я повинен мати білий список, а не чорний список?
alisacworld

Відповіді:


-1

Я знаю, що це не є гарною відповіддю, тому що я не можу безпосередньо відповісти на ваше запитання, але в man sudoersрозділі під назвою Запобігання втечам від снарядів, який, на мою думку, може вас зацікавити:

Після того як sudo виконує програму, ця програма може робити все, що заманеться, включаючи запуск інших програм. Це може бути проблемою безпеки, оскільки це не рідкість, коли програма дозволяє заборонити оболонки, що дозволяє користувачеві обходити контроль доступу та ведення журналу Sudo. До загальних програм, що дозволяють виконувати функції оболонок оболонок, є оболонки (очевидно), редактори, пагінатори, поштові та термінальні програми.

Існує два основних підходи до цієї проблеми:

   restrict  Avoid giving users access to commands that allow the user to
             run arbitrary commands.  Many editors have a restricted mode
             where shell escapes are disabled, though sudoedit is a better
             solution to running editors via sudo.  Due to the large
             number of programs that offer shell escapes, restricting
             users to the set of programs that do not is often unworkable.

   noexec    Many systems that support shared libraries have the ability
             to override default library functions by pointing an
             environment variable (usually LD_PRELOAD) to an alternate
             shared library.  On such systems, sudo's noexec functionality
             can be used to prevent a program run by sudo from executing
             any other programs.  Note, however, that this applies only to
             native dynamically-linked executables.  Statically-linked
             executables and foreign executables running under binary
             emulation are not affected.

-1

Чорний список у судорах майже напевно є марною тратою часу. Просто занадто багато способів вирішення.

Для здійснення будь-яких обмежень білий список є єдиним практичним підходом. Навіть тоді будьте уважні до дозволів для будь-яких команд, включених у білий список (потрібно буде регулярний аудит цього), будь-яких команд, які можуть дозволити скасування оболонки, та будь-яких команд, які можуть записувати нові / існуючі файли.

Так, наприклад, це погані ідеї:

  • дозволяючи sudo доступу виконувати скрипт, що належить користувачеві
  • надання доступу судо до "менше"
  • надання доступу sudo до "cp"
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.