typo fix + readme update

This commit is contained in:
n1nj4sec 2016-05-07 22:35:47 +02:00
parent c17bf23a9c
commit 4e3ee4f9ae
3 changed files with 11 additions and 2 deletions

View File

@ -1,5 +1,9 @@
# Pupy
Pupy is an opensource, multi-platform (Windows, Linux, OSX, Android) Remote Administration Tool with an embedded Python interpreter, allowing its modules to load python packages from memory and transparently access remote python objects. Pupy can communicate using different transports and have a bunch of cool features & modules. On Windows, Pupy uses reflective dll injection and leaves no traces on disk.
Pupy is an opensource, multi-platform (Windows, Linux, OSX, Android), multi function RAT (Remote Administration Tool) mainly written in python. It features a all-in-memory execution guideline and leaves very low footprint. Pupy can communicate using various transports, migrate into processes (reflective injection), load remote python code, python packages and python C-extensions from memory.
Pupy modules can transparently access remote python objects using rpyc to perform various interactive tasks.
Pupy can generate payloads in multiple formats like PE executables, reflective DLLs, pure python files, apk, ...
When you package a payload, you can choose to embbed python scriptlets to perform various tasks offline (without requiring a session), like adding persistence, starting a keylogger, detecting a sandbox, ...
## Features
- On windows, the Pupy payload is compiled as a reflective DLL and the whole python interpreter is loaded from memory. Pupy does not touch the disk :)
@ -61,6 +65,7 @@ Launchers allow pupy to run custom actions before starting the reverse connectio
- works very well with [mimitakz](https://github.com/gentilkiwi/mimikatz) :-)
- screenshot
- webcam snapshot
- microphone recorder
- keylogger
- monitor keys and the titles of the windows the text is typed into, plus the clipboard! (thanks @golind for the updates)
- mouselogger:

View File

@ -20,5 +20,9 @@ packages_dependencies={
(LOAD_PACKAGE, "win32security"),
(LOAD_PACKAGE, "win32con"),
],
"pyaudio" : [
(LOAD_PACKAGE, "_portaudio"),
],
}

View File

@ -272,7 +272,7 @@ class PupyServer(threading.Thread):
if hasattr(module,"__class_name__"):
class_name=module.__class_name__
if not hasattr(module,class_name):
logging.error("script %s has a class_name=\"%s\" global variable defined but this class does not exists in the script !"%(script_name,class_name))
logging.error("script %s has a class_name=\"%s\" global variable defined but this class does not exists in the script !"%(module_name,class_name))
if not class_name:
#TODO automatically search the class name in the file
exit("Error : no __class_name__ for module %s"%module)