run-as Запустить команду от имени пользователя Тип файла: команда usage: run-as <имя-пакета> [--user <uid>] <команда> [<аргументы>] Комментарии Будьте очень осторожны при его изменении, чтобы избежать серьезных проблем с безопасностью. Имейте в виду следующее: - Эта программа должна работать только для пользователей «root» или «shell». - Избегайте чего-либо более сложного, чем простые системные вызовы, пока uid/gid не будет сброшен до обычного пользователя или пока вы не выйдете. Это позволяет избежать зависимости от переменных среды, свойств системы и других внешних факторов, которые могут непредсказуемым образом повлиять на библиотеку C. - По возможности не доверяйте пользовательскому вводу и/или файловой системе. Цель этой программы — запустить команду от имени пользователя определенного приложения. Типичное использование: run-as <имя-пакета> <команда> <аргументы> Двоичный файл run-as имеет setuid, но будет проверять следующее: - что он вызывается от пользователя «shell» или «root» (в противном случае прервать) - что '<package-name>' - это имя установленного и отлаживаемого пакета - что каталог данных пакета правильно сформирован (см. package.c) Если это так, он перейдет в каталог данных пакета, перейдет в каталог приложения. идентификатор пользователя / идентификатор группы, затем запустите команду там. Это может быть полезно для ряда различных вещей на производственных устройствах: - Разрешить разработчикам приложений просматривать свои собственные аппликационные данные во время разработки. - Запустите двоичный исполняемый файл gdbserver, чтобы разрешить встроенную отладку. |