zeppelin

command module
v0.2.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 14, 2020 License: Apache-2.0 Imports: 9 Imported by: 0

README

Zeppelin

Zeppelin is a tiny web server for uploading and downloading files able to run on close to any system without dependencies and with some extra pentester toys.

Build:

For compiling zeppelin you need to have a working go instalation, please visit golang.org for detailed instructions on how to do this.

After, its as easy as issuing the following commands:

git clone https://github.com/hcninja/zeppelin.git
cd zeppelin
go build

Or just download the latest release for your architecture directly from releases.

Usage:

With ./zeppelin -h you will get the available flags.

Usage of ./zeppelin:
  -host string
    	Server host (default "127.0.0.1")
  -nocmd
    	Disables CMD endpoints
  -noupload
    	Disables the upload endpoint
  -path string
    	Path to serve and upload files to (default "./")
  -port string
    	Server port (default "8080")
  -tls
    	Enables TLS. Cert and key must be in root 'cert.pem and key.pem'
  -unsafe
    	Removes the file upload limit of 8MB

The standard running mode, is to serve the path where zeppelin is running on. For serving the /etc directory on all interfaces on port 8443 you can use ./zeppelin -host 0.0.0.0 -pots 8443 -path /etc.

Generating a testing self-signed certificate

In order to enable TLS on Zeppelin you must provide a certificate and a key in pem format, Zeppelin will search for this two files under the name "cert.pem" and "key.pem".

If you have no available certificate (you can use a Let's Encrypt one for free), you can generate a self-signed certificate with openssl:

openssl req -x509 -out cert.pem -keyout key.pem \
  -newkey rsa:2048 -nodes -sha256 \
  -subj '/CN=localhost' -extensions EXT -config <( \
   printf "[dn]\nCN=localhost\n[req]\ndistinguished_name = dn\n[EXT]\nsubjectAltName=DNS:127.0.0.1\nkeyUsage=digitalSignature\nextendedKeyUsage=serverAuth")

ToDo:

  • Navigate the served directory
  • File upload
  • HTTPS
  • System command execution
  • File navigator and uploader authentication
  • Web interface for logging request with headers
  • Process injection/migration

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL