Запуск VLC под рутом в Kali Linux

Некоторые пользователи Kali Linux хотят сделать её своей основной операционной системой. Напомню, по умолчанию основным пользователем в Kali Linux являет рут. Для работы в Kali Linux в качестве основной ОС рекомендуется создать обычного, непривилегированного пользователя и осуществлять вход под ним. При этом если понадобиться обновить программы, установить новые или запустить программу требующую повышенных прав, то делать это как и в остальных Linux’ах — через sudo или su —.

Тем не менее, кому-то захочется использовать Kali как основную ОС и при этом всегда оставаться суперпользователем. Особых проблем в этом нет, но некоторые программы не хотят запускаться из-под рута. Например, недавно мы говорили как обойти это ограничение для Google Chrome.

В этой небольшой инструкции будет рассказано как запустить VLC под рутом в Kali Linux.

VLC — это популярный проигрыватель медиафайлов. При попытке запуска от рута появляется такое сообщение ошибки:

[email protected]:~# /usr/bin/vlc
VLC is not supposed to be run as root. Sorry.
If you need to use real-time priorities and/or privileged TCP ports
you can use /usr/bin/vlc-wrapper (make sure it is Set-UID root and
cannot be run by non-trusted users first).

Если запуск производиться из меню, а не из командной строки, то просто ничего не происходит.

Есть несколько способов это исправить, они сводятся к двум основным методам:

  • изменить исполнимый файл (пропатчить), чтобы отключить проверку
  • скомпилировать исполнимый файл самому с ключом, позволяющим запуск от рута.

1) Патчим бинарник первым способом

sed -i 's/geteuid/getppid/' /usr/bin/vlc

Потоковый редактор sed — это текстовый редактор, которые выполняет операции редактирования информации поступающей из стандартного ввода или из файла.

Ключ -i говорит о том, что нужно отредактировать файл, расположение которого задано сразу после ключа. Команда s означает сделать подстановку. Т.е. мы даём указание sed в файле /usr/bin/vlc найти строку geteuid и заменить её на getppid.

Теперь VLC спокойно запускается.

41

2) Скомпилировать самому с флагом —enable-run-as-root

При компиляции VLC из исходных кодов на этапе конфигурирования

./configure

Нужно добавить ключ —enable-run-as-root

3) Патчим бинарник вторым способом

cp /usr/bin/vlc /usr/bin/vlc-backup
needle=$(objdump -d /usr/bin/vlc | grep euid | tail -1 | awk '{print "\x"$2"\x"$3"\x"$4"\x"$5"\x"$6;}')
sed -ir "s/$needle/xb8x01x00x00x00/" /usr/bin/vlc

4. Патчим бинарник третьим способом

Устанавливаем hex-редактор

apt-get install bless

Открываем файл

bless /usr/bin/vlc

Находим строку geteuid и меняем на getppid, сохраняем и выходим.

Оставьте комментарий