Навіть якщо ви завжди дуже обережні з тим, що ви вводите, додавання .
до свого PATH
, навіть в кінці, все ще незахищене, оскільки деякі програми змінюють поточний каталог на /tmp
(що є в світі записом), а також можуть спробувати виконати утиліти, які фактично не встановлені, тим самим дефолт до того, що є /tmp
. Якщо це відбувається, це вектор атаки.
Слід також зазначити , що існує не так багато недоліків уникнути .
в PATH
, так ./
легко друкувати (зокрема , на клавішних , як QWERTY, де ці символи знаходяться на послідовних ключів і не потрібно Shift) і використання ./
також сприятиме завершенню, тим самим потенційно економити натискання клавіш в кінці.
Якщо ви дійсно хочете мати можливість вводити команди з поточного каталогу, то сучасні оболонки (як-от zsh, з його command_not_found_handler
) можуть надавати функції, щоб зробити це безпечно, тобто дозволяючи додати всі перевірки безпеки, які ви хочете в обробнику, перед команда виконується.