[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: GRSecurity в Debian



Пришлось отказаться от Pax. Причины тому: с PAX_MPROTECT не загружается KDE
(дальше "первого значка").
Это сильно уменьшает полезность PAX.
PAX_UDEREF и PAX_KERNEXEC также пришлось отключить, чтобы работали ВМ.
Не все программы корректно работают с рандомизацией АП и неисполняемыми
страницами по умолчанию работают, поэтому приходится часто применять paxctl.
Он изменяет ELF заголовок, потому все изменения будут потеряны при обновлении, а
ещё будет ругаться антируткит.
Драйвер видеокарты пришлось пропатчить и пересобрать вручную.
Из всех гипервизоров заработал только KVM+QEMU. VirtualBox пересобрал модуль
нормально, после издевательств запустился, но, при попытке что-то загрузить,
вывалился в "медитацию".
VmWare отказался пересобирать драйвера. Нашёл патч в интернетах, от которого
толку ноль (просто обход const, добавленного Pax для структур ядра).
Пропатчил модули VmWare вручную добавив pax_kernel_open(), по примеру драйвера
видеокарты.
Получилось нечто вроде такого
(/usr/lib/vmware/modules/nwsr/vmci-only/linux/driver.c):
   pax_open_kernel();
   *(void **)&vmuser_fops.owner = THIS_MODULE;
   *(void **)&vmuser_fops.poll = LinuxDriverPoll;
#ifdef HAVE_UNLOCKED_IOCTL
   *(void **)&vmuser_fops.unlocked_ioctl = LinuxDriver_UnlockedIoctl;
#else
   *(void **)&vmuser_fops.ioctl = LinuxDriver_Ioctl;
#endif
#ifdef HAVE_COMPAT_IOCTL
   *(void **)&vmuser_fops.compat_ioctl = LinuxDriver_UnlockedIoctl;
#endif
   *(void **)&vmuser_fops.open = LinuxDriver_Open;
   *(void **)&vmuser_fops.release = LinuxDriver_Close;
   pax_close_kernel();


VmWare скомпилировал модули, загрузил их и запустился, но, при попытке загрузки
ОС, просто перезагружал хост-систему. :-(
К тому же, чтобы запустить его от пользователя, надо было править запускающий
скрипт.
Слишком много телодвижений.

Skype запускался, но так и оставался "в вечном поиске".


Короче, остался только GrSecurity с ограничениями на песочницу и ещё некоторыми.
Эксперимент показал отрицательный результат. :-|
Установить у меня получилось только наполовину.
С другой стороны, при отсутствии X-ов, KDE, нескольких ВМ, проприетарного
"скайпа", кучи браузеров (которые пришлось отдельно настраивать) и прочего
софта, установить и пользовать возможно.
Но со всем этим у меня получилось это сделать только наполовину.
Для того, чтобы полноценно было возможно использовать патч, нужна его поддержка
на уровне дистрибьютива, как в Gentoo...


Reply to: