WINE и безопасность (каким образом ограничить программы запускаемые в .wine)

Вопросы настройки, запуск любых Windows-программ, кроме игр

Модератор: Модераторы разделов

YYY
Сообщения: 66
ОС: slitaz

WINE и безопасность

Сообщение YYY »

Здравствуйте!

Может кто сталкивался/читал/слышал ?
В wine 2 диска
С: это ../drive_c
Z: это /
Необходимо сделать диск Z: как только для чтения.
Понятно что я могу Z: убрать или указать как некий каталог у пользователя и потом в этот каталог нужное закидывать, но так не удобно.
А вот только для чтения было самое то...
(Понятно что туда где пользователю запрещено писать и вайн не попишет, но хочется еще более ограничить)
Пробовал указать диск как CD-rom - не прокатило...

Может есть хитрый способ?
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: WINE и безопасность

Сообщение drBatty »

YYY писал(а):
01.02.2010 11:41
(Понятно что туда где пользователю запрещено писать и вайн не попишет, но хочется еще более ограничить)

куда уж больше?
ИМХО проще всего сделать ещё одного юзера, для wine.
или убейте

Код: Выделить всё

~/.wine/dosdevices/z\:

(только у юзера всё равно останется доступ к /)
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
YYY
Сообщения: 66
ОС: slitaz

Re: WINE и безопасность

Сообщение YYY »

drBatty писал(а):
01.02.2010 12:38
YYY писал(а):
01.02.2010 11:41
(Понятно что туда где пользователю запрещено писать и вайн не попишет, но хочется еще более ограничить)

куда уж больше?

Чтоб если что поймают юзеры в вайне - не разбежалось по сетке и флешкам :)

drBatty писал(а):
01.02.2010 12:38
ИМХО проще всего сделать ещё одного юзера, для wine.

Тоже задачу не решит. Что от своего что от чужого

drBatty писал(а):
01.02.2010 12:38
или убейте

Код: Выделить всё

~/.wine/dosdevices/z\:

(только у юзера всё равно останется доступ к /)

Если Z:\ убить и оставить C: только
то доступа к корню не будет, но это не удобно.
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: WINE и безопасность

Сообщение drBatty »

YYY писал(а):
01.02.2010 13:37
Чтоб если что поймают юзеры в вайне - не разбежалось по сетке и флешкам smile.gif

Цитата(drBatty @ Feb 1 2010, в 12:38) *
ИМХО проще всего сделать ещё одного юзера, для wine.

Тоже задачу не решит. Что от своего что от чужого

вы можете запретить маздайному юзеру выход в сетку и доступ к флешкам. кроме того, вы можете закрыть доступ вообще ко всему (кроме уютного загончика /home/mustdie)

YYY писал(а):
01.02.2010 13:37
Если Z:\ убить и оставить C: только
то доступа к корню не будет, но это не удобно.

вы определитесь, чего вы хотите. у вас сейчас есть доступ к корню только для чтения. чего вам ещё надо? если убрать Z - то вам "не удобно". Как это должно выглядеть?

ЗЫЖ если убить Z:, то доступ к корню БУДЕТ!
только что проверил - wine WinRAR.exe уверенно ползает по всему диску (точнее по всему открытому для юзера запустившего wine.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
YYY
Сообщения: 66
ОС: slitaz

Re: WINE и безопасность

Сообщение YYY »

drBatty писал(а):
01.02.2010 14:32
ЗЫЖ если убить Z:, то доступ к корню БУДЕТ!
только что проверил - wine WinRAR.exe уверенно ползает по всему диску (точнее по всему открытому для юзера запустившего wine.


Поползать по каталогам корня и прочитать файл это не одно и тоже.
Пример убрал Z: \
теперь не вижу файл и не могу его открыть, писать в /tmp тоже не могу
До того как З убрал все читалось писалось
http://s002.radikal.ru/i200/1002/e1/2f25a7d19b32.jpg

То что не пишет это замечательно...
Но вот и не читает :)
Спасибо сказали:
Аватара пользователя
SLEDopit
Модератор
Сообщения: 4824
Статус: фанат консоли (=
ОС: GNU/Debian, RHEL

Re: WINE и безопасность

Сообщение SLEDopit »

YYY писал(а):
01.02.2010 13:37
но это не удобно.
жаль, я так хотел вам предложить chroot =)
UNIX is basically a simple operating system, but you have to be a genius to understand the simplicity. © Dennis Ritchie
The more you believe you don't do mistakes, the more bugs are in your code.
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: WINE и безопасность

Сообщение drBatty »

YYY писал(а):
01.02.2010 19:52
То что не пишет это замечательно...
Но вот и не читает

прикольно - WinRAR даже файлов не видит - только каталоги почему-то
:)
SLEDopit писал(а):
01.02.2010 20:04
жаль, я так хотел вам предложить chroot =)

ну зачем!?
я надеялся культурно к этому подвести... ;)
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
YYY
Сообщения: 66
ОС: slitaz

Re: WINE и безопасность

Сообщение YYY »

drBatty писал(а):
01.02.2010 20:12
SLEDopit писал(а):
01.02.2010 20:04
жаль, я так хотел вам предложить chroot =)

ну зачем!?
я надеялся культурно к этому подвести... ;)


Он тоже проблемы не решает...

ЗЫ: Пошел читать про apparmor и selinux
Спасибо сказали:
Аватара пользователя
denel
Сообщения: 497
ОС: Gentoo Linux

Re: WINE и безопасность

Сообщение denel »

Почитал я тут немного и подумал, ну не маразм ли? Все политики можно провернуть разграничением прав, ACL, можно достичь аналогичного, что и в венде.
А у меня вот немного другой вопрос есть. В венде существуют локальные политики безопасности, политики ограничения на запуск приложений, т.е. можно сказать что можно запускать программы только с диска C:\, а вот с остальных мест ничего запускать нельзя! Можно ли так сделать и в вайне? Это очень помогает от того, что вирусов пользователь может нахватать, троянов, и уже в активном режиме насовать их в общие ресурсы (не однопользовательское рабочее место, к тому же есть много общих сетевых ресурсов (ну в *nix их видно после монтирования как локальные :) ))
ОФФТОП. И кстати можно ли сделать что то аналогичное и в Bash? Чтобы бинарники не запускались ни в какую с определенных мест, делал опцию монтирования /home noexec, бинарники запускаться перестали, но sh bin по-прежнему запускал нормально.
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: WINE и безопасность

Сообщение drBatty »

denel писал(а):
02.02.2010 18:36
ОФФТОП. И кстати можно ли сделать что то аналогичное и в Bash? Чтобы бинарники не запускались ни в какую с определенных мест, делал опцию монтирования /home noexec, бинарники запускаться перестали, но sh bin по-прежнему запускал нормально.

sh bin и не запускается. запускается sh, которая выполняет текстовый файл bin. не сложно догадаться, что для этого нужно:
1) право запуска sh
2) право чтения bin
этого необходимо и достаточно.
а в венде разве не так?
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
denel
Сообщения: 497
ОС: Gentoo Linux

Re: WINE и безопасность

Сообщение denel »

drBatty писал(а):
02.02.2010 21:17
denel писал(а):
02.02.2010 18:36
ОФФТОП. И кстати можно ли сделать что то аналогичное и в Bash? Чтобы бинарники не запускались ни в какую с определенных мест, делал опцию монтирования /home noexec, бинарники запускаться перестали, но sh bin по-прежнему запускал нормально.

sh bin и не запускается. запускается sh, которая выполняет текстовый файл bin. не сложно догадаться, что для этого нужно:
1) право запуска sh
2) право чтения bin
этого необходимо и достаточно.
а в венде разве не так?

т.е. если убрать право на использование sh, система останется работоспособной для пользователя не давая запускать собственные бинарники?
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: WINE и безопасность

Сообщение drBatty »

denel писал(а):
03.02.2010 17:25
т.е. если убрать право на использование sh, система останется работоспособной для пользователя

не знаю.
может юзер использует GUI, которая сама запускает так скрипты.
а может и не использует. а может и не запускает... в терминал юзер видимо не залогинится, а вот запускать бинарные файлы сможет.
запускаю-же я как-то свою su
-rws--x--x 1 root root 31836 2008-03-24 23:11 /bin/su*
как видите, читать я её не могу.
нужно попробовать... только учтите, юзер - существо хитрое и изворотливое: он-же может и так сделать:
sed -f script
или ещё как-нибудь :(

denel писал(а):
03.02.2010 17:25
система останется работоспособной для пользователя не давая запускать собственные бинарники?

бинарники - это другое, и запускаются они по другому - право чтения не требуется, нужно только право исполнения.
Кстати, то-же и при запуске скриптов так:
./my_script
вот только тут он запустится, а его запуск - выполнение sh (ну или что там в sha-bang написано), и если sh нельзя - будет ошибка, если sh можно, но нельзя ЧИТАТЬ файл, то файл запустится, запустится sh, и будет ошибка в sh.

Кстати, попробуйте сами ;)


ЗЫЖ sh bin - это запуск ТЕКСТОВОГО файла bin, точнее начало файла sh воспринимает как текст. первую строку - точно. Далее sh может вызвать любой другой интерпретатор, который может являться вирусом или руткитом.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
denel
Сообщения: 497
ОС: Gentoo Linux

Re: WINE и безопасность

Сообщение denel »

Перемонтировал home с опцией noexec, /home/user/script.sh запускаться перестал, но /bin/sh /home/user/script.sh - работает на ура.
К сожалению /bin/sh это всего лишь ссылка на /bin/bash, который является интерпретатором для пользователя, запрет на исполнение его ведет к тому, что под этим пользователем залогиниться даже становится не возможно. Нужно как я понимаю настроить сам Bash, чтобы он запускал бинарники (будь то хоть текстовые файлы - скрипты) только с определенных директорий, никто не знает как это сделать?
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: WINE и безопасность

Сообщение drBatty »

denel писал(а):
04.02.2010 10:43
К сожалению /bin/sh это всего лишь ссылка на /bin/bash, который является интерпретатором для пользователя, запрет на исполнение его ведет к тому, что под этим пользователем залогиниться даже становится не возможно.

естественно.
denel писал(а):
04.02.2010 10:43
Нужно как я понимаю настроить сам Bash, чтобы он запускал бинарники (будь то хоть текстовые файлы - скрипты) только с определенных директорий, никто не знает как это сделать?

ну можно подменить /bin/bash на свой скрипт, который будет проверять право выполнения перед запуском
хотя это мало что даст - ведь переименовав /bin/bash в /bin/bash1, мы дадим возможность юзеру напрямую написать /bin/bash1 script.sh
Как это исправить - не знаю. Разве что ACL
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали: