Project

General

Profile

Wiki » History » Version 2

Emanuele, 11/01/2019 06:35 PM

1 1 Emanuele
h1. SRLabs Gobuster
2
3
SRL_Gobuster is a tool used to brute-force and perform web tests:
4
5
* URIs (directories and files) in web sites.
6
7
Compared to the original version it adds the following features:
8
9
* Enhanced _False Positives_ detection.
10
* Integration with _Nikto_ tests wordlist.
11
12
The wordlist we used is a enhanced version of the test list used by _Nikto_.
13
14
h2. Common Command line options
15
16
* `-fw` - force processing of a domain with wildcard results.
17
* `-np` - hide the progress output.
18
* `-q` - disables banner/underline output.
19
* `-t <threads>` - number of threads to run (default: `10`).
20
* `-u <url/domain>` - full URL (including scheme), or base domain name.
21
* `-v` - verbose output (show all results).
22
* `-w <wordlist>` - path to the nikto tests wordlist used for brute forcing.
23
* `-V` - path to the nikto variable file.
24
* `-v` - show verbose output.
25
* `-k` - Skip verification of SSL certificates.
26
* `-a <user agent string>` - specify a user agent string to send in the request header.
27
* `-c <http cookies>` - use this to specify any cookies that you might need (simulating auth).
28
* `-oj <path>` - output file for JSON export.	
29
* `-o <file>` - specify a file name to write the output to.
30
* `-p <proxy url>` - specify a proxy to use for all requests (scheme much match the URL scheme).
31
* `-P <password>` - HTTP Authorization password (Basic Auth only, prompted if missing).
32
* `-U <username>` - HTTP Authorization username (Basic Auth only).
33
* `-to <timeout>` - HTTP timeout. Examples: 10s, 100ms, 1m (default: 10s).	
34
35
36
h2. Building
37
38
Since this tool is written in [Go](https://golang.org/) you need install the Go language/compiler/etc. Full details of installation and set up can be found [on the Go language website](https://golang.org/doc/install). Once installed you have two options.
39
40
h2. Compiling
41
42 2 Emanuele
First of all we need to clone srl_gobuster:
43
44
<pre>
45
git clone https://opensource.srlabs.de:/git/srl_gobuster.git
46
</pre>
47
48 1 Emanuele
_gobuster_ now has external dependencies, and so they need to be pulled in first:
49
50
<pre>
51
gobuster $ export GOPATH=$(pwd) && go get && go build
52
</pre>
53
54
This will create a `gobuster` binary for you. If you want to install it in the `$GOPATH/bin` folder you can run:
55
56
<pre>
57
gobuster $ go install
58
</pre>
59
60
If you have all the dependencies already, you can make use of the build scripts:
61
* `make` - builds for the current Go configuration (ie. runs `go build`).
62
* `make windows` - builds 32 and 64 bit binaries for windows, and writes them to the `build` subfolder.
63
* `make linux` - builds 32 and 64 bit binaries for linux, and writes them to the `build` subfolder.
64
* `make darwin` - builds 32 and 64 bit binaries for darwin, and writes them to the `build` subfolder.
65
* `make all` - builds for all platforms and architectures, and writes the resulting binaries to the `build` subfolder.
66
* `make clean` - clears out the `build` subfolder.
67
* `make test` - runs the tests.
68
69
h2. Running as a script
70
71
<pre>
72
gobuster $ go run main.go <parameters>
73
</pre>
74
75
76
h2. Examples
77
78
Command line might look like this:
79
80
<pre>
81
$ ./srl_gobuster -k -w ./db_test.txt -V db_variables -u https://example.com
82
83
=====================================================
84
Gobuster v.srlabs.2.0.1 (OJ Reeves @TheColonial)
85
Modified in SRLabs by Emanuele Vineti
86
=====================================================
87
[+] Url/Domain   : https://example.com/
88
[+] Threads      : 10
89
[+] Wordlist     : db_test.txt
90
=====================================================
91
2019/11/01 11:59:27  Starting gobuster
92
=====================================================
93
Found: /.sh_history (Status: 200) [Size: 28]
94
Found: /kboard/ (Status: 200) [Size: 5]
95
Found: /users.json (Status: 200) [Size: 3]
96
Progress: 24034 / 24034 (100.00%)
97
=====================================================
98
2019/11/01 12:02:31  Results 
99
=====================================================
100
-----------------------------------------------------
101
- Test Code: 000016
102
- Description: KBoard Forum 0.3.0 and prior have a security problem in forum_edit_post.php, forum_post.php and forum_reply.php
103
-----------------------------------------------------
104
105
[*] uri: "/kboard/", status: "200" len: 5, body: "Test "
106
107
-----------------------------------------------------
108
- Test Code: 007211
109
- Description: This might be interesting...
110
-----------------------------------------------------
111
112
[*] uri: "/users.json", status: "200" len: 3, body: "12 "
113
114
-----------------------------------------------------
115
- Test Code: home_directory
116
- Description: Gobuster classic tests
117
-----------------------------------------------------
118
119
[*] uri: ".sh_history", status: "200" len: 28, body: "curl test.com ping test.com "
120
121
=====================================================
122
2019/11/01 12:02:31 Finished
123
=====================================================
124
</pre>
125
126
Quiet output, with status disabled and expanded mode looks like this ("grep mode"):
127
128
<pre>
129
$ ./srl_gobuster -k -w ./db_test.txt -V db_variables -u https://example.com -q
130
https://example.com/kboard/
131
https://example.com/users.json
132
https://example.com/.sh_history
133
</pre>