Skip to content

Commit

Permalink
new readme, fixing some bug with uninplemented --meterpreter flag
Browse files Browse the repository at this point in the history
  • Loading branch information
zc00l committed Jun 11, 2018
1 parent df5e98e commit 79369a0
Show file tree
Hide file tree
Showing 5 changed files with 23 additions and 11 deletions.
27 changes: 20 additions & 7 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,15 @@
# ShellPop
## About
Pop shells like a master
Shell pop is all about popping shells. With this tool you can
generate easy and sofisticated reverse or bind shell commands
to help you during penetration tests.
Don't waste more time with .txt files storing your Reverse shells!

Shellpop is all about popping shells. With this tool you can
generate easy and sofisticated 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.x is required.
Python 2.7 is required.

3.0+ version will not work.

Expand All @@ -32,6 +33,7 @@ root@kali# python setup.py install
* [Basics](#basics)
* [Encoders](#encoders)
* [Handlers](#handlers)
* [Meterpreter Shells](#meterpreter-shells)
* [Stagers](#stagers)
* [Protocols](#protocols)
* [Credits](#credits)
Expand Down Expand Up @@ -63,6 +65,11 @@ root@kali# shellpop --list

![ShellsList](img/img-shell-list.JPG?raw=true)

##### 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](img/img-shell-autocomplete.JPG?raw=true)

### __Basics__
-----
Expand Down Expand Up @@ -132,12 +139,17 @@ Handler is a mechanism to "handle" the act of serving a socket to receive the in

Currently there is support of the following TCP handlers:
1. TCP PTY Handlers
2. TCP 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](img/handler.gif?raw=true)

### __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](img/handler-meterpreter.gif?raw=true)

-----
### __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.
Expand All @@ -161,6 +173,7 @@ 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!
Expand Down
Binary file added img/handler-meterpreter.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file modified img/handler.gif
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added img/img-shell-autocomplete.JPG
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
7 changes: 3 additions & 4 deletions src/handlers.py
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,6 @@ def buffer_index(fd):
sock.close()



def error(err):
return "[\033[091m!\033[0m] Error: {0}".format(err)

Expand Down Expand Up @@ -212,7 +211,7 @@ def generate_rc_content(self, meterpreter=False):
#if meterpreter is True: # Haha! Lets upgrade this!
# base_rc += "set AutoRunScript post/multi/manage/shell_to_meterpreter\n"

# After everything is set, we need to finish it with "run -j"
# After everything is set, we need to finish it with "run"
base_rc += "run\n"

return base_rc
Expand Down Expand Up @@ -248,13 +247,13 @@ def get_shell_name(shell_obj):
def reverse_tcp_handler((args, shell)):
shell_name = get_shell_name(shell)
handler = Generic((args.host, args.port), shell_name, is_bind=False)
handler.generate_and_execute(meterpreter=args.meterpreter)
handler.generate_and_execute()


def bind_tcp_handler((args, shell)):
shell_name = get_shell_name(shell)
handler = Generic((args.host, args.port), shell_name, is_bind=True)
handler.generate_and_execute(meterpreter=args.meterpreter)
handler.generate_and_execute()


# I am keeping these handlers because of @Lowfuel
Expand Down

0 comments on commit 79369a0

Please sign in to comment.