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

не, во время выполнения (нетLD_PRELOAD), перехватить / перехватить функцию C, напримерfopen() на Linux, а-ля Detours для Windows? Я хотел бы сделать это из Python (следовательно, я предполагаю, что программа уже работает на виртуальной машине CPython), а также перенаправить на код Python. Я в порядке, просто перехватывая функции общей библиотеки. Я также хотел бы сделать это без изменения способа запуска программы.

Одна идея состоит в том, чтобы свернуть мой собственный инструмент на основеptrace()или при переписывании кода, найденного сdlsym() или в PLT, и нацеливаниеctypesСгенерированные C-функции, но я подумал, что сначала спрошу здесь. Благодарю.

Ответы на вопрос(2)

Ваш ответ на вопрос