Inject custom code or data into running process

Sayutin Dmitry cdkrot at yandex.ru
Tue Jan 3 14:54:55 EST 2017


This sounds like a solution, but it's a bit complicated one.

I would prefer to implement injection in kernel space, because it should be more simple.
Thank you for your idea nevertheless =)

03.01.2017, 22:45, "Mike Krinkin" <krinkin.m.u at gmail.com>:
> On Tue, Jan 03, 2017 at 10:24:11PM +0300, Sayutin Dmitry wrote:
>>  Hello, how one should inject code or data into allready running process?
>
> If you have enough priviledges to use ptrace you can write in a target
> process memory. Though, AFAIK, you can only overwrite existing memory and
> can't create new mapping using ptrace, so in order to overcome this you
> need to save original code first, rewrite it with your injection bootstrap
> code (bootstrap code for example can load a shared library), execute it
> and then return original code back.
>
>>  There is no need to start code execution at this point, but it should appear in it's virtual memory.
>>
>>  Moreover, i want this data to persist across execve's or clone's (probably can be implemented as hook on appropriate kernel methodes)
>>
>>  (If you want to know motivation for this -- I want to implement some new idea on sandboxing).
>>
>>  Thanks in advance, Sayutin Dmitry <cdkrot at yandex.ru>
>>
>>  _______________________________________________
>>  Kernelnewbies mailing list
>>  Kernelnewbies at kernelnewbies.org
>>  https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

----- 
Sayutin Dmitry <cdkrot at yandex.com>



More information about the Kernelnewbies mailing list