Начинающий здесь. Я пытаюсь выяснить, как изменить работающий процесс в системе Linux с помощью Python.
Пример: у меня есть программа на Python, которая принимает в качестве аргумента PID. Моя цель - использовать этот PID и получить информацию о запущенном процессе с этим PID.
(1) Найти, где он находится в памяти
(2) Где указатель инструкции
(3) Измените программу так, чтобы следующая исполняемая инструкция была чем-то другим.
(4) Вернуть указатель на следующую правильную инструкцию
(5) Пусть исходный процесс выполняется так, как должен:
Я пытаюсь разработать POC, чтобы показать, как маленький кусочек кода может быть внедрен в работающий процесс, чтобы просто напечатать 'привет' на стандартный вывод и не мешать остальной части процесса.
Я посмотрел трассировку и некоторые другие модули, но все они, похоже, следят за текущим выполняющимся процессом python. Также посмотрел на pyhook, но в основном для перехвата сигналов с клавиатуры и т. Д. Кроме того, я немного посмотрел на pygdb.
Может ли кто-нибудь указать мне на некоторые модули, которые могут быть полезны, или на некоторые примеры кода. Я пробовал поискать в Google "PID процесса проверки Python" и т. Д., Но не получил ничего очень полезного.
Любая помощь очень ценится.
Спасибо!