Переопределение функций запуска процесса в Linux

Мне любопытно узнать, как переопределить функции запущенного процесса в Linux, чтобы процесс сначала вызывал мои функции.

мы можем использовать LD_PRELOAD для переопределения функции в двоичном файле, но она не работает в случае уже запущенного процесса. Любое предложение, пожалуйста.

1 ответ

LD_PRELOAD позволяет вам принудительно загружать общий объект перед любым другим. Таким образом, если функция уже предоставлена ​​этим пользовательским общим объектом, она не будет загружена снова из "стандартного" общего объекта.

В вашем случае вы хотите изменить уже загруженную функцию. Я считаю, что это невозможно.

Это явно было бы угрозой безопасности.

Большинство операционных систем реализуют DEP и ASLR, которые предотвращают изменение и прогнозирование положения общего объекта в памяти.

Другие вопросы по тегам