1
1
Fork 0
mirror of https://github.com/OJ/gobuster.git synced 2024-05-19 02:36:02 +02:00

Rejig some documentation, THANKS, and add a few code tidies

This commit is contained in:
OJ 2016-06-04 09:31:00 +10:00
parent 09d0e5fd5c
commit cdbcb47375
3 changed files with 44 additions and 15 deletions

View File

@ -1,4 +1,4 @@
Gobuster v1.0 (OJ Reeves @TheColonial)
Gobuster v1.1 (OJ Reeves @TheColonial)
======================================
Alternative directory and file busting tool written in Go. DNS support recently added after inspiration and effort from [Peleus](https://twitter.com/0x42424242).
@ -79,7 +79,7 @@ Default options looks like this:
$ ./gobuster -u http://buffered.io/ -w words.txt
=====================================================
Gobuster v1.0 (DIR support by OJ Reeves @TheColonial)
Gobuster v1.1 (DIR support by OJ Reeves @TheColonial)
(DNS support by Peleus @0x42424242)
=====================================================
[+] Mode : dir
@ -98,7 +98,7 @@ Default options with status codes disabled looks like this:
$ ./gobuster -u http://buffered.io/ -w words.txt -n
=====================================================
Gobuster v1.0 (DIR support by OJ Reeves @TheColonial)
Gobuster v1.1 (DIR support by OJ Reeves @TheColonial)
(DNS support by Peleus @0x42424242)
=====================================================
[+] Mode : dir
@ -118,7 +118,7 @@ Verbose output looks like this:
$ ./gobuster -u http://buffered.io/ -w words.txt -v
=====================================================
Gobuster v1.0 (DIR support by OJ Reeves @TheColonial)
Gobuster v1.1 (DIR support by OJ Reeves @TheColonial)
(DNS support by Peleus @0x42424242)
=====================================================
[+] Mode : dir
@ -137,7 +137,7 @@ Found : /contact (Status: 301)
Example showing content length:
```
=====================================================
Gobuster v1.0 (DIR support by OJ Reeves @TheColonial)
Gobuster v1.1 (DIR support by OJ Reeves @TheColonial)
(DNS support by Peleus @0x42424242)
=====================================================
[+] Mode : dir
@ -170,7 +170,7 @@ Normal sample run goes like this:
$ ./gobuster -m dns -w subdomains.txt -u google.com
=====================================================
Gobuster v1.0 (DIR support by OJ Reeves @TheColonial)
Gobuster v1.1 (DIR support by OJ Reeves @TheColonial)
(DNS support by Peleus @0x42424242)
=====================================================
[+] Mode : dns
@ -203,7 +203,7 @@ Show IP sample run goes like this:
$ ./gobuster -m dns -w subdomains.txt -u google.com -i
=====================================================
Gobuster v1.0 (DIR support by OJ Reeves @TheColonial)
Gobuster v1.1 (DIR support by OJ Reeves @TheColonial)
(DNS support by Peleus @0x42424242)
=====================================================
[+] Mode : dns
@ -232,6 +232,22 @@ Found: news.google.com [216.58.220.110, 2404:6800:4006:801::200e]
Found: mail.google.com [216.58.220.101, 2404:6800:4006:801::2005]
=====================================================
```
Base domain validation warning when the base domain fails to resolve. This is a warning rather than a failure in case the user fat-fingers while typing the domain.
```
$ ./gobuster -m dns -w subdomains.txt -u yp.to -i
=====================================================
Gobuster v1.1 (DIR support by OJ Reeves @TheColonial)
(DNS support by Peleus @0x42424242)
=====================================================
[+] Mode : dns
[+] Url/Domain : yp.to
[+] Threads : 10
[+] Wordlist : /tmp/test.txt
=====================================================
[!] Unable to validate base domain: yp.to
Found: cr.yp.to [131.155.70.11, 131.155.70.13]
=====================================================
```
### License

5
THANKS
View File

@ -1,4 +1,7 @@
averagesecurityguy
g0tmi1k
justinsteven
kevinnz
peleus
UID1K
averagesecurityguy
viaMorgoth

24
main.go
View File

@ -2,8 +2,6 @@ package main
//----------------------------------------------------
// Gobuster -- by OJ Reeves
// Please see THANKS file for contributors.
// Please see LICENSE file for license details.
//
// A crap attempt at building something that resembles
// dirbuster or dirb using Go. The goal was to build
@ -12,6 +10,10 @@ package main
// to native code is also appealing.
//
// Run: gobuster -h
//
// Please see THANKS file for contributors.
// Please see LICENSE file for license details.
//
//----------------------------------------------------
import (
@ -188,7 +190,7 @@ func ParseCmdLine() *State {
flag.BoolVar(&s.Verbose, "v", false, "Verbose output (errors)")
flag.BoolVar(&s.ShowIPs, "i", false, "Show IP addresses (dns mode only)")
flag.BoolVar(&s.FollowRedirect, "r", false, "Follow redirects")
flag.BoolVar(&s.Quiet, "q", false, "Don't print the banner")
flag.BoolVar(&s.Quiet, "q", false, "Don't print the banner and other noise")
flag.BoolVar(&s.Expanded, "e", false, "Expanded mode, print full URLs")
flag.BoolVar(&s.NoStatus, "n", false, "Don't print status codes")
flag.BoolVar(&s.IncludeLength, "l", false, "Include the length of the body in the output (dir mode only)")
@ -196,6 +198,8 @@ func ParseCmdLine() *State {
flag.Parse()
Banner(&s)
switch strings.ToLower(s.Mode) {
case "dir":
s.Printer = PrintDirResult
@ -260,7 +264,7 @@ func ParseCmdLine() *State {
// prompt for password if needed
if valid && s.Username != "" && s.Password == "" {
fmt.Printf("Auth Password: ")
fmt.Printf("[?] Auth Password: ")
reader := bufio.NewReader(os.Stdin)
pass, err := reader.ReadString('\n')
@ -318,7 +322,7 @@ func Process(s *State) {
panic("Failed to open wordlist")
}
Banner(s)
ShowConfig(s)
if s.Setup(s) == false {
Ruler(s)
@ -541,9 +545,15 @@ func Banner(state *State) {
fmt.Println("")
Ruler(state)
fmt.Println("Gobuster v1.0 (DIR support by OJ Reeves @TheColonial)")
fmt.Println("Gobuster v1.1 (DIR support by OJ Reeves @TheColonial)")
fmt.Println(" (DNS support by Peleus @0x42424242)")
Ruler(state)
}
func ShowConfig(state *State) {
if state.Quiet {
return
}
if state != nil {
fmt.Printf("[+] Mode : %s\n", state.Mode)
@ -563,7 +573,7 @@ func Banner(state *State) {
}
if state.UserAgent != "" {
fmt.Printf("[+] User-Agent : %s\n", state.UserAgent)
fmt.Printf("[+] User Agent : %s\n", state.UserAgent)
}
if state.Username != "" {