Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
Real-time collaboration for Jupyter Notebooks, Linux Terminals, LaTeX, VS Code, R IDE, and more,
all in one place.
Path: blob/master/documentation/modules/auxiliary/scanner/gopher/gopher_gophermap.md
Views: 11784
Vulnerable Application
Any gopher server will work. There seems to only be a few left in 2017.
A few options for local installation and testing are below.
Docker Install
A dockerized gopher server written in Go is available. To install and run this, with content being served out of a temporary directory in which you'll be left:
NOTE: Don't forget to docker stop
the container ID returned from the docker run
command just run above:
Ubuntu 16.04 Install
First we need to install the server:
Next, we need to build content for the scanner to find. Gopher works off of a gophermap
, somewhat similar to a content index page, where files are listed in a menu type system.
In this case we create an html file, text file, a directory with a text file and png file in it. Enough content so its nice to look at. Next we write our gophermap
file. The first line is just an intro. After that, we list our files that the client can access.
The format of these lines is: XSome text here[TAB]/path/to/content[TAB]example.org[TAB]port
. The first character, X
is the file type which can be referenced in the table below. The final address (example.org) and PORT are optional.
The following table contains the file types associated with the characters:
Itemtype | Content |
---|---|
0 | Text file |
1 | Directory |
2 | CSO name server |
3 | Error |
4 | Mac HQX filer |
5 | PC binary |
6 | UNIX uuencoded file |
7 | Search server |
8 | Telnet Session |
9 | Binary File |
c | Calendar (not in 2.06) |
e | Event (not in 2.06) |
g | GIF image |
h | HTML, Hypertext Markup Language |
i | inline text type |
s | Sound |
I | Image (other than GIF) |
M | MIME multipart/mixed message |
T | TN3270 Session |
Verification Steps
Install the application
Start msfconsole
Do:
use auxiliary/scanner/gopher/gopher_gophermap
Do:
set rhosts [IPs]
Do:
run
You should see the gophermap file printed in a parsed format
Options
PATH
It is possible to view content within a directory of the gophermap. If the initial run shows directory Directory: foobar
, setting path to /foobar
will enumerate the contents of that folder. Default: [empty string].