LINUX.ORG.RU
ФорумTalks

Зачем нужен noexe?


0

0

Собирал новое ядро, случайно включил эту фичу. После чего большинство программ под wine перестали работать, падали с сообщением вида:
fixme:seh:check_no_exec No-exec fault triggered at ..., enabling work-around
Проблема решается пересборкой ядра, либо параметром noexe=off , но возник вопрос: а можно ли, в принципе, работать в wine с таким ядром? И для каких задач предназначен noexe?

★★★★

А где оно там? Ну а вообще, строго говоря, нефиг пересобирать ядра. Ибо рулить должно дистрибутивное. А в случае гентушников - наверняка найдутся патчи для вайна, кои включит флаг "hardened", с воркэраундом.

Gharik
()

чтото вроде защиты от исполнения стека вроде. справку почитать не пробовал?

LowLevel
()

Это (по-моему) защита от исполнения кода в стеке, а вайну надо исполнять там код. Мне кажется, ты просто можешь ее выключить (можно передать параметром ядра при загрузке noexec32=off) и не думать о ней.

Shaman007 ★★★★★
()

у пакса работа аналога этой фичи регулируется через специальный атрибут экзешника....

zort
()
Ответ на: комментарий от Gharik

> А в случае гентушников - наверняка найдутся патчи для вайна, кои включит флаг "hardened", с воркэраундом.

Не подскажешь, где искать?

acheron ★★★★
() автор топика
Ответ на: комментарий от Shaman007

> Это (по-моему) защита от исполнения кода в стеке,

В любых динамических массивах данных. Или они все и есть в стеке?

> ты просто можешь ее выключить.

См. исходное сообщение. Так и сделал. Вопрос был: "а что я не смогу делать после этого?"

> noexec32=off

А вот за это спасибо. В документации к ядру этого нету, а глубоко в исходниках я не копался. Я правильно понимаю, что noexec32=off noexec=on оставят защиту для 64-битных процессов, отключив её для 32-битных? Может, пригодится когда...

acheron ★★★★
() автор топика
Ответ на: комментарий от acheron

>> noexec32=off 

> А вот за это спасибо. В документации к ядру этого нету

linux-2.6.23/Documentation/kernel-parameters.txt

>        noexec          [X86-32,X86-64]
                        noexec=on: enable non-executable mappings (default)
                        noexec=off: disable nn-executable mappings

stassats ★★★★
()
Ответ на: комментарий от stassats

> linux-2.6.23/Documentation/kernel-parameters.txt

Отсюда я узнал только про noexec, который и для 32- и для 64-разрядных программ. См. первое сообщение.

acheron ★★★★
() автор топика
Ответ на: комментарий от acheron

> Не подскажешь, где искать?

Ну...

darkstar ~ # ls -l /usr/portage/app-emulation/wine/files/ | grep ssp
-rw-r--r-- 1 root root 351 2006-02-03 03:06 wine-gentoo-no-ssp.patch
-rw-r--r-- 1 root root 676 2006-01-27 03:35 wine-no-ssp.patch

Может это именно оно, а может и не оно, поскольку 64-ибтный вайн по сути никому нафиг не сдался..

Gharik
()
Ответ на: комментарий от Gharik

> -rw-r--r-- 1 root root 351 2006-02-03 03:06 wine-gentoo-no-ssp.patch
> -rw-r--r-- 1 root root 676 2006-01-27 03:35 wine-no-ssp.patch

Делают они одно и то же. 1-й накладывается автоматически, 2-ой в ебилде не упоминается.

> 64-ибтный вайн по сути никому нафиг не сдался

В смысле? Имитирующий Windows XP 64 -- возможно (утверждать не буду), но речь идёт об имитирующем 32-битные Windows.

acheron ★★★★
() автор топика
Ответ на: комментарий от acheron

> > Это (по-моему) защита от исполнения кода в стеке,

> В любых динамических массивах данных. Или они все и есть в стеке?

В любых данных. И в том числе в статических. А wine что делает? Загружает exe'шник в память (т. е. читает данные из файла и пишет в память) и передаёт ему управление.

Nihilist
()
Ответ на: комментарий от Nihilist

> А wine что делает? Загружает exe'шник в память (т. е. читает данные из файла и пишет в память) и передаёт ему управление.

Это я понял. Вопрос был: "Каким программам нужна такая защита? Кто умеет ею правильно пользоваться?"

acheron ★★★★
() автор топика
Ответ на: комментарий от acheron

> Я правильно понимаю, что noexec32=off noexec=on оставят защиту для 64-битных процессов, отключив её для 32-битных?

Экспериментально выяснил, что при noexec32=off noexec=on программы под wine не работают.

acheron ★★★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.