On Wed, Aug 28, 2019 at 09:50:18PM +0200, Alexey Gladkov wrote: > On Wed, Aug 28, 2019 at 09:15:52PM +0300, Dmitry V. Levin wrote: > > Изменение по сути одно и оно точечное. > > > > Содержимое hasher/chroot/dev будет недоступно процессам в чруте, > > поскольку у них будет свой /dev на tmpfs, создаваемый каждый раз > > при запуске этих процессов в их mount namespace и, соответственно, > > недоступный процессам снаружи. > > Ну setns всё-таки есть :) Это процессы разных пользователей, и setns не сработает с hidepid=1. > > > Я не специалист в hasher-priv :) > > > > Тогда я тоже. :) > > А почему теперь /dev/shm обязателен и не отключаем ? Раньше же без него > обходились. Раньше его неотключаемо создавал hasher, теперь hasher-priv. В принципе, его можно отключить через /etc/hasher-priv/fstab, написав какой-нибудь mode=755, но зачем? > http://git.altlinux.org/tasks/236645/gears/340/git?p=git;a=blob;f=hasher-priv/mount.c;h=5b99354f6c64ba440980fe27a9f3738130a9be6e;hb=1a2f923ab0ca822de9406198ed409c79eb000ce7#l284 > > В requested_mountpoints ты проверяешь и игнорируешь /dev/shm, но не сам > /dev. Хотя даже комментарий намекает :) На тот случай, если нерадивый админ добавит /dev в allowed_mountpoints? OK, харденинга много не бывает. > http://git.altlinux.org/tasks/236645/gears/340/git?p=git;a=blob;f=hasher-priv/mount.c;h=5b99354f6c64ba440980fe27a9f3738130a9be6e;hb=1a2f923ab0ca822de9406198ed409c79eb000ce7#l304 > > Дим, зачем ты отдельно проходишь по всему mount_vec, который заполняешь > чуть выше ? Разве не проще сделать: > > --- a/hasher-priv/mount.c > +++ b/hasher-priv/mount.c > @@ -301,6 +301,8 @@ setup_mountpoints(void) > mpoint_vec = > xgrowarray(mpoint_vec, &mpoint_allocated, > sizeof(*mpoint_vec)); > + if (!strcmp("/dev/pts", item)) > + dev_pts_mounted = 1; > mpoint_vec[mpoint_size++] = item; > } else { > error(EXIT_FAILURE, 0, Это же оптимизация! :) -- ldv