Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: tmp с noexec  (Прочитано 1941 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн alixey

  • Автор темы
  • Любитель
  • *
  • Сообщений: 64
    • Просмотр профиля
tmp с noexec
« : 28 Октября 2021, 12:01:25 »
С давних времен привык монтировать /tmp с флагом noexec.
Когда-то давно прочитал такую рекомендацию для безопасности, она показалась мне разумной.
Но периодически случаются проблемы с инсталляционными скриптами, которые генерируются в tmp и не могут запуститься.
Можно ли это как-то обойти - временно разрешить запуск, не разрешая глобально на уровне раздела?
Или лучше убрать флаг noexec?

Оффлайн Dzhoser

  • Старожил
  • *
  • Сообщений: 2620
    • Просмотр профиля
Re: tmp с noexec
« Ответ #1 : 28 Октября 2021, 16:56:23 »
На время инсталляции соответственно нужно перемонтировать без флага noexec. В этом и заключается безопасность, чтобы без вашего ведома ничего не установилось.

Оффлайн qpdb

  • Активист
  • *
  • Сообщений: 262
  • xUbuntu 20.04
    • Просмотр профиля
Re: tmp с noexec
« Ответ #2 : 28 Октября 2021, 18:19:55 »
Приветствую!

От всего не убережёшься😞…

А набор команд такой:

mount -o remount,exec /tmp
mount -o remount,noexec /tmp
mount|grep noexec
findmnt -l|grep noexec

2021 Oct 28; 11:19 AM

Оффлайн alixey

  • Автор темы
  • Любитель
  • *
  • Сообщений: 64
    • Просмотр профиля
Re: tmp с noexec
« Ответ #3 : 29 Октября 2021, 16:22:21 »
Перемонтирование не совсем то, я думал, что это можно сделать на уровне прав или атрибутов.
Я просто отдельные подкаталоги переношу в /var/tmp_exec, а затем создаю на них в /tmp симлинк.
Но перемонтирование с опцией noexec наверное будет удобнее.

Оффлайн Dzhoser

  • Старожил
  • *
  • Сообщений: 2620
    • Просмотр профиля
Re: tmp с noexec
« Ответ #4 : 29 Октября 2021, 17:00:36 »
Параметр «NOEXEC»  не разрешает выполнение исполняемых двоичных файлов в смонтированной файловой системе, если что.

Оффлайн Peter_I

  • Старожил
  • *
  • Сообщений: 2419
    • Просмотр профиля
Re: tmp с noexec
« Ответ #5 : 29 Октября 2021, 21:04:43 »
Dzhoser, да, по "man mount" это так, но я замечал, что в этом случае и скрипты на bash не запускаются.
« Последнее редактирование: 30 Октября 2021, 12:02:20 от Peter_I »
Пётр.

Оффлайн Dzhoser

  • Старожил
  • *
  • Сообщений: 2620
    • Просмотр профиля
Re: tmp с noexec
« Ответ #6 : 29 Октября 2021, 22:22:25 »
Если в скрипте вызывается бинарник или распаковка архива, то да. В остальных случаях у меня работают.

Оффлайн alixey

  • Автор темы
  • Любитель
  • *
  • Сообщений: 64
    • Просмотр профиля
Re: tmp с noexec
« Ответ #7 : 30 Октября 2021, 12:36:15 »
Нет.
Не запускается ничего, ни бинарник, ни скрипт, если на соответствующих файлах стоит атрибут x.
Но скрипты можно запустить, передав их в интерпретатор: sh script.sh или php script.php (даже если этот скрипт без атрибута x, или находится на томе с опцией noexec).

Оффлайн Dzhoser

  • Старожил
  • *
  • Сообщений: 2620
    • Просмотр профиля
Re: tmp с noexec
« Ответ #8 : 30 Октября 2021, 14:54:09 »
alixey, вы сами себе противоречите и привели условия при которых скрипты выполняются. Бинарники да блокируются. В этом и смысл ключа noexec. Если нужно обсуждение welcome https://forum.ubuntu.ru/index.php?topic=228795.0;all
« Последнее редактирование: 30 Октября 2021, 14:57:12 от Dzhoser »

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 27814
    • Просмотр профиля
Re: tmp с noexec
« Ответ #9 : 31 Октября 2021, 18:06:55 »
Dzhoser, да, по "man mount" это так, но я замечал, что в этом случае и скрипты на bash не запускаются.
Параметр «NOEXEC»  не разрешает выполнение исполняемых двоичных файлов в смонтированной файловой системе, если что.
Параметр noexec не разрешает прямое выполнение кода.
Если ты сделаешь sh -c /путь/к/файлу, он будет выполнен.
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

Оффлайн Dzhoser

  • Старожил
  • *
  • Сообщений: 2620
    • Просмотр профиля
Re: tmp с noexec
« Ответ #10 : 01 Ноября 2021, 08:17:59 »
AnrDaemon, можно ссылку на официальную документацию где указано что  "Параметр noexec не разрешает прямое выполнение кода". В man mount указано только
 
Цитировать
noexec Do  not  permit  direct execution of any binaries on the mounted filesystem.
Цитировать
noexec Не разрешает прямое выполнение любых двоичных файлов в смонтированной файловой системе.
Скрипт не является двоичным файлом и выполняется интерпритатором bash или другим.
« Последнее редактирование: 01 Ноября 2021, 08:30:21 от Dzhoser »

Оффлайн Domitory

  • Активист
  • *
  • Сообщений: 357
    • Просмотр профиля
Re: tmp с noexec
« Ответ #11 : 01 Ноября 2021, 09:47:22 »
Скрипт не является двоичным файлом и выполняется интерпритатором bash или другим

Скрипт может быть исполняемым файлом как и любой другой файл. Система проверяет является ли файл исполняемым и если при монтировании  диска был задан параметр noexec то в исполнении файла будет отказано, но если в начале скрипта задана строка вызова #! то система понимает что это скрипт и даёт выполнять его. Как то так вроде. И еще зависит от интерпретатора командной строки.

Оффлайн ALiEN175

  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 5074
  • The truth is out there
    • Просмотр профиля
Re: tmp с noexec
« Ответ #12 : 01 Ноября 2021, 10:04:31 »
Dzhoser, Domitory, А проверить, прежде чем заявлять утверждения?
(Нажмите, чтобы показать/скрыть)

« Последнее редактирование: 01 Ноября 2021, 10:13:55 от ALiEN175 »
ASUS P5K-C :: Intel Xeon E5450 :: 8 GB RAM :: Radeon R7 260X :: XFCE
SAMSUNG N150 :: Intel Atom N450 :: 2 GB RAM :: Intel GMA3150 :: XFCE

Оффлайн Domitory

  • Активист
  • *
  • Сообщений: 357
    • Просмотр профиля
Re: tmp с noexec
« Ответ #13 : 01 Ноября 2021, 10:54:08 »
прежде чем заявлять утверждения

Точно. Не дает исполнять если смонтировано с noexec. Только если явно указывать выполнение скрипта. Что в принципе логично. Что то я попутал.

Оффлайн ALiEN175

  • СуперМодератор
  • Старожил
  • *
  • Сообщений: 5074
  • The truth is out there
    • Просмотр профиля
Re: tmp с noexec
« Ответ #14 : 01 Ноября 2021, 17:45:59 »
Dzhoser, $: cd /mnt             
$: ls -l                     
итого 20
drwx------ 2 root root 16384 ноя  1 09:55 lost+found
-rwxr-xr-x 1 root root    36 ноя  1 09:57 script
$: ./script
zsh: Отказано в доступе: ./script
$:

« Последнее редактирование: 01 Ноября 2021, 20:06:33 от ALiEN175 »
ASUS P5K-C :: Intel Xeon E5450 :: 8 GB RAM :: Radeon R7 260X :: XFCE
SAMSUNG N150 :: Intel Atom N450 :: 2 GB RAM :: Intel GMA3150 :: XFCE

 

Страница сгенерирована за 0.053 секунд. Запросов: 25.