Флаг noexec для / tmp (OpenSUSE)

Реализация Powershell wget отличается от wget. Поэтому она не ведет себя как утилита UNIX/Linux wget.

Как указал пользователь 4556274, Powershell использует wget и curl в качестве псевдонимов для собственного Invoke-WebRequest .

Глядя на это (или запуская Get-Help wget под Powershell), можно увидеть, что флаг -O [имя файла] является приемлемым сокращением для -Output [filename] и что Invoke-WebRequest [URI] фактически возвращает объект, представляющий веб-страницу, а не записывает файл, имя которого основано на базовом имени URL-адреса.

Таким образом, это возвращает «ничего», если только вы не присвоите его переменной или не передадите его другой команде:

wget http://example.net/path/to/page.html

Но это доставляет веб-страницу «как и ожидалось»:

wget http://example.net/path/to/page.html -O page.html

1
09.10.2017, 16:24
1 ответ

Установка флага noexec на / tmp не дает реальных преимуществ в плане безопасности. Если программа содержит ошибки и выполняет неотвеченную программу в / tmp , она может сделать это, выполнив ее напрямую или передав ее в качестве аргумента интерпретатору. Если файл передается интерпретатору в качестве аргумента, он не обязательно должен быть исполняемым.

Установка флага noexec в / tmp может нарушить работу некоторых программ, которые рассчитывают записать временный исполняемый файл и выполнить его. Временный исполняемый файл может быть, например, скомпилированной программой, созданной на лету из некоторого исходного кода или промежуточного кода, или сценарием очистки.

0
28.01.2020, 01:01

Теги

Похожие вопросы