pyrasite - Inject code into running Python processes



Tools for injecting arbitrary code into running Python processes.

Requirements
  • gdb (version 7.3+ (or RHEL5+))
On OS X you will need to have a codesigned gdb - see https://sourceware.org/gdb/wiki/BuildingOnDarwin if you get errors while running with --verbose which mention codesigning.


Compatiblity
Pyrasite works with Python 2.4 and newer. Injection works between versions as well, so you can run Pyrasite under Python 3 and inject into 2, and vice versa.

Usage
usage: pyrasite [-h] [--gdb-prefix GDB_PREFIX] [--verbose] [--output OUTPUT_TYPE] pid [filepath|payloadname]
pyrasite --list-payloads

pyrasite - inject code into a running python process

positional arguments:
pid The ID of the process to inject code into
filepath|payloadname The second argument must be a path to a
file that will be sent as a payload to the
target process or it must be the name of
an existing payload (see --list-payloads).

optional arguments:
-h, --help show this help message and exit
--gdb-prefix GDB_PREFIX
GDB prefix (if specified during installation)
--verbose Verbose mode
--output OUTPUT_TYPE This option controls where the output from
the executed payload will be printed. If
the value is 'procstreams' (the default) then
the output is sent to the stdout/stderr of the
process. If the value is 'localterm' then the
output is piped back and printed on the local
terminal where pyrasite is being run.
--list-payloads List payloads that are delivered by pyrasite

For updates, visit https://github.com/lmacken/pyrasite



pyrasite-gui
The graphical interface can be found here: https://github.com/lmacken/pyrasite-gui

Requirements

  • Python debuginfo (needed for live object inspection)
  • PyGObject3 Introspection bindings
  • WebKitGTK3
  • meliae (easy_install/pip may not work for this install. If not, use the tarball from the distribution website. You may need to install Cython in order to get meliae to build)
  • pycallgraph
  • psutil

Screenshots






homepage:http://pyrasite.com
documentation:http://pyrasite.rtfd.org
download:http://pypi.python.org/pypi/pyrasite
source:http://github.com/lmacken/pyrasite
screenshots:http://readthedocs.org/docs/pyrasite/en/latest/GUI.html
mailing list:https://fedorahosted.org/mailman/listinfo/pyrasite
jenkins:http://ci.csh.rit.edu/view/Pyrasite
irc:#pyrasite on Freenode



Source: www.kitploit.com
pyrasite - Inject code into running Python processes pyrasite - Inject code into running Python processes Reviewed by Anonymous on 8:51 AM Rating: 5