ronin 1.5.0 → 1.5.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +7 -0
- data/.editorconfig +11 -0
- data/.github/workflows/ruby.yml +32 -0
- data/.gitignore +7 -7
- data/.ruby-version +1 -0
- data/COPYING.txt +3 -3
- data/ChangeLog.md +25 -11
- data/Gemfile +21 -20
- data/README.md +102 -81
- data/Rakefile +4 -5
- data/bin/ronin +7 -12
- data/bin/ronin-campaigns +7 -12
- data/bin/ronin-console +7 -12
- data/bin/ronin-creds +7 -12
- data/bin/ronin-database +7 -12
- data/bin/ronin-emails +7 -12
- data/bin/ronin-exec +7 -12
- data/bin/ronin-fuzzer +7 -12
- data/bin/ronin-help +7 -12
- data/bin/ronin-hosts +7 -12
- data/bin/ronin-install +7 -12
- data/bin/ronin-ips +7 -12
- data/bin/ronin-net-proxy +7 -12
- data/bin/ronin-repos +7 -12
- data/bin/ronin-uninstall +7 -12
- data/bin/ronin-update +7 -12
- data/bin/ronin-urls +7 -12
- data/bin/ronin-wordlist +7 -12
- data/gemspec.yml +8 -8
- data/lib/bond/completions/ronin.rb +23 -23
- data/lib/ronin.rb +3 -3
- data/lib/ronin/address.rb +6 -7
- data/lib/ronin/arch.rb +3 -3
- data/lib/ronin/author.rb +5 -7
- data/lib/ronin/auto_load.rb +5 -5
- data/lib/ronin/bootstrap.rb +3 -3
- data/lib/ronin/campaign.rb +3 -3
- data/lib/ronin/config.rb +5 -7
- data/lib/ronin/credential.rb +3 -3
- data/lib/ronin/database.rb +3 -3
- data/lib/ronin/database/database.rb +8 -12
- data/lib/ronin/database/exceptions.rb +3 -3
- data/lib/ronin/database/exceptions/invalid_config.rb +3 -3
- data/lib/ronin/database/exceptions/unknown_repository.rb +3 -3
- data/lib/ronin/database/migrations.rb +3 -3
- data/lib/ronin/database/migrations/1.0.0.rb +3 -3
- data/lib/ronin/database/migrations/1.1.0.rb +3 -3
- data/lib/ronin/database/migrations/exceptions.rb +3 -3
- data/lib/ronin/database/migrations/exceptions/duplicate_migration.rb +3 -3
- data/lib/ronin/database/migrations/exceptions/unknown_migration.rb +3 -3
- data/lib/ronin/database/migrations/graph.rb +3 -3
- data/lib/ronin/database/migrations/migration.rb +3 -3
- data/lib/ronin/database/migrations/migrations.rb +3 -3
- data/lib/ronin/email_address.rb +5 -7
- data/lib/ronin/environment.rb +3 -3
- data/lib/ronin/exceptions.rb +3 -3
- data/lib/ronin/exceptions/duplicate_repository.rb +3 -3
- data/lib/ronin/exceptions/repository_not_found.rb +3 -3
- data/lib/ronin/host_name.rb +3 -3
- data/lib/ronin/host_name_ip_address.rb +3 -3
- data/lib/ronin/installation.rb +5 -7
- data/lib/ronin/ip_address.rb +6 -8
- data/lib/ronin/ip_address_mac_address.rb +3 -3
- data/lib/ronin/license.rb +6 -6
- data/lib/ronin/mac_address.rb +3 -3
- data/lib/ronin/model.rb +3 -3
- data/lib/ronin/model/has_authors.rb +3 -3
- data/lib/ronin/model/has_description.rb +3 -3
- data/lib/ronin/model/has_license.rb +3 -3
- data/lib/ronin/model/has_name.rb +3 -3
- data/lib/ronin/model/has_title.rb +3 -3
- data/lib/ronin/model/has_unique_name.rb +5 -7
- data/lib/ronin/model/has_version.rb +3 -3
- data/lib/ronin/model/importable.rb +3 -3
- data/lib/ronin/model/model.rb +7 -8
- data/lib/ronin/model/types.rb +3 -3
- data/lib/ronin/model/types/description.rb +9 -12
- data/lib/ronin/open_port.rb +5 -7
- data/lib/ronin/organization.rb +3 -3
- data/lib/ronin/os.rb +5 -7
- data/lib/ronin/os_guess.rb +3 -3
- data/lib/ronin/password.rb +3 -3
- data/lib/ronin/port.rb +3 -3
- data/lib/ronin/repositories.rb +3 -3
- data/lib/ronin/repository.rb +3 -3
- data/lib/ronin/ronin.rb +3 -3
- data/lib/ronin/script.rb +3 -3
- data/lib/ronin/script/buildable.rb +3 -3
- data/lib/ronin/script/deployable.rb +3 -3
- data/lib/ronin/script/exceptions.rb +3 -3
- data/lib/ronin/script/exceptions/build_failed.rb +3 -3
- data/lib/ronin/script/exceptions/deploy_failed.rb +3 -3
- data/lib/ronin/script/exceptions/exception.rb +3 -3
- data/lib/ronin/script/exceptions/not_built.rb +3 -3
- data/lib/ronin/script/exceptions/test_failed.rb +3 -3
- data/lib/ronin/script/path.rb +3 -3
- data/lib/ronin/script/script.rb +3 -3
- data/lib/ronin/script/testable.rb +3 -3
- data/lib/ronin/service.rb +3 -3
- data/lib/ronin/service_credential.rb +3 -3
- data/lib/ronin/software.rb +3 -3
- data/lib/ronin/spec/database.rb +27 -21
- data/lib/ronin/target.rb +3 -3
- data/lib/ronin/tcp_port.rb +3 -3
- data/lib/ronin/udp_port.rb +3 -3
- data/lib/ronin/ui.rb +3 -3
- data/lib/ronin/ui/cli.rb +3 -3
- data/lib/ronin/ui/cli/class_command.rb +14 -7
- data/lib/ronin/ui/cli/cli.rb +5 -5
- data/lib/ronin/ui/cli/command.rb +5 -7
- data/lib/ronin/ui/cli/commands.rb +3 -3
- data/lib/ronin/ui/cli/commands/campaigns.rb +5 -7
- data/lib/ronin/ui/cli/commands/console.rb +3 -3
- data/lib/ronin/ui/cli/commands/creds.rb +3 -3
- data/lib/ronin/ui/cli/commands/database.rb +3 -3
- data/lib/ronin/ui/cli/commands/emails.rb +3 -3
- data/lib/ronin/ui/cli/commands/exec.rb +3 -3
- data/lib/ronin/ui/cli/commands/fuzzer.rb +16 -16
- data/lib/ronin/ui/cli/commands/help.rb +3 -3
- data/lib/ronin/ui/cli/commands/hosts.rb +5 -7
- data/lib/ronin/ui/cli/commands/install.rb +7 -11
- data/lib/ronin/ui/cli/commands/ips.rb +5 -7
- data/lib/ronin/ui/cli/commands/net/proxy.rb +19 -12
- data/lib/ronin/ui/cli/commands/repos.rb +3 -3
- data/lib/ronin/ui/cli/commands/uninstall.rb +3 -3
- data/lib/ronin/ui/cli/commands/update.rb +3 -3
- data/lib/ronin/ui/cli/commands/urls.rb +3 -3
- data/lib/ronin/ui/cli/commands/wordlist.rb +3 -3
- data/lib/ronin/ui/cli/exceptions.rb +3 -3
- data/lib/ronin/ui/cli/exceptions/unknown_command.rb +3 -3
- data/lib/ronin/ui/cli/model_command.rb +6 -9
- data/lib/ronin/ui/cli/printing.rb +3 -3
- data/lib/ronin/ui/cli/resources_command.rb +7 -11
- data/lib/ronin/ui/cli/script_command.rb +5 -10
- data/lib/ronin/ui/console.rb +3 -3
- data/lib/ronin/ui/console/commands.rb +3 -3
- data/lib/ronin/ui/console/console.rb +3 -3
- data/lib/ronin/ui/console/context.rb +3 -3
- data/lib/ronin/ui/console/shell.rb +3 -3
- data/lib/ronin/url.rb +5 -7
- data/lib/ronin/url_query_param.rb +3 -3
- data/lib/ronin/url_query_param_name.rb +6 -6
- data/lib/ronin/url_scheme.rb +4 -4
- data/lib/ronin/user_name.rb +3 -3
- data/lib/ronin/vendor.rb +3 -3
- data/lib/ronin/version.rb +5 -5
- data/lib/ronin/web_credential.rb +5 -7
- data/man/ronin-campaigns.1.md +20 -20
- data/man/ronin-console.1.md +17 -17
- data/man/ronin-creds.1.md +16 -16
- data/man/ronin-database.1.md +23 -23
- data/man/ronin-emails.1.md +18 -18
- data/man/ronin-exec.1.md +11 -11
- data/man/ronin-fuzzer.1.md +23 -23
- data/man/ronin-help.1.md +5 -5
- data/man/ronin-hosts.1.md +20 -20
- data/man/ronin-install.1.md +18 -18
- data/man/ronin-ips.1.md +21 -21
- data/man/ronin-net-proxy.1.md +24 -24
- data/man/ronin-repos.1.md +18 -18
- data/man/ronin-uninstall.1.md +14 -14
- data/man/ronin-update.1.md +14 -14
- data/man/ronin-urls.1.md +22 -22
- data/man/ronin-wordlist.1.md +14 -13
- data/man/ronin.1.md +1 -1
- data/spec/arch_spec.rb +59 -46
- data/spec/author_spec.rb +14 -14
- data/spec/campaign_spec.rb +8 -0
- data/spec/credential_spec.rb +11 -8
- data/spec/database_spec.rb +6 -6
- data/spec/email_address_spec.rb +23 -20
- data/spec/host_name_spec.rb +24 -22
- data/spec/installation_spec.rb +6 -6
- data/spec/ip_address_spec.rb +31 -26
- data/spec/license_spec.rb +15 -9
- data/spec/mac_address_spec.rb +17 -8
- data/spec/model/has_authors_spec.rb +56 -37
- data/spec/model/has_description_spec.rb +36 -23
- data/spec/model/has_license_spec.rb +38 -28
- data/spec/model/has_name_spec.rb +36 -19
- data/spec/model/has_title_spec.rb +27 -14
- data/spec/model/has_version_spec.rb +64 -35
- data/spec/model/model_spec.rb +57 -33
- data/spec/model/models/{basic_model.rb → base_model.rb} +1 -1
- data/spec/model/models/{custom_model.rb → inherited_model.rb} +2 -3
- data/spec/os_spec.rb +24 -20
- data/spec/password_spec.rb +17 -9
- data/spec/port_spec.rb +30 -22
- data/spec/repository_spec.rb +59 -60
- data/spec/ronin_spec.rb +4 -4
- data/spec/script/buildable_spec.rb +8 -8
- data/spec/script/deployable_spec.rb +7 -7
- data/spec/script/path_spec.rb +42 -40
- data/spec/script/script_spec.rb +23 -23
- data/spec/script/testable_spec.rb +20 -20
- data/spec/service_spec.rb +14 -8
- data/spec/software_spec.rb +30 -17
- data/spec/spec_helper.rb +4 -4
- data/spec/ui/cli/classes/test_command.rb +2 -4
- data/spec/ui/cli/cli_spec.rb +5 -5
- data/spec/ui/cli/command_spec.rb +34 -30
- data/spec/url_query_param_spec.rb +23 -14
- data/spec/url_scheme_spec.rb +12 -9
- data/spec/url_spec.rb +64 -61
- data/spec/vendor_spec.rb +15 -8
- metadata +122 -150
- data/.gemtest +0 -0
data/man/ronin-console.1.md
CHANGED
@@ -11,57 +11,57 @@ Start the Ronin Console.
|
|
11
11
|
## OPTIONS
|
12
12
|
|
13
13
|
`--[no-]color`
|
14
|
-
|
14
|
+
Enables color output.
|
15
15
|
|
16
16
|
`-q`, `--[no-]quiet`
|
17
|
-
|
17
|
+
Disable verbose output.
|
18
18
|
|
19
19
|
`--[no-]silent`
|
20
|
-
|
20
|
+
Silence all output.
|
21
21
|
|
22
22
|
`-v`, `--[no-]verbose`
|
23
|
-
|
23
|
+
Enable verbose output.
|
24
24
|
|
25
25
|
`-D`, `--database` [*URI*]
|
26
|
-
|
26
|
+
The database to URI (`mysql://user:password@host/ronin`).
|
27
27
|
|
28
28
|
`--[no-]backtrace`
|
29
|
-
|
29
|
+
Enable or disables long backtraces.
|
30
30
|
|
31
31
|
`-V`, `--[no-]version`
|
32
|
-
|
32
|
+
Print the Ronin version.
|
33
33
|
|
34
34
|
`-r`, `--require` [*PATH*]
|
35
|
-
|
35
|
+
Ruby files to require.
|
36
36
|
|
37
37
|
## FILES
|
38
38
|
|
39
39
|
*~/.ronin/*
|
40
|
-
|
40
|
+
Ronin configuration directory.
|
41
41
|
|
42
42
|
*~/.ronin/config.rb*
|
43
|
-
|
43
|
+
Configuration file that is loaded before the Ronin Console starts.
|
44
44
|
|
45
45
|
*~/.ronin/console.log*
|
46
|
-
|
46
|
+
History log for the Ronin Console.
|
47
47
|
|
48
48
|
*~/.ronin/database.log*
|
49
|
-
|
49
|
+
Database log.
|
50
50
|
|
51
51
|
*~/.ronin/database.sqlite3*
|
52
|
-
|
52
|
+
The default sqlite3 Database file.
|
53
53
|
|
54
54
|
*~/.ronin/database.yml*
|
55
|
-
|
55
|
+
Optional Database configuration.
|
56
56
|
|
57
57
|
## ENVIRONMENT
|
58
58
|
|
59
59
|
HOME
|
60
|
-
|
61
|
-
|
60
|
+
Specifies the home directory of the user. Ronin will search for the
|
61
|
+
*~/.ronin/* configuration directory within the home directory.
|
62
62
|
|
63
63
|
EDITOR
|
64
|
-
|
64
|
+
Specifies the editor to use when invoking the `.edit` console command.
|
65
65
|
|
66
66
|
## AUTHOR
|
67
67
|
|
data/man/ronin-creds.1.md
CHANGED
@@ -11,54 +11,54 @@ Lists Credentials.
|
|
11
11
|
## OPTIONS
|
12
12
|
|
13
13
|
`-v`, `--[no-]verbose`
|
14
|
-
|
14
|
+
Enable verbose output.
|
15
15
|
|
16
16
|
`-q`, `--[no-]quiet`
|
17
|
-
|
17
|
+
Disable verbose output.
|
18
18
|
|
19
19
|
`--[no-]silent`
|
20
|
-
|
20
|
+
Silence all output.
|
21
21
|
|
22
22
|
`--[no-]color`
|
23
|
-
|
23
|
+
Enables color output.
|
24
24
|
|
25
25
|
`-D`, `--database` *URI*
|
26
|
-
|
26
|
+
The database to URI (`mysql://user:password@host/ronin`).
|
27
27
|
|
28
28
|
`--[no-]csv`
|
29
|
-
|
29
|
+
CSV output.
|
30
30
|
|
31
31
|
`--[no-]xml`
|
32
|
-
|
32
|
+
XML output.
|
33
33
|
|
34
34
|
`--[no-]yaml`
|
35
|
-
|
35
|
+
YAML output.
|
36
36
|
|
37
37
|
`--[no-]json`
|
38
|
-
|
38
|
+
JSON output.
|
39
39
|
|
40
40
|
`-u`, `--for-user` *USER*
|
41
|
-
|
41
|
+
Searches for Credentials associated with the USER.
|
42
42
|
|
43
43
|
`-p`, `--with-password` *PASSWORD*
|
44
|
-
|
44
|
+
Searches for Credentials that have the PASSWORD.
|
45
45
|
|
46
46
|
`-l`, `--[no-]list`
|
47
|
-
|
47
|
+
Lists the Credentials.
|
48
48
|
|
49
49
|
## FILES
|
50
50
|
|
51
51
|
*~/.ronin/*
|
52
|
-
|
52
|
+
Ronin configuration directory.
|
53
53
|
|
54
54
|
*~/.ronin/database.log*
|
55
|
-
|
55
|
+
Database log.
|
56
56
|
|
57
57
|
*~/.ronin/database.sqlite3*
|
58
|
-
|
58
|
+
The default sqlite3 Database file.
|
59
59
|
|
60
60
|
*~/.ronin/database.yml*
|
61
|
-
|
61
|
+
Optional Database configuration.
|
62
62
|
|
63
63
|
## AUTHOR
|
64
64
|
|
data/man/ronin-database.1.md
CHANGED
@@ -11,70 +11,70 @@ Manages the Ronin Database.
|
|
11
11
|
## OPTIONS
|
12
12
|
|
13
13
|
`-v`, `--[no-]verbose`
|
14
|
-
|
14
|
+
Enable verbose output.
|
15
15
|
|
16
16
|
`-q`, `--[no-]quiet`
|
17
|
-
|
17
|
+
Disable verbose output.
|
18
18
|
|
19
19
|
`--[no-]silent`
|
20
|
-
|
20
|
+
Silence all output.
|
21
21
|
|
22
22
|
`--[no-]color`
|
23
|
-
|
23
|
+
Enables color output.
|
24
24
|
|
25
25
|
`-a`, `--add` *NAME*
|
26
|
-
|
26
|
+
Adds a new Database Repository.
|
27
27
|
|
28
28
|
`-s`, `--set` *NAME*
|
29
|
-
|
29
|
+
Sets the configure information for a Database Repository.
|
30
30
|
|
31
31
|
`-r`, `--remove` *NAME*
|
32
|
-
|
32
|
+
Removes a Database Repository.
|
33
33
|
|
34
34
|
`-C`, `--clear` *NAME*
|
35
|
-
|
35
|
+
`WARNING:` This will delete all database within a Database Repository.
|
36
36
|
|
37
37
|
`--uri` *URI*
|
38
|
-
|
38
|
+
The URI of a Database Repository (`sqlite3:///path/to/db`).
|
39
39
|
|
40
40
|
`--adapter` *ADAPTER*
|
41
|
-
|
41
|
+
The Database ADAPTER to use:
|
42
42
|
|
43
|
-
|
44
|
-
|
45
|
-
|
43
|
+
* `sqlite3`
|
44
|
+
* `mysql`
|
45
|
+
* `postgres`
|
46
46
|
|
47
47
|
`--host` *HOST*
|
48
|
-
|
48
|
+
The HOST that the Database is running on.
|
49
49
|
|
50
50
|
`--port` *PORT*
|
51
|
-
|
51
|
+
The PORT that the Database is listening on.
|
52
52
|
|
53
53
|
`--user` *USER*
|
54
|
-
|
54
|
+
The USER to login as.
|
55
55
|
|
56
56
|
`--password` *PASSWORD*
|
57
|
-
|
57
|
+
The PASSWORD to use while authenticating.
|
58
58
|
|
59
59
|
`--database` *NAME*
|
60
|
-
|
60
|
+
The name of the Database.
|
61
61
|
|
62
62
|
`--path` *PATH*
|
63
|
-
|
63
|
+
The path to the Database. Only valid with `sqlite3` Databases.
|
64
64
|
|
65
65
|
## FILES
|
66
66
|
|
67
67
|
*~/.ronin/*
|
68
|
-
|
68
|
+
Ronin configuration directory.
|
69
69
|
|
70
70
|
*~/.ronin/database.log*
|
71
|
-
|
71
|
+
Database log.
|
72
72
|
|
73
73
|
*~/.ronin/database.sqlite3*
|
74
|
-
|
74
|
+
The default sqlite3 Database file.
|
75
75
|
|
76
76
|
*~/.ronin/database.yml*
|
77
|
-
|
77
|
+
Optional Database configuration.
|
78
78
|
|
79
79
|
## AUTHOR
|
80
80
|
|
data/man/ronin-emails.1.md
CHANGED
@@ -11,60 +11,60 @@ Manages EmailAddresses.
|
|
11
11
|
## OPTIONS
|
12
12
|
|
13
13
|
`-v`, `--[no-]verbose`
|
14
|
-
|
14
|
+
Enable verbose output.
|
15
15
|
|
16
16
|
`-q`, `--[no-]quiet`
|
17
|
-
|
17
|
+
Disable verbose output.
|
18
18
|
|
19
19
|
`--[no-]silent`
|
20
|
-
|
20
|
+
Silence all output.
|
21
21
|
|
22
22
|
`--[no-]color`
|
23
|
-
|
23
|
+
Enables color output.
|
24
24
|
|
25
25
|
`-D`, `--database` [*URI*]
|
26
|
-
|
26
|
+
The database to URI (`mysql://user:password@host/ronin`).
|
27
27
|
|
28
28
|
`--[no-]csv`
|
29
|
-
|
29
|
+
CSV output.
|
30
30
|
|
31
31
|
`--[no-]xml`
|
32
|
-
|
32
|
+
XML output.
|
33
33
|
|
34
34
|
`--[no-]yaml`
|
35
|
-
|
35
|
+
YAML output.
|
36
36
|
|
37
37
|
`--[no-]json`
|
38
|
-
|
38
|
+
JSON output.
|
39
39
|
|
40
40
|
`-H`, `--with-hosts` *HOST* [...]
|
41
|
-
|
41
|
+
Searches for EmailAddresses associated with the HOST(s).
|
42
42
|
|
43
43
|
`-I`, `--with-ips` *IP* [...]
|
44
|
-
|
44
|
+
Searches for EmailAddresses associated with the IP Address(es).
|
45
45
|
|
46
46
|
`-u`, `--with-users` *NAME* [...]
|
47
|
-
|
47
|
+
Searches for EmailAddresses associated with the user NAME(s).
|
48
48
|
|
49
49
|
`-l`, `--[no-]list`
|
50
|
-
|
50
|
+
Lists the EmailAddresses.
|
51
51
|
|
52
52
|
`-i`, `--import` *FILE*
|
53
|
-
|
53
|
+
Imports EmailAddresses from the FILE.
|
54
54
|
|
55
55
|
## FILES
|
56
56
|
|
57
57
|
*~/.ronin/*
|
58
|
-
|
58
|
+
Ronin configuration directory.
|
59
59
|
|
60
60
|
*~/.ronin/database.log*
|
61
|
-
|
61
|
+
Database log.
|
62
62
|
|
63
63
|
*~/.ronin/database.sqlite3*
|
64
|
-
|
64
|
+
The default sqlite3 Database file.
|
65
65
|
|
66
66
|
*~/.ronin/database.yml*
|
67
|
-
|
67
|
+
Optional Database configuration.
|
68
68
|
|
69
69
|
## AUTHOR
|
70
70
|
|
data/man/ronin-exec.1.md
CHANGED
@@ -11,37 +11,37 @@ Runs a script from a Ronin Repository.
|
|
11
11
|
## ARGUMENTS
|
12
12
|
|
13
13
|
*SCRIPT*
|
14
|
-
|
15
|
-
|
14
|
+
The name of the script to search for within the `bin/` directories within the
|
15
|
+
Repositories.
|
16
16
|
|
17
17
|
*ARGS*
|
18
|
-
|
18
|
+
Additional arguments to pass to the SCRIPT.
|
19
19
|
|
20
20
|
## FILES
|
21
21
|
|
22
22
|
*~/.ronin/*
|
23
|
-
|
23
|
+
Ronin configuration directory.
|
24
24
|
|
25
25
|
*~/.ronin/config.rb*
|
26
|
-
|
26
|
+
Configuration file that is loaded before the Ronin Console starts.
|
27
27
|
|
28
28
|
*~/.ronin/console.log*
|
29
|
-
|
29
|
+
History log for the Ronin Console.
|
30
30
|
|
31
31
|
*~/.ronin/database.log*
|
32
|
-
|
32
|
+
Database log.
|
33
33
|
|
34
34
|
*~/.ronin/database.sqlite3*
|
35
|
-
|
35
|
+
The default sqlite3 Database file.
|
36
36
|
|
37
37
|
*~/.ronin/database.yml*
|
38
|
-
|
38
|
+
Optional Database configuration.
|
39
39
|
|
40
40
|
## ENVIRONMENT
|
41
41
|
|
42
42
|
HOME
|
43
|
-
|
44
|
-
|
43
|
+
Specifies the home directory of the user. Ronin will search for the
|
44
|
+
*~/.ronin* configuration directory within the home directory.
|
45
45
|
|
46
46
|
## AUTHOR
|
47
47
|
|
data/man/ronin-fuzzer.1.md
CHANGED
@@ -12,60 +12,60 @@ to output files, run in commands or sent to TCP/UDP services.
|
|
12
12
|
## OPTIONS
|
13
13
|
|
14
14
|
`-v`, `--[no-]verbose`
|
15
|
-
|
15
|
+
Enable verbose output.
|
16
16
|
|
17
17
|
`-q`, `--[no-]quiet`
|
18
|
-
|
18
|
+
Disable verbose output.
|
19
19
|
|
20
20
|
`--[no-]silent`
|
21
|
-
|
21
|
+
Silence all output.
|
22
22
|
|
23
23
|
`--[no-]color`
|
24
|
-
|
24
|
+
Enables color output.
|
25
25
|
|
26
26
|
`-i`, `--input` *FILE*
|
27
|
-
|
27
|
+
The input text FILE to parse. Data will be read from `STDIN` by default.
|
28
28
|
|
29
29
|
`-r`, `--rule` [*PATTERN*|*/REGEXP/*|STRING]:[*METHOD*|*STRING***N*[-*M*]]
|
30
|
-
|
31
|
-
|
30
|
+
The rule to apply to the *INPUT*. Fuzzer rules consist of a pattern and
|
31
|
+
substitution. Patterns may be one of the following:
|
32
32
|
|
33
|
-
|
34
|
-
|
35
|
-
|
33
|
+
* A name of a Ronin Regular Expression (ex: `unix_path`)
|
34
|
+
* A custom Regular Expression (ex: `/\d+/`)
|
35
|
+
* A plain String (ex: `example.com`).
|
36
36
|
|
37
|
-
|
37
|
+
Substitutions may be one of the following:
|
38
38
|
|
39
|
-
|
40
|
-
|
39
|
+
* A method from `Ronin::Fuzzing` (ex: `bad_strings`)
|
40
|
+
* A *STRING*, repeated *N* or *M* times (ex: `A*100-200`).
|
41
41
|
|
42
42
|
`-o`, `--output` *PATH*
|
43
|
-
|
43
|
+
The output PATH to write the fuzzer to.
|
44
44
|
|
45
45
|
`-c`, `--command` *COMMAND*
|
46
|
-
|
47
|
-
|
48
|
-
|
46
|
+
The command to run with the fuzzed data. All ocurrences of `#string#`
|
47
|
+
will be replaced with the fuzzed data, and ocurrences of `#path#` will
|
48
|
+
be replaced with the path to the fuzzed data.
|
49
49
|
|
50
50
|
`-t`, `--tcp` *HOST*:*PORT*
|
51
|
-
|
51
|
+
The TCP service to send the fuzzed data to.
|
52
52
|
|
53
53
|
`-u`, `--udp` *HOST*:*PORT*
|
54
|
-
|
54
|
+
The UDP service to send the fuzzed data to.
|
55
55
|
|
56
56
|
## EXAMPLES
|
57
57
|
|
58
58
|
`ronin fuzzer -i http_request.txt -o bad.txt -r unix_path:bad_strings`
|
59
|
-
|
60
|
-
|
59
|
+
Fuzzes a HTTP request, replacing every occurrence of a UNIX path, with
|
60
|
+
strings from the `bad_strings` method.
|
61
61
|
|
62
62
|
## LINKS
|
63
63
|
|
64
64
|
Ronin Regular Expressions
|
65
|
-
|
65
|
+
https://ronin-rb.dev/docs/ronin-support/Regexp.html
|
66
66
|
|
67
67
|
`Ronin::Fuzzing`
|
68
|
-
|
68
|
+
https://ronin-rb.dev/docs/ronin-support/Ronin/Fuzzing.html
|
69
69
|
|
70
70
|
## AUTHOR
|
71
71
|
|