Предположим, что во FreeBSD (или, может быть, в linux) есть непривилегированный суперпользователь.
«Непривилегированный суперпользователь» - это противоречие в терминах; Само слово «суперпользователь» означает пользователя, имеющего все привилегии.
Этот сервер telnet запрограммирован так, что он не проверяет переменные окружения ld_ *
Я не уверен, что это актуально. Сервер telnet не имеет никаких специальных привилегий, поэтому удаление LD_*
переменных не очень полезно ...
- Будет ли работать этот телнет? 2. Если это сработает, сможет ли он передать переменные окружения в / bin / login?
Он будет работать частично, но, скорее всего, не сможет подключиться к стандартному порту Telnet из-за отсутствия привилегии CAP_NET_BIND_SERVICE.
Да, он сможет передавать переменные среды login
, как и любой другой процесс. Однако, по крайней мере в Linux, загрузчик (ld-linux.so) отбрасывает все LD_*
переменные перед запуском программы setuid, поэтому setuid- login
не будет ими затронут.