Comments 3
Обожаю симлинки в винде. Наверное половина моих CVE получена благодаря им.
В юниксе создание симлинка доступно каждому, и все средства, которым важно хоть какое-то секьюрити за пределами прав одного пользователя, обучены проверять их при операциях, где может сработать раскрытие симлинка, есть ключи вроде O_NOFOLLOW для атомарной проверки факта симлинка при переходе по части пути. Сам факт симлинков и проблемы с ними описаны в букварях.
В Windows создание симлинка - привилегированная операция (непонятно, почему), средств не перейти по симлинку, если нельзя - нет, про проблему 90+% пишущих под неё, наверно, не знает, часть не знает про существование симлинков в принципе.
Что-то это таки должно значить.
В Windows создание симлинка - привилегированная операция (непонятно, почему)
Не совсем:
Now in Windows 10 Creators Update, a user (with admin rights) can first enable Developer Mode, and then any user on the machine can run the mklink command without elevating a command-line console.
средств не перейти по симлинку, если нельзя - нет
Есть: FILE_FLAG_OPEN_REPARSE_POINT.
Ай! Не туда! Как злоупотреблять симлинками и повышать привилегии (LPE-шиться) в Windows