
Я читал, что использование echo $PATH
для пользователей, не имеющих прав root, должно выглядеть так:
/usr/local/bin:/bin:/usr/bin:/usr/X11R6/bin:/home/username/bin:
Я читал echo $PATH
, что использование для пользователей ROOT должно выглядеть примерно так:
/sbin:/usr/sbin:/bin:/usr/bin:/usr/X11R6/bin
Когда я ввожу echo $PATH
, я получаю:
/home/uname/bin:/home/uname/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
Похоже, что это должно быть выходом для пользователя root. Стоит ли мне беспокоиться об этом, например, о наличии в моем каталоге «вредоносной исполняемой программы», предоставляющей (несанкционированный удаленный) доступ root, когда я не инициировал доступ root?
решение1
Хотя это вряд ли будет «злонамеренной» атакой, этот PATH — это то, о чем вам следует беспокоиться. Давайте рассмотрим каталоги в этом PATH:
/home/uname/bin
/home/uname/.local/bin
/usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/sbin
/bin
/usr/games
/usr/local/games
У меня есть два комментария:
Поскольку
/home/uname/bin
иhome/uname/.local/bin
являются первыми каталогами, перечисленными в PATH, исполняемые файлы там могут переопределять стандартные системные исполняемые файлы. Возможно, кто-то считает, что такие исполняемые файлы превосходят стандартные. Однако любая несовместимость между этими исполняемыми файлами и стандартными может легко привести к сбоям скрипта в неожиданные моменты.Конечно, размещение этих каталогов в начале PATH не является чем-то необычным и может быть полезным. Вам просто следует знать о возможных недостатках.
Как вы знаете, такие каталоги, как
/usr/local/sbin
,/usr/sbin
, и/sbin
обычно полезны только для root. Хотя это никоим образом не является нарушением безопасности, иметь их в вашемPATH
, это странно.