Одним словом, нет.
Ядро просто использует символическую ссылку, чтобы найти файл / каталог, на который указывает ссылка.
Возьмем пример view
=> vim
(общий симлинк в / USR / бен, вызовите vim
По view
имя , и он будет открыть текстовый файл только для чтения).
Ядро откроет view
, увидит, что это указатель на vim, закроет view
и затем откроет vim
. Когда он открывает /exec vim, он использует все проверки безопасности в vim
. Таким образом, vim все еще открыт с разрешениями на vim, чего вы и ожидаете.
Ах, ха! Но символическая ссылка представляет собой файл, и если он доступен для записи, я могу открыть его, отредактировать и изменить цель! /usr /bin /view становится указателем на /tmp /myevilexec. Одним словом, нет. Это специальный файл, вы не можете открыть символическую ссылку 'file' и отредактировать его таким образом. Вы можете заменить только символическую ссылку, и тогда права доступа на символическую ссылку не имеют значения - каталог разрешений определяет, можете ли вы удалять файлы / создавать новые файлы.
Короче говоря, 777 для символических ссылок не является брешей в безопасности, и это делает персики символьных ссылок «невидимыми», а фактически перми являются целевым файлом, чего вы и ожидаете.