У меня был вопрос на собеседовании:
Как выполнить (запустить) программу с пользователем
user1
безsudo
прав и без доступа кroot
учетной записи:$ whoami user1 $ ls -l ~/binary_program -rw-r--r-- 1 root root 126160 Jan 17 18:57 /home/user1/binary_program
permissions
executable
inivanoff1
источник
источник
bash
сценарии оболочки POSIX, еслиbash
он вызывается как интерпретатор.Вы можете использовать динамический компоновщик / загрузчик Linux напрямую для запуска исполняемых файлов ELF, для которых вы прочитали, но не имеете прав на выполнение:
Когда исполняемый файл ELF выполняется обычным образом, используется динамический компоновщик, который хранится в
.interp
разделе программного кода. Причины прямого вызова динамического компоновщика (вне собеседований) включают в себя передачу ему параметров командной строки для изменения его поведения.Обратите внимание, что фактическое расположение динамического компоновщика может сильно зависеть от среды, например, в 64-битной Ubuntu компоновщик находится
/lib64/ld-linux-x86-64.so.2
.источник