A tool/library allowing dynamic library injection into running processes
Project description
Pyinjector
A cross-platform tool/library allowing dynamic library injection into running processes. If you are looking for a way to inject python code into a running process, try the hypno library.
Pyinjector has no external python dependencies. It is implemented as a python wrapper for kubo/injector.
Installation
pip install pyinjector
Both source distributions, manylinux2010
wheels and windows wheels are uploaded to Pypi for every release.
Usage
CLI
inject <pid> <path/to/shared/library>
API
from pyinjector import inject
inject(pid, path_to_so_file)
How it works
We build kubo/injector as a C-extension and use its interface using ctypes
.
kubo/injector is an awesome repo allowing to inject shared libraries into running
processes both on windows (CreateRemoteThread
+LoadLibrary
) and on linux (ptrace
).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distributions
Hashes for pyinjector-1.2.0-cp311-cp311-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 4f1c34a66d2b6321b0e30a19111f300a2643ac6463536c6226436fc06eef3d2f |
|
MD5 | b7d86e3b9588edb93d0af0e9ce8136ab |
|
BLAKE2b-256 | e0f0225fa5cda00a4e7ddd63195e05b9843a6e731ab60a01240343a6987cdff9 |
Hashes for pyinjector-1.2.0-cp311-cp311-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ad3390ae809fcb43b2a1ac974478604e97842fab494a3cd3e63000ae241edc62 |
|
MD5 | 76f906bc1dc81d527b9712ebb85e5ac5 |
|
BLAKE2b-256 | 9a2927dec76dc00e3b416f821b066fb1dc833ec8634586b009c4fd7f243fdfe3 |
Hashes for pyinjector-1.2.0-cp311-cp311-musllinux_1_2_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6e031c13365a781fd88972ea9d92519461be5539d99f48594df9f87600197087 |
|
MD5 | 0ade45768ede8f472697c4075a4abe24 |
|
BLAKE2b-256 | 23ed5a51dc3d81c45913fe6f35318910cc721d5a36818f1735413ecbd643eac8 |
Hashes for pyinjector-1.2.0-cp311-cp311-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | b9c24e6841468e4c663133742fee670f4caabdb66367bf643d5031d78468092a |
|
MD5 | 16d3c31c3a3ef2b968103e631c823a5b |
|
BLAKE2b-256 | eb3db7d6ca25859d406440aac8f2044c8f37c9b41c22a0eea2d0e73dec48b2bb |
Hashes for pyinjector-1.2.0-cp310-cp310-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | e1933003225f59cb32df3c61fe96145c42adf6ca761d2ab18ea402b5ac0369e3 |
|
MD5 | 37813a32e9383b8b15a9d9a9c97bc2f3 |
|
BLAKE2b-256 | 5cbf75a435757c8809d28ee6a004c56532d617ff1bc6efc7ba3e60782f01ff62 |
Hashes for pyinjector-1.2.0-cp310-cp310-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 960fc42c02173edc0e63327731ca222066ead2b5c33fe7785dc68f4b886ad78f |
|
MD5 | 50af57df130c11c1298b64e51e271c88 |
|
BLAKE2b-256 | ce779fbd8951bfe541abebc5eb7429736a08616324f6dde81f15bd505a06f994 |
Hashes for pyinjector-1.2.0-cp310-cp310-musllinux_1_2_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | f4153c1934dc7d6b44cf457f9e0478d65054974589028331802b16dfe1020f44 |
|
MD5 | de9e02f5c36a6dc3002a3db3ebad94ea |
|
BLAKE2b-256 | 276183f5324ba08c5305ba7b599c92de8852be03b5c7a610ac047c4532193e3b |
Hashes for pyinjector-1.2.0-cp310-cp310-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 67ef87a28cc869cc81c5f30f0725c741086a47cf0a4b797ee69ef8911f4aac68 |
|
MD5 | e38a0ff8819cc7ea3788419ba391f9bf |
|
BLAKE2b-256 | 7c1bee63829ce663426c97caff476da9bc78a2690813c623c20dea818b101e85 |
Hashes for pyinjector-1.2.0-cp39-cp39-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | aa6cc46e34da551832acd554290dfbff9661b0dde6c1b86c3c9cede3e91fef17 |
|
MD5 | 36026a065264dac4164d056b75df9e98 |
|
BLAKE2b-256 | cf876f7f5177d2b9d39d58729f5f2934eaa2ec8e4675a60054a9fd13792517ce |
Hashes for pyinjector-1.2.0-cp39-cp39-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6fcb706b24d63bacc1250633f5887b619970fcb737f10b1c9e4949bab22ef298 |
|
MD5 | 698a427ee818b46c70e66a854ebba68e |
|
BLAKE2b-256 | feef2cd769b58dfc80f16af22e20f0f22d3bf20ce1e50fcc2def6e6eeecdb5ef |
Hashes for pyinjector-1.2.0-cp39-cp39-musllinux_1_2_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1d37d88b863667801b0b720aa0326478616cdb14dc9d6b088a690a1d690a43f8 |
|
MD5 | dd2bd9045737736ef09e3e4c8a92e028 |
|
BLAKE2b-256 | b758defbe2c4e98a9d7219d08633af9bc293c4b05d9a0c441f065d39872725ca |
Hashes for pyinjector-1.2.0-cp39-cp39-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 91d463dfc4d1ec4df334b7dcb194274e1ca0f90330f4e1c56424139182a35566 |
|
MD5 | 1bc1b1aca255f6ea2f9bc7221b57dddd |
|
BLAKE2b-256 | 74f4d217b8f1e3ec12892391b6f9a317bc3ca1aa55668665b11722fdbca8f3b7 |
Hashes for pyinjector-1.2.0-cp38-cp38-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c81f29d45abe6fe57cf641ddefa2e1b401be8bf46e84d5239ca94f23aad96f02 |
|
MD5 | 6d77b6b49cf8f40f6a8bc227ad30220f |
|
BLAKE2b-256 | a718e8aa1469fb4b015771ec83873a63ab85e21115406cb4ef5c5b9dd047fd59 |
Hashes for pyinjector-1.2.0-cp38-cp38-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cfe66f880a9a300cdb2cd2568ab59102f16182afb7d99876f73330fb013bb6db |
|
MD5 | 59969f6f7e5ee2af80054d4409db7b34 |
|
BLAKE2b-256 | ab4607fbc4f175cb19dd9ea0572bacdc8d24254cb760581a20ae2207f1d5d257 |
Hashes for pyinjector-1.2.0-cp38-cp38-musllinux_1_2_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 7d2d24581ad55131c5d652ca0728042cd22f8cc77688910a0b3c89417c658f10 |
|
MD5 | d9c9aac6806852047659b1a7d62e63ee |
|
BLAKE2b-256 | ebc60e6ef15d1a853c2cb3ac31444ec1e9ff08c97f32e1288500fe57bb0af66b |
Hashes for pyinjector-1.2.0-cp38-cp38-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ffd602bcb3751ac399e22d0fd861d538f853fe8a122f84a44b9064821984cd69 |
|
MD5 | d814a75deb00db435e70ae7040248c52 |
|
BLAKE2b-256 | 7ab452e1ea404e256cd35616e7e2959feff2317a29d56fcfb6e8130076cfca7b |
Hashes for pyinjector-1.2.0-cp37-cp37m-win_amd64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | ecbefbe6a32abf8fcba98eba098b3942d74ef3ab983fe94e893b3fcbe5e3a904 |
|
MD5 | 7989302854fe96f1b3d64c3e3a98009e |
|
BLAKE2b-256 | 8bb553dd584dcd50a8a5ea66581891420a4d23d0680ae8fdba91dc0998f1287f |
Hashes for pyinjector-1.2.0-cp37-cp37m-win32.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | cbdb27c81c73dd22fd563e59a8a689086bdd2bb118360e38455d7c33679b4e3f |
|
MD5 | 96f2e276ed30178b83387f146f4a05fe |
|
BLAKE2b-256 | 4ac472f1695fbac0fa81eb0c5b0357d99224f02a82eb643e7feffd79719c0be4 |
Hashes for pyinjector-1.2.0-cp37-cp37m-musllinux_1_2_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8da386760ec2e239cf6823fef98f996c7beb43b05e3a443f9b39244141390f0d |
|
MD5 | 17c4d0887384e880a90cce735c08e964 |
|
BLAKE2b-256 | 875e14ac7f640524d802eb978e05868d81758ebd1628414d0152c2c03feccb8e |
Hashes for pyinjector-1.2.0-cp37-cp37m-manylinux_2_12_x86_64.manylinux2010_x86_64.manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | c6d6f216f735ffaf2eaae2496ecc5c585361d91e1ce8243ac8b4a6aff3b4590f |
|
MD5 | 23181647e57b56a4def80b7fcac66b65 |
|
BLAKE2b-256 | b9abf00f616896fcaff5e79d236fa6ba9ab2e20b667954883db0c09a7fefd787 |