Цель: загрузить .so/.bundle, которая была подтверждена для подписи (или проверки на произвольный алгоритм).Проверить подпись пакета OSX перед загрузкой
Я хочу, чтобы иметь возможность проверить .so/.bundle либо с помощью встроенных инструментов бинарных подписей OSX или какого-либо собственного алгоритм, а затем загрузить .so/.bundle с dlopen ...
гаечным ключа в этом заключается в том, что, как представляется, нет программного способа проверки-затем-загрузки. Можно проверить файл вручную, а затем загрузить его после .. однако есть окно возможности, в которых кто-то может поменять этот файл на другой.
Поскольку блокировки файловой системы являются рекомендательными в OSX, они не так полезны для этой цели.
dlopen выполнит функции init в библиотеке при загрузке ... так что код будет выполнен ... – harningt
Вправо. Хорошая точка ... Возможно, если библиотека была загружена отдельным процессом, работающим с ограниченным набором разрешений, а другой процесс взаимодействовал с библиотекой через IPC .... Код мог быть выполнен, но он не был бы способен нанести большой урон. –