key_man (key_man) wrote in ru_linux,
key_man
key_man
ru_linux

Category:

Безопасность wine (ubuntu)

Добрый день.

Как не странно, что учитывая интерес к этой проблеме, я не нашел не одного нормальной инструкции как этого добиться. Много жесткого троллинга и немного информации для направления раскопок. Предлагаю вам помочь мне и всем нам раскрыть данный вопрос, и сделать такую инструкцию.

Что я пока нарыл:

Первое что надо сделать это ограничить область действия wine папкой ~/.wine:
1-Удалить в настройках wine виртуальный диск Z: (к которому прописан корень) и другие диски кроме С:

2-Воспользуйтесь winecfg и переключите ассоциации на содержимое виртуального диска C
(К примеру, /home/user/.wine/drive_c/My Documents) это надо как минимум сейвов игрушек в "Моих Документах".

3-root'ом закрыть права на запись и в часть файлов в ~/.wine/
Пусть пишет себе в ~./wine/drive_c а остальные дирректории только смотрит.

4- Сделать разный wineprefix для каждой проги.

5- Сделать wine делать readonly

6- убрать поддержку autorun.inf на сменных носителях

7- убрать поддержку autorun.inf на сменных носителях под wine

8- Не создавать в папке ~/.wine симлинков на важные ресурсы.

Дальше остается 2 важных вопроса. Это ограничение прав и Доступ wine и его программ в интернет и к ним из интернета.

9- Для блокирования интернета используем iptables.нашел следующий пример:
А. Выделяешь все wine-программы в отдельную учётную запись (У меня, например, браузер, почтовый клиент, чатилка, wine и многое другое - всё с отдельными uid'ами).
Б. Настраиваешь с помощью setfacl -d или групп доступ (чтобы удобно было).
В. iptables -A OUTPUT -m owner --uid-owner wine -j REJECT --reject-with icmp-net-prohibited

10- Для ограничения прав используют либо ACL, либо SELinux, либо Apparmor,либо Chroot.

пример для ACL:

А. Убеждаешься, что в ядре стоят опции, включающия ACL глобально и для твоей файловой системы CONFIG_FS_POSIX_ACL=y CONFIG_{EXT{2,3,4}_FS,REISER_FS,JFS,XFS,TMPFS,NFS,...}_POSIX_ACL=y

Б. Ставишь пользовательскую часть. "apt-get install acl". Если нет, пробуем http://www.kernel.org/pub/linux/utils/fs/xfs/acl/acl_2.2.47-1.tar.bz2.

В. "mount -o remount,acl /", прописываешь "acl" в /etc/fstab

Г. "setfacl -m u:qqq:r-x /path/to/file" - дать пользователю qqq доступ к /path/to/file "setfacl -dRu g:www:rwx /path/to/dir" - сделать так, что все новые файлы в /path/to/dir будут по умолчанию разрешать доступ к себе от группы www. R - рекурсия. Подробнее см в руководстве.

примечание к Chroot:
Лучше отрезать доступ от внешнего мира через chroot/jail дабы вирусы не видели suid'ные программы и не писал во все места где есть право для записи на всех. В идеале, конечно, лучше использовать MAC.


Это пока все что я нарыл, надеюсь на вашу помощь в расширении этой информации которая всем нам пригодится.
Очень бы хотелось получить информацию о следующем:

1) непонятно как реализовать пункты 3,4,5,6,7,9,10
2) что именно лучше выбрать для ограничения прав.
3) расписать полную установку и настройку iptables для wine
4) расписать полную установку и настройку софтины для блокировки прав.



------------------------------------------------------------------------------------------------------
PS надеюсь на ваше понимание относительно моих знаний в этой области, и на ваше желание помочь сообществу в целом. :)
Subscribe
  • Post a new comment

    Error

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

    When you submit the form an invisible reCAPTCHA check will be performed.
    You must follow the Privacy Policy and Google Terms of use.
  • 44 comments