added readme
for download and upload through the gontrol server
This commit is contained in:
parent
319ae00eb5
commit
bc09faf7cb
78
README.md
78
README.md
|
@ -1,3 +1,79 @@
|
||||||
# gommand
|
# gommand
|
||||||
|
|
||||||
A standalone shell with remote access through the browser
|
A standalone shell including remote access through your browser.
|
||||||
|
|
||||||
|
The shell has multiple features:
|
||||||
|
|
||||||
|
* Fully interactive shell in your browser
|
||||||
|
* Upload and download through to the browser
|
||||||
|
* Bash/emacs like controls
|
||||||
|
* Persistent color themes
|
||||||
|
* Resize rows and columns in interactive and non interactive shell by resizing
|
||||||
|
the browser window
|
||||||
|
* Connect to a control server like [gontrol](https://git.stefan.works/whx/gontrol)
|
||||||
|
|
||||||
|
## Execute gommand
|
||||||
|
|
||||||
|
Just start the binary, the TCP the shell is running on port will be chosen randomly.
|
||||||
|
If not sufficient, the port to connect directly to the shell can be chosen via
|
||||||
|
`-interactive-port` followed by your preferred TCP port. Furthermore, you can
|
||||||
|
chose the network interface `gommand` is using.
|
||||||
|
|
||||||
|
To connect `gommand` as an agent to a
|
||||||
|
[gontrol](https://git.stefan.works/whx/gontrol) C2 server, you can setup the IP
|
||||||
|
address and port. By default VPN interfaces like IPSec and wireguard will be
|
||||||
|
prioritized higher by `gommand`. That means if the network interface has not
|
||||||
|
been chosen manually, The first VPN interfaces will be used.
|
||||||
|
|
||||||
|
```sh
|
||||||
|
$ gommand --help
|
||||||
|
|
||||||
|
Usage of gommand:
|
||||||
|
-interactive-port string
|
||||||
|
Port to connect directly to the agent's webapp. Port will be random if not set.
|
||||||
|
-network-interface string
|
||||||
|
Network interface to bind to. Will bind to the first non loopback interface if not set. VPN interfaces will be preferred.
|
||||||
|
-server-address string
|
||||||
|
IP Address of the C2 server. (default "127.0.0.1")
|
||||||
|
-server-port string
|
||||||
|
Websocket port of the C2 server. (default "5555")
|
||||||
|
```
|
||||||
|
|
||||||
|
## Usage
|
||||||
|
|
||||||
|
Once the binary of the shell has been executed on the target you can open the
|
||||||
|
shell via browser connection. The TCP port will be chosen randomly if not set
|
||||||
|
as a parameter at startup.
|
||||||
|
|
||||||
|
Connect to the shell by putting IP address and port into the address input bar
|
||||||
|
of your browser.
|
||||||
|
|
||||||
|
Once you have opened the shell in your browser use it like any other command
|
||||||
|
line interface. You are greeted by the non interactive shell mode. This
|
||||||
|
includes uploading, downloading and setting the color theme of the shell. You
|
||||||
|
can switch to a completely interactive shell from here.
|
||||||
|
|
||||||
|
Type help inside the shell to get more information:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
$ help
|
||||||
|
|
||||||
|
This is a shell in the browser, a web shell.
|
||||||
|
|
||||||
|
It includes a non-interactive shell with an optional interactive mode.
|
||||||
|
Furthermore, additional commands to ease communications between server
|
||||||
|
and client.
|
||||||
|
|
||||||
|
Available Commands:
|
||||||
|
upload Upload files to the server through the file selector of the browser.
|
||||||
|
download <file> Download files from the server to your local download directory.
|
||||||
|
theme <theme> Change the colorscheme of the shell. Type theme to get an overview of all colorschemes.
|
||||||
|
start-interactive Opens a shell in an interactive terminal. Type ctrl+d to go back to non-interactive mode.
|
||||||
|
```
|
||||||
|
|
||||||
|
### Interactive Mode
|
||||||
|
|
||||||
|
Use the command `start-interactive` to switch to an interactive shell. Once
|
||||||
|
activated you can use binaries and shell-builtins which need interaction. For
|
||||||
|
example `less`, `vim`, your favorite package manager or initial connection to a
|
||||||
|
server using `ssh`.
|
||||||
|
|
Loading…
Reference in New Issue