ronin 1.4.1 → 1.5.0.rc1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.document +1 -0
- data/.gitignore +1 -0
- data/ChangeLog.md +38 -1
- data/Gemfile +10 -10
- data/README.md +1 -1
- data/Rakefile +13 -2
- data/bin/ronin-net-proxy +25 -0
- data/gemspec.yml +21 -2
- data/lib/bond/completions/ronin.rb +16 -5
- data/lib/ronin/arch.rb +5 -5
- data/lib/ronin/auto_load.rb +22 -1
- data/lib/ronin/campaign.rb +1 -1
- data/lib/ronin/database/database.rb +36 -25
- data/lib/ronin/installation.rb +2 -2
- data/lib/ronin/model/model.rb +5 -6
- data/lib/ronin/model/types/description.rb +0 -3
- data/lib/ronin/os.rb +2 -2
- data/lib/ronin/password.rb +1 -1
- data/lib/ronin/repository.rb +6 -6
- data/lib/ronin/script/path.rb +1 -2
- data/lib/ronin/spec/database.rb +16 -4
- data/lib/ronin/ui/cli/cli.rb +1 -1
- data/lib/ronin/ui/cli/command.rb +50 -7
- data/lib/ronin/ui/cli/commands/console.rb +15 -6
- data/lib/ronin/ui/cli/commands/creds.rb +1 -1
- data/lib/ronin/ui/cli/commands/database.rb +41 -29
- data/lib/ronin/ui/cli/commands/emails.rb +20 -15
- data/lib/ronin/ui/cli/commands/help.rb +18 -5
- data/lib/ronin/ui/cli/commands/hosts.rb +34 -27
- data/lib/ronin/ui/cli/commands/install.rb +21 -4
- data/lib/ronin/ui/cli/commands/ips.rb +34 -23
- data/lib/ronin/ui/cli/commands/net/proxy.rb +403 -0
- data/lib/ronin/ui/cli/commands/repos.rb +4 -4
- data/lib/ronin/ui/cli/commands/uninstall.rb +10 -0
- data/lib/ronin/ui/cli/commands/update.rb +11 -1
- data/lib/ronin/ui/cli/commands/urls.rb +39 -30
- data/lib/ronin/ui/cli/commands/wordlist.rb +11 -1
- data/lib/ronin/ui/console.rb +1 -0
- data/lib/ronin/ui/console/commands.rb +16 -98
- data/lib/ronin/ui/console/shell.rb +184 -0
- data/lib/ronin/url.rb +3 -3
- data/lib/ronin/url_scheme.rb +3 -3
- data/lib/ronin/version.rb +1 -1
- data/man/ronin-campaigns.1.md +78 -0
- data/man/ronin-console.1.md +72 -0
- data/man/ronin-creds.1.md +66 -0
- data/man/ronin-database.1.md +82 -0
- data/man/ronin-emails.1.md +72 -0
- data/man/ronin-exec.1.md +49 -0
- data/man/ronin-help.1.md +34 -0
- data/man/ronin-hosts.1.md +78 -0
- data/man/ronin-install.1.md +79 -0
- data/man/ronin-ips.1.md +81 -0
- data/man/ronin-net-proxy.1.md +86 -0
- data/man/ronin-repos.1.md +77 -0
- data/man/ronin-uninstall.1.md +67 -0
- data/man/ronin-update.1.md +67 -0
- data/man/ronin-urls.1.md +84 -0
- data/man/ronin-wordlist.1.md +53 -0
- data/man/ronin.1.md +26 -0
- data/ronin.gemspec +38 -109
- data/spec/installation_spec.rb +2 -1
- data/spec/spec_helper.rb +2 -0
- data/spec/ui/cli/classes/test_command.rb +7 -0
- data/spec/ui/cli/command_spec.rb +235 -7
- metadata +217 -96
data/lib/ronin/url.rb
CHANGED
@@ -181,7 +181,7 @@ module Ronin
|
|
181
181
|
#
|
182
182
|
# Searches for all URLs sharing a common sub-directory.
|
183
183
|
#
|
184
|
-
# @param [String]
|
184
|
+
# @param [String] root_dir
|
185
185
|
# The sub-directory to search for.
|
186
186
|
#
|
187
187
|
# @return [Array<URL>]
|
@@ -191,8 +191,8 @@ module Ronin
|
|
191
191
|
#
|
192
192
|
# @api public
|
193
193
|
#
|
194
|
-
def self.directory(
|
195
|
-
all(:path =>
|
194
|
+
def self.directory(root_dir)
|
195
|
+
all(:path => root_dir) | all(:path.like => "#{root_dir}/%")
|
196
196
|
end
|
197
197
|
|
198
198
|
#
|
data/lib/ronin/url_scheme.rb
CHANGED
@@ -40,13 +40,13 @@ module Ronin
|
|
40
40
|
has 0..n, :urls, :model => 'URL',
|
41
41
|
:child_key => [:scheme_id]
|
42
42
|
|
43
|
-
#
|
43
|
+
# Predefines the HTTP URL Scheme
|
44
44
|
predefine :http, :name => 'http'
|
45
45
|
|
46
|
-
#
|
46
|
+
# Predefines the HTTPS URL Scheme
|
47
47
|
predefine :https, :name => 'https'
|
48
48
|
|
49
|
-
#
|
49
|
+
# Predefines the FTP URL Scheme
|
50
50
|
predefine :ftp, :name => 'ftp'
|
51
51
|
|
52
52
|
end
|
data/lib/ronin/version.rb
CHANGED
@@ -0,0 +1,78 @@
|
|
1
|
+
# ronin-campaigns 1 "April 2012" Ronin "User Manuals"
|
2
|
+
|
3
|
+
## SYNOPSIS
|
4
|
+
|
5
|
+
`ronin campaigns` *[options]*
|
6
|
+
|
7
|
+
## DESCRIPTION
|
8
|
+
|
9
|
+
Manages Campaigns.
|
10
|
+
|
11
|
+
## OPTIONS
|
12
|
+
|
13
|
+
`-v`, `--[no-]verbose`
|
14
|
+
Enable verbose output.
|
15
|
+
|
16
|
+
`-q`, `--[no-]quiet`
|
17
|
+
Disable verbose output.
|
18
|
+
|
19
|
+
`--[no-]silent`
|
20
|
+
Silence all output.
|
21
|
+
|
22
|
+
`--[no-]color`
|
23
|
+
Enables color output.
|
24
|
+
|
25
|
+
`-D`, `--database` [*URI*]
|
26
|
+
The database to URI (`mysql://user:password@host/ronin`).
|
27
|
+
|
28
|
+
`--[no-]csv`
|
29
|
+
CSV output.
|
30
|
+
|
31
|
+
`--[no-]xml`
|
32
|
+
XML output.
|
33
|
+
|
34
|
+
`--[no-]yaml`
|
35
|
+
YAML output.
|
36
|
+
|
37
|
+
`--[no-]json`
|
38
|
+
JSON output.
|
39
|
+
|
40
|
+
`-n`, `--named` *NAME*
|
41
|
+
Searches for Campaigns with the similar NAME.
|
42
|
+
|
43
|
+
`-d`, `--describing` *DESCRIPTION*
|
44
|
+
Searches for Campaigns with the similar DESCRIPTION.
|
45
|
+
|
46
|
+
`-T`, `--targeting` *ADDRESS* [...]
|
47
|
+
Searches for Campaigns targetting the given ADDRESSes.
|
48
|
+
|
49
|
+
`-O`, `--targeting-orgs` *NAME* [...]
|
50
|
+
Searches for Campaigns targetting the NAMEed Organizations.
|
51
|
+
|
52
|
+
`-l`, `--[no-]list`
|
53
|
+
Lists the Campaigns.
|
54
|
+
|
55
|
+
`-a`, `--add` *NAME*
|
56
|
+
Creates a new Campaign with the given NAME.
|
57
|
+
|
58
|
+
`--targets` *ADDRESS* [...]
|
59
|
+
ADDRESSes for the Campaign to target.
|
60
|
+
|
61
|
+
## FILES
|
62
|
+
|
63
|
+
*~/.ronin/*
|
64
|
+
Ronin configuration directory.
|
65
|
+
|
66
|
+
*~/.ronin/database.log*
|
67
|
+
Database log.
|
68
|
+
|
69
|
+
*~/.ronin/database.sqlite3*
|
70
|
+
The default sqlite3 Database file.
|
71
|
+
|
72
|
+
*~/.ronin/database.yml*
|
73
|
+
Optional Database configuration.
|
74
|
+
|
75
|
+
## AUTHOR
|
76
|
+
|
77
|
+
Postmodern <postmodern.mod3@gmail.com>
|
78
|
+
|
@@ -0,0 +1,72 @@
|
|
1
|
+
# ronin-console 1 "April 2012" Ronin "User Manuals"
|
2
|
+
|
3
|
+
## SYNOPSIS
|
4
|
+
|
5
|
+
`ronin console` [*options*]
|
6
|
+
|
7
|
+
## DESCRIPTION
|
8
|
+
|
9
|
+
Start the Ronin Console.
|
10
|
+
|
11
|
+
## OPTIONS
|
12
|
+
|
13
|
+
`--[no-]color`
|
14
|
+
Enables color output.
|
15
|
+
|
16
|
+
`-q`, `--[no-]quiet`
|
17
|
+
Disable verbose output.
|
18
|
+
|
19
|
+
`--[no-]silent`
|
20
|
+
Silence all output.
|
21
|
+
|
22
|
+
`-v`, `--[no-]verbose`
|
23
|
+
Enable verbose output.
|
24
|
+
|
25
|
+
`-D`, `--database` [*URI*]
|
26
|
+
The database to URI (`mysql://user:password@host/ronin`).
|
27
|
+
|
28
|
+
`--[no-]backtrace`
|
29
|
+
Enable or disables long backtraces.
|
30
|
+
|
31
|
+
`-V`, `--[no-]version`
|
32
|
+
Print the Ronin version.
|
33
|
+
|
34
|
+
`-r`, `--require` [*PATH*]
|
35
|
+
Ruby files to require.
|
36
|
+
|
37
|
+
## FILES
|
38
|
+
|
39
|
+
*~/.ronin/*
|
40
|
+
Ronin configuration directory.
|
41
|
+
|
42
|
+
*~/.ronin/config.rb*
|
43
|
+
Configuration file that is loaded before the Ronin Console starts.
|
44
|
+
|
45
|
+
*~/.ronin/console.log*
|
46
|
+
History log for the Ronin Console.
|
47
|
+
|
48
|
+
*~/.ronin/database.log*
|
49
|
+
Database log.
|
50
|
+
|
51
|
+
*~/.ronin/database.sqlite3*
|
52
|
+
The default sqlite3 Database file.
|
53
|
+
|
54
|
+
*~/.ronin/database.yml*
|
55
|
+
Optional Database configuration.
|
56
|
+
|
57
|
+
## ENVIRONMENT
|
58
|
+
|
59
|
+
HOME
|
60
|
+
Specifies the home directory of the user. Ronin will search for the `.ronin`
|
61
|
+
configuration directory within the home directory.
|
62
|
+
|
63
|
+
EDITOR
|
64
|
+
Specifies the editor to use when invoking the `.edit` console command.
|
65
|
+
|
66
|
+
## AUTHOR
|
67
|
+
|
68
|
+
Postmodern <postmodern.mod3@gmail.com>
|
69
|
+
|
70
|
+
## SEE ALSO
|
71
|
+
|
72
|
+
ronin(1)
|
@@ -0,0 +1,66 @@
|
|
1
|
+
# ronin-creds 1 "April 2012" Ronin "User Manuals"
|
2
|
+
|
3
|
+
## SYNOPSIS
|
4
|
+
|
5
|
+
`ronin creds` [*options*]
|
6
|
+
|
7
|
+
## DESCRIPTION
|
8
|
+
|
9
|
+
Lists Credentials.
|
10
|
+
|
11
|
+
## OPTIONS
|
12
|
+
|
13
|
+
`-v`, `--[no-]verbose`
|
14
|
+
Enable verbose output.
|
15
|
+
|
16
|
+
`-q`, `--[no-]quiet`
|
17
|
+
Disable verbose output.
|
18
|
+
|
19
|
+
`--[no-]silent`
|
20
|
+
Silence all output.
|
21
|
+
|
22
|
+
`--[no-]color`
|
23
|
+
Enables color output.
|
24
|
+
|
25
|
+
`-D`, `--database` *URI*
|
26
|
+
The database to URI (`mysql://user:password@host/ronin`).
|
27
|
+
|
28
|
+
`--[no-]csv`
|
29
|
+
CSV output.
|
30
|
+
|
31
|
+
`--[no-]xml`
|
32
|
+
XML output.
|
33
|
+
|
34
|
+
`--[no-]yaml`
|
35
|
+
YAML output.
|
36
|
+
|
37
|
+
`--[no-]json`
|
38
|
+
JSON output.
|
39
|
+
|
40
|
+
`-u`, `--for-user` *USER*
|
41
|
+
Searches for Credentials associated with the USER.
|
42
|
+
|
43
|
+
`-p`, `--with-password` *PASSWORD*
|
44
|
+
Searches for Credentials that have the PASSWORD.
|
45
|
+
|
46
|
+
`-l`, `--[no-]list`
|
47
|
+
Lists the Credentials.
|
48
|
+
|
49
|
+
## FILES
|
50
|
+
|
51
|
+
*~/.ronin/*
|
52
|
+
Ronin configuration directory.
|
53
|
+
|
54
|
+
*~/.ronin/database.log*
|
55
|
+
Database log.
|
56
|
+
|
57
|
+
*~/.ronin/database.sqlite3*
|
58
|
+
The default sqlite3 Database file.
|
59
|
+
|
60
|
+
*~/.ronin/database.yml*
|
61
|
+
Optional Database configuration.
|
62
|
+
|
63
|
+
## AUTHOR
|
64
|
+
|
65
|
+
Postmodern <postmodern.mod3@gmail.com>
|
66
|
+
|
@@ -0,0 +1,82 @@
|
|
1
|
+
# ronin-database 1 "April 2012" Ronin "User Manuals"
|
2
|
+
|
3
|
+
## SYNOPSIS
|
4
|
+
|
5
|
+
`ronin database` [*options*]
|
6
|
+
|
7
|
+
## DESCRIPTION
|
8
|
+
|
9
|
+
Manages the Ronin Database.
|
10
|
+
|
11
|
+
## OPTIONS
|
12
|
+
|
13
|
+
`-v`, `--[no-]verbose`
|
14
|
+
Enable verbose output.
|
15
|
+
|
16
|
+
`-q`, `--[no-]quiet`
|
17
|
+
Disable verbose output.
|
18
|
+
|
19
|
+
`--[no-]silent`
|
20
|
+
Silence all output.
|
21
|
+
|
22
|
+
`--[no-]color`
|
23
|
+
Enables color output.
|
24
|
+
|
25
|
+
`-a`, `--add` *NAME*
|
26
|
+
Adds a new Database Repository.
|
27
|
+
|
28
|
+
`-s`, `--set` *NAME*
|
29
|
+
Sets the configure information for a Database Repository.
|
30
|
+
|
31
|
+
`-r`, `--remove` *NAME*
|
32
|
+
Removes a Database Repository.
|
33
|
+
|
34
|
+
`-C`, `--clear` *NAME*
|
35
|
+
`WARNING:` This will delete all database within a Database Repository.
|
36
|
+
|
37
|
+
`--uri` *URI*
|
38
|
+
The URI of a Database Repository (`sqlite3:///path/to/db`).
|
39
|
+
|
40
|
+
`--adapter` *ADAPTER*
|
41
|
+
The Database ADAPTER to use:
|
42
|
+
|
43
|
+
* `sqlite3`
|
44
|
+
* `mysql`
|
45
|
+
* `postgres`
|
46
|
+
|
47
|
+
`--host` *HOST*
|
48
|
+
The HOST that the Database is running on.
|
49
|
+
|
50
|
+
`--port` *PORT*
|
51
|
+
The PORT that the Database is listening on.
|
52
|
+
|
53
|
+
`--user` *USER*
|
54
|
+
The USER to login as.
|
55
|
+
|
56
|
+
`--password` *PASSWORD*
|
57
|
+
The PASSWORD to use while authenticating.
|
58
|
+
|
59
|
+
`--database` *NAME*
|
60
|
+
The name of the Database.
|
61
|
+
|
62
|
+
`--path` *PATH*
|
63
|
+
The path to the Database. Only valid with `sqlite3` Databases.
|
64
|
+
|
65
|
+
## FILES
|
66
|
+
|
67
|
+
*~/.ronin/*
|
68
|
+
Ronin configuration directory.
|
69
|
+
|
70
|
+
*~/.ronin/database.log*
|
71
|
+
Database log.
|
72
|
+
|
73
|
+
*~/.ronin/database.sqlite3*
|
74
|
+
The default sqlite3 Database file.
|
75
|
+
|
76
|
+
*~/.ronin/database.yml*
|
77
|
+
Optional Database configuration.
|
78
|
+
|
79
|
+
## AUTHOR
|
80
|
+
|
81
|
+
Postmodern <postmodern.mod3@gmail.com>
|
82
|
+
|
@@ -0,0 +1,72 @@
|
|
1
|
+
# ronin-emails 1 "April 2012" Ronin "User Manuals"
|
2
|
+
|
3
|
+
## SYNOPSIS
|
4
|
+
|
5
|
+
`ronin emails` [*options*]
|
6
|
+
|
7
|
+
## DESCRIPTION
|
8
|
+
|
9
|
+
Manages EmailAddresses.
|
10
|
+
|
11
|
+
## OPTIONS
|
12
|
+
|
13
|
+
`-v`, `--[no-]verbose`
|
14
|
+
Enable verbose output.
|
15
|
+
|
16
|
+
`-q`, `--[no-]quiet`
|
17
|
+
Disable verbose output.
|
18
|
+
|
19
|
+
`--[no-]silent`
|
20
|
+
Silence all output.
|
21
|
+
|
22
|
+
`--[no-]color`
|
23
|
+
Enables color output.
|
24
|
+
|
25
|
+
`-D`, `--database` [*URI*]
|
26
|
+
The database to URI (`mysql://user:password@host/ronin`).
|
27
|
+
|
28
|
+
`--[no-]csv`
|
29
|
+
CSV output.
|
30
|
+
|
31
|
+
`--[no-]xml`
|
32
|
+
XML output.
|
33
|
+
|
34
|
+
`--[no-]yaml`
|
35
|
+
YAML output.
|
36
|
+
|
37
|
+
`--[no-]json`
|
38
|
+
JSON output.
|
39
|
+
|
40
|
+
`-H`, `--with-hosts` *HOST* [...]
|
41
|
+
Searches for EmailAddresses associated with the HOST(s).
|
42
|
+
|
43
|
+
`-I`, `--with-ips` *IP* [...]
|
44
|
+
Searches for EmailAddresses associated with the IP Address(es).
|
45
|
+
|
46
|
+
`-u`, `--with-users` *NAME* [...]
|
47
|
+
Searches for EmailAddresses associated with the user NAME(s).
|
48
|
+
|
49
|
+
`-l`, `--[no-]list`
|
50
|
+
Lists the EmailAddresses.
|
51
|
+
|
52
|
+
`-i`, `--import` *FILE*
|
53
|
+
Imports EmailAddresses from the FILE.
|
54
|
+
|
55
|
+
## FILES
|
56
|
+
|
57
|
+
*~/.ronin/*
|
58
|
+
Ronin configuration directory.
|
59
|
+
|
60
|
+
*~/.ronin/database.log*
|
61
|
+
Database log.
|
62
|
+
|
63
|
+
*~/.ronin/database.sqlite3*
|
64
|
+
The default sqlite3 Database file.
|
65
|
+
|
66
|
+
*~/.ronin/database.yml*
|
67
|
+
Optional Database configuration.
|
68
|
+
|
69
|
+
## AUTHOR
|
70
|
+
|
71
|
+
Postmodern <postmodern.mod3@gmail.com>
|
72
|
+
|
data/man/ronin-exec.1.md
ADDED
@@ -0,0 +1,49 @@
|
|
1
|
+
# ronin-exec 1 "April 2012" Ronin "User Manuals"
|
2
|
+
|
3
|
+
## SYNOPSIS
|
4
|
+
|
5
|
+
`ronin exec` *SCRIPT* [*ARGS* ...]
|
6
|
+
|
7
|
+
## DESCRIPTION
|
8
|
+
|
9
|
+
Runs a script from a Ronin Repository.
|
10
|
+
|
11
|
+
## ARGUMENTS
|
12
|
+
|
13
|
+
*SCRIPT*
|
14
|
+
The name of the script to search for within the `bin/` directories within the
|
15
|
+
Repositories.
|
16
|
+
|
17
|
+
*ARGS*
|
18
|
+
Additional arguments to pass to the SCRIPT.
|
19
|
+
|
20
|
+
## FILES
|
21
|
+
|
22
|
+
*~/.ronin/*
|
23
|
+
Ronin configuration directory.
|
24
|
+
|
25
|
+
*~/.ronin/config.rb*
|
26
|
+
Configuration file that is loaded before the Ronin Console starts.
|
27
|
+
|
28
|
+
*~/.ronin/console.log*
|
29
|
+
History log for the Ronin Console.
|
30
|
+
|
31
|
+
*~/.ronin/database.log*
|
32
|
+
Database log.
|
33
|
+
|
34
|
+
*~/.ronin/database.sqlite3*
|
35
|
+
The default sqlite3 Database file.
|
36
|
+
|
37
|
+
*~/.ronin/database.yml*
|
38
|
+
Optional Database configuration.
|
39
|
+
|
40
|
+
## ENVIRONMENT
|
41
|
+
|
42
|
+
HOME
|
43
|
+
Specifies the home directory of the user. Ronin will search for the `.ronin`
|
44
|
+
configuration directory within the home directory.
|
45
|
+
|
46
|
+
## AUTHOR
|
47
|
+
|
48
|
+
Postmodern <postmodern.mod3@gmail.com>
|
49
|
+
|