screen
не скидає змінну середовища; він видаляється самим Linux.
У більшості систем /usr/bin/screen
виконуваний файл встановлюється із встановленим жорстким бітом для utmp
групи, щоб мати змогу змінювати utmp
базу даних. Він також використовує setgid для управління доступом до каталогу socket ( /var/run/screen/
).
У Linux, коли УИП (або setgid ) програма RAN, він не отримує певні змінні середовища ( в тому числі LD_LIBRARY_PATH
, кілька інших LD_*
змінних, а HOSTALIASES
), для того , щоб зменшити можливі точки атаки: В іншому випадку ви могли б написати невелику бібліотеку і трюк su
або sudo
таким чином викликати ваші "покращені" функції.
Ви можете видалити setgid біт з screen
, але ви повинні зробити каталог гніздо повністю доступні всім (режим 0777). Однак це не повинно бути ризиком для безпеки, як це screen
перевіряє ідентифікаційний код атташера.
Однак ви не повинні робити utmp
базу даних всесвітньо доступними для запису.