Я пытаюсь определить, наблюдаются ли в Linux переменные окружения для процесса другими (не-root) пользователями.
Непосредственный вариант использования - помещение секретов в переменные окружения. Во многих местах в Интернете это обсуждается как небезопасное, но я не смог сосредоточиться на точной точке воздействия в Linux.
Обратите внимание, что я не говорю о том, чтобы помещать в файлы секреты открытого текста. Также обратите внимание, что я не говорю о доступе к учетной записи root (я рассматриваю попытки скрыть секреты от злоумышленника с root-правом как не начавшегося).
Похоже, что этот вопрос адресован моему, с комментариями, которые классифицируют переменные среды как совершенно не защищенные или просто запутанные, но как получить к ним доступ?
В моих тестах один непривилегированный пользователь не может наблюдать переменные среды для другого пользователя через таблицу процессов ('ps auxwwe'). Команды, которые устанавливают переменные среды (например, export), являются встроенными оболочками, которые не попадают в таблицу процессов и, соответственно, не находятся в / proc / $ pid / cmdline. / proc / $ pid / environment доступен только для чтения по UID владельца процесса.
Возможно путаница между различными операционными системами или версиями. Различные (недавние) источники в Интернете осуждают небезопасность переменных среды, но моя выборочная проверка различных версий Linux, похоже, указывает на то, что это невозможно, по крайней мере, до 2007 года (возможно, в дальнейшем, но я не имею ящиков на руку на проверку).
В Linux, как непривилегированный пользователь может наблюдать переменные среды для чужих процессов?