On [Wed, 19.09.2007 17:53], Dmitry V. Levin wrote: > On Wed, Sep 19, 2007 at 04:30:03PM +0300, Kirill A. Shutemov wrote: > > On [Wed, 19.09.2007 17:19], Dmitry V. Levin wrote: > > > On Wed, Sep 19, 2007 at 04:14:33PM +0300, Kirill A. Shutemov wrote: > [...] > > > > nologin.c: Rewrite without glibc at all (#10729) > > > > > > > > Не совсем понятно зачем и как это могло пофиксить баг. Можно ли вернуть > > > > обратно glibc? > > > > > > Если вернуть обратно glibc, то вернётся #10729. > > > > А что является причиной этого бага? > > Неправильная статическая линковка без libc. Если собрать с -nostartfiles не статикой, риск сохраниться? > Зачем нужно линковать nologin без libc? Приведу цитату (лень переводить): > > "The dynamic linker and libc startup code checks a number of environment > variables, which may seriously alter the behavior of the starting > program - up to execution of arbitrary code (other than that found in > the program). Login services such as telnetd/login and sshd allow for > initial environment variables to be passed from the remote. This has > actually been used to break into systems in the past. > > Now, modern/patched versions of login services use whitelists of > known-safe environment variables - and allow only for those environment > variables to be passed from the remote. > > But we can feel a little bit safer if our disabled accounts' "shells" > would not be subject to this risk at all - and the only currently > practical way to achieve that is to avoid the use of the dynamic linker > and libc." -- Regards, Kirill A. Shutemov + Belarus, Minsk + Velesys Ltd, http://www.velesys.com/ + ALT Linux Team, http://www.altlinux.com/