All Projects → 0x00-0x00 → Shellpop

0x00-0x00 / Shellpop

Licence: mit
Pop shells like a master.

Programming Languages

python
139335 projects - #7 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to Shellpop

Hacker Roadmap
📌 Your beginner pen-testing start guide. A guide for amateur pen testers and a collection of hacking tools, resources and references to practice ethical hacking and web security.
Stars: ✭ 7,752 (+506.1%)
Mutual labels:  hacking, pentest
Powerladon
Ladon Network Penetration Scanner for PowerShell, vulnerability / exploit / detection / MS17010/SmbGhost,Brute-Force SMB/IPC/WMI/NBT/SSH/FTP/MSSQL/MYSQL/ORACLE/VNC
Stars: ✭ 39 (-96.95%)
Mutual labels:  hacking, pentest
Jsql Injection
jSQL Injection is a Java application for automatic SQL database injection.
Stars: ✭ 891 (-30.34%)
Mutual labels:  hacking, pentest
Diamorphine
LKM rootkit for Linux Kernels 2.6.x/3.x/4.x/5.x (x86/x86_64 and ARM64)
Stars: ✭ 725 (-43.32%)
Mutual labels:  hacking, pentest
One Lin3r
Gives you one-liners that aids in penetration testing operations, privilege escalation and more
Stars: ✭ 1,259 (-1.56%)
Mutual labels:  hacking, reverse
Resources For Beginner Bug Bounty Hunters
A list of resources for those interested in getting started in bug bounties
Stars: ✭ 7,185 (+461.77%)
Mutual labels:  hacking, pentest
Pwn jenkins
Notes about attacking Jenkins servers
Stars: ✭ 841 (-34.25%)
Mutual labels:  hacking, pentest
Habu
Hacking Toolkit
Stars: ✭ 635 (-50.35%)
Mutual labels:  hacking, pentest
Pythem
pentest framework
Stars: ✭ 1,060 (-17.12%)
Mutual labels:  hacking, pentest
Vulnx
vulnx 🕷️ is an intelligent bot auto shell injector that detect vulnerabilities in multiple types of cms { `wordpress , joomla , drupal , prestashop .. `}
Stars: ✭ 1,009 (-21.11%)
Mutual labels:  hacking, pentest
Sublert
Sublert is a security and reconnaissance tool which leverages certificate transparency to automatically monitor new subdomains deployed by specific organizations and issued TLS/SSL certificate.
Stars: ✭ 699 (-45.35%)
Mutual labels:  hacking, pentest
Cloakify
CloakifyFactory - Data Exfiltration & Infiltration In Plain Sight; Convert any filetype into list of everyday strings, using Text-Based Steganography; Evade DLP/MLS Devices, Defeat Data Whitelisting Controls, Social Engineering of Analysts, Evade AV Detection
Stars: ✭ 1,136 (-11.18%)
Mutual labels:  hacking, pentest
K8cscan
K8Cscan大型内网渗透自定义插件化扫描神器,包含信息收集、网络资产、漏洞扫描、密码爆破、漏洞利用,程序采用多线程批量扫描大型内网多个IP段C段主机,目前插件包含: C段旁注扫描、子域名扫描、Ftp密码爆破、Mysql密码爆破、Oracle密码爆破、MSSQL密码爆破、Windows/Linux系统密码爆破、存活主机扫描、端口扫描、Web信息探测、操作系统版本探测、Cisco思科设备扫描等,支持调用任意外部程序或脚本,支持Cobalt Strike联动
Stars: ✭ 693 (-45.82%)
Mutual labels:  hacking, pentest
Dumpsterfire
"Security Incidents In A Box!" A modular, menu-driven, cross-platform tool for building customized, time-delayed, distributed security events. Easily create custom event chains for Blue- & Red Team drills and sensor / alert mapping. Red Teams can create decoy incidents, distractions, and lures to support and scale their operations. Build event sequences ("narratives") to simulate realistic scenarios and generate corresponding network and filesystem artifacts.
Stars: ✭ 775 (-39.41%)
Mutual labels:  hacking, pentest
Jok3r
Jok3r v3 BETA 2 - Network and Web Pentest Automation Framework
Stars: ✭ 645 (-49.57%)
Mutual labels:  hacking, pentest
Xattacker
X Attacker Tool ☣ Website Vulnerability Scanner & Auto Exploiter
Stars: ✭ 897 (-29.87%)
Mutual labels:  hacking, pentest
Xspear
Powerfull XSS Scanning and Parameter analysis tool&gem
Stars: ✭ 583 (-54.42%)
Mutual labels:  hacking, pentest
Reconspider
🔎 Most Advanced Open Source Intelligence (OSINT) Framework for scanning IP Address, Emails, Websites, Organizations.
Stars: ✭ 621 (-51.45%)
Mutual labels:  hacking, pentest
Reconftw
reconFTW is a tool designed to perform automated recon on a target domain by running the best set of tools to perform scanning and finding out vulnerabilities
Stars: ✭ 974 (-23.85%)
Mutual labels:  hacking, pentest
Dr0p1t Framework
A framework that create an advanced stealthy dropper that bypass most AVs and have a lot of tricks
Stars: ✭ 1,132 (-11.49%)
Mutual labels:  hacking, pentest

ShellPop

About

Shellpop is all about popping shells. With this tool you can generate easy and sophisticated reverse or bind shell commands to help you during penetration tests.

Don't waste more time with .txt files storing your Reverse shells!

Installation

Python 2.7 is required.

3.0+ version will not work.

Required Dependencies Install

install python-argcomplete metasploit-framework -y
install -r requirements.txt

Setup Install

install

PS: After installation, tab auto-complete will only work after restarting the terminal.

Index


Help Section

To quickly list all available options of this tools, use --help.

Command line examples

--help

Screenshot


Shells List

List of shells

You can list all available shellpop shells using the --list option.

Command line example

--list

ShellsList

Auto-Complete [NEW]

Now shellpop has auto-complete feature. To use it, you need to forget about --number and (--reverse or --bind), just stick to --payload argument. Like the image below:

Autocomplete

Basics


Copying it to clipboard

Dont waste time. This tool is all about NOT wasting time. So you can use --clip option to all your generated payloads and get them automagically copied to your clipboard.

Shell Types

There is two types of payloads in this program: Bind or Reverse.


1. Reverse shell

Reverse shells use your attacker machine to serve as the "server". In this type of payload, you need both --host and --port pointing back to your machine. A handler must be set.


2. Bind shell

Bind shells use the remote host to serve the connection. In this type of payload, all you need is the --port option with a valid port number.

Command line examples

Generating a Python TCP reverse shell to IP 1.2.3.4 at port 443

Screenshot

Generating a Powershell TCP bind shell over port 1337

Screenshot


Obfuscation

There are currently two main methods of obfuscation available for your generated payloads:

  1. Variable renaming obfuscation

Replaces all variables in payload with randomly named ones. Applied to every payload automatically.

Screenshot

  1. IPfuscation

Obfuscate the IP addresse and port used by the payload

Coined by @vysecurity, IPfuscation is simply leveraging the little known fact that IP addresses can be converted to decimal, octal, and hexadecimal numbers, or a combination of all three, and still be used.

Port obfuscation is accomplished by replacing the port number with a mathematical expression that evaluates to the port number.

Screenshot

Here the IP address in the generated payload is a combination of different number bases. The first part in normal decimal notation, the second and third parts are 2 and 3 converted to octal with random zeros as padding, and the fourth part is 4 in hex, with some zeros as padding also. The selection of bases to use in each part of the IP address is randomized, as well as the number of zeros used as padding to hex and octal numbers.

The port is obfuscated by replacing 443 with an expression that evaluates to 443. This expression is generated randomly as well.


Size Concerns

Although IPfuscation is optional, random variable obfuscation is now automatically enforced on all payloads. If the size of the payload is a real concern, you can pass the --obfuscate-small option to have the payload be minimally increased in size by obfuscation. The variable names, IP address and port number will be significantly shorter when used with this option.

Screenshot


Encoders

Encoders are special options that you can use while generating shellpop payloads.

There are, currently, three encoding methods that can be applied singularly, or concurrently, and they are:

  1. XOR encoding

Uses a random numeric key (1-255) to obfuscate the payload and add a decryption stub to decrypt it.

  1. Base64 encoding

Simple base64 encoding in payload data and add a decryption stub to decrypt it.

  1. URL encoding

Simple URL encode over the final payload.

Command line examples

Generating a Python TCP reverse shell to IP 1.2.3.4 at port 443 but using URL-encoding, suitable to use over HTTP protocol.

Screenshot

Generating a Python TCP reverse shell to IP 1.2.3.4 at port 443 but encode it to base64 and set-up a wrapper to decode it. This helps when quotes are troublesome.

Screenshot

Generating a Python TCP reverse shell to IP 1.2.3.4 at port 443 URL-encoded and encoded to base64 ... Yes, you know the drill!

Screenshot

Generating a Powershell bind shell over port 1337 encoded in base64

Screenshot

Generating a Python TCP reverse shell to IP 1.2.3.4 at port 443 using --xor encoding.

Screenshot

Generating a Python TCP reverse shell to IP 1.2.3.4 at port 443 using ALL methods of encoding!

Screenshot


Handlers

Handler is a mechanism to "handle" the act of serving a socket to receive the incoming connection or to connect itself to a server endpoint in a way to establish your shell.

Currently there is support of the following TCP handlers:

  1. TCP PTY Handlers
  2. TCP Meta-Handlers [NEW]

This means every TCP shell can have appended to their command-line argument the --handler option. Removing the necessity of the operator to spawn the handler (probably ncat or nc) by himself.

Screenshot

Meterpreter Shells [NEW]

This feature was widely asked by people who used this tool. Now it is technically possible to upgrade all shellpop shells to meterpreter, as since 0.3.6, handler uses by default the Metasploit Framework to land shells.

Meterpreter


Stagers

Stager is a mechanism of serving your payload in STAGES. Sometimes payload complexity or size can get troublesome. In such cases, you can craft a small payload which in turn can request and execute the bigger one.

Currently there is support of the following Stagers protocols:

  1. HTTP

HTTP Stagers

ShellPop has the following set of HTTP stagers to fit in any scenario you would want:

  1. Linux Stagers (Python, Perl, Wget and cURL)
  2. Windows Stagers (Powershell, CertUtil, BitsAdmin and Cscript)

To use HTTP staging, append to your command line --stager http and, optionally, if you want to specify the HTTP server port, the --http-port flag will put your port number in front of the pre-defined ones.

Screenshot


Protocols

Currently there is support of two protocols to land your shells:

  1. TCP
  2. UDP
  3. ICMP (Nishang ICMP shell)

Command line examples

TCP is blocked but UDP is not? Let there be shell!

Screenshot


Credits

This code is authored by Andre Marques (@zc00l) and this project's contributors.

It is made open to public the moment it was released in this github.

Any damage caused by this tool don't make any contributor, including the author, of responsibility.


Team Members


Contributors

We really appreciate all Contributors.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].