ronin 1.4.1 → 1.5.0.rc1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (66) hide show
  1. data/.document +1 -0
  2. data/.gitignore +1 -0
  3. data/ChangeLog.md +38 -1
  4. data/Gemfile +10 -10
  5. data/README.md +1 -1
  6. data/Rakefile +13 -2
  7. data/bin/ronin-net-proxy +25 -0
  8. data/gemspec.yml +21 -2
  9. data/lib/bond/completions/ronin.rb +16 -5
  10. data/lib/ronin/arch.rb +5 -5
  11. data/lib/ronin/auto_load.rb +22 -1
  12. data/lib/ronin/campaign.rb +1 -1
  13. data/lib/ronin/database/database.rb +36 -25
  14. data/lib/ronin/installation.rb +2 -2
  15. data/lib/ronin/model/model.rb +5 -6
  16. data/lib/ronin/model/types/description.rb +0 -3
  17. data/lib/ronin/os.rb +2 -2
  18. data/lib/ronin/password.rb +1 -1
  19. data/lib/ronin/repository.rb +6 -6
  20. data/lib/ronin/script/path.rb +1 -2
  21. data/lib/ronin/spec/database.rb +16 -4
  22. data/lib/ronin/ui/cli/cli.rb +1 -1
  23. data/lib/ronin/ui/cli/command.rb +50 -7
  24. data/lib/ronin/ui/cli/commands/console.rb +15 -6
  25. data/lib/ronin/ui/cli/commands/creds.rb +1 -1
  26. data/lib/ronin/ui/cli/commands/database.rb +41 -29
  27. data/lib/ronin/ui/cli/commands/emails.rb +20 -15
  28. data/lib/ronin/ui/cli/commands/help.rb +18 -5
  29. data/lib/ronin/ui/cli/commands/hosts.rb +34 -27
  30. data/lib/ronin/ui/cli/commands/install.rb +21 -4
  31. data/lib/ronin/ui/cli/commands/ips.rb +34 -23
  32. data/lib/ronin/ui/cli/commands/net/proxy.rb +403 -0
  33. data/lib/ronin/ui/cli/commands/repos.rb +4 -4
  34. data/lib/ronin/ui/cli/commands/uninstall.rb +10 -0
  35. data/lib/ronin/ui/cli/commands/update.rb +11 -1
  36. data/lib/ronin/ui/cli/commands/urls.rb +39 -30
  37. data/lib/ronin/ui/cli/commands/wordlist.rb +11 -1
  38. data/lib/ronin/ui/console.rb +1 -0
  39. data/lib/ronin/ui/console/commands.rb +16 -98
  40. data/lib/ronin/ui/console/shell.rb +184 -0
  41. data/lib/ronin/url.rb +3 -3
  42. data/lib/ronin/url_scheme.rb +3 -3
  43. data/lib/ronin/version.rb +1 -1
  44. data/man/ronin-campaigns.1.md +78 -0
  45. data/man/ronin-console.1.md +72 -0
  46. data/man/ronin-creds.1.md +66 -0
  47. data/man/ronin-database.1.md +82 -0
  48. data/man/ronin-emails.1.md +72 -0
  49. data/man/ronin-exec.1.md +49 -0
  50. data/man/ronin-help.1.md +34 -0
  51. data/man/ronin-hosts.1.md +78 -0
  52. data/man/ronin-install.1.md +79 -0
  53. data/man/ronin-ips.1.md +81 -0
  54. data/man/ronin-net-proxy.1.md +86 -0
  55. data/man/ronin-repos.1.md +77 -0
  56. data/man/ronin-uninstall.1.md +67 -0
  57. data/man/ronin-update.1.md +67 -0
  58. data/man/ronin-urls.1.md +84 -0
  59. data/man/ronin-wordlist.1.md +53 -0
  60. data/man/ronin.1.md +26 -0
  61. data/ronin.gemspec +38 -109
  62. data/spec/installation_spec.rb +2 -1
  63. data/spec/spec_helper.rb +2 -0
  64. data/spec/ui/cli/classes/test_command.rb +7 -0
  65. data/spec/ui/cli/command_spec.rb +235 -7
  66. metadata +217 -96
@@ -181,7 +181,7 @@ module Ronin
181
181
  #
182
182
  # Searches for all URLs sharing a common sub-directory.
183
183
  #
184
- # @param [String] sub_dir
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(sub_dir)
195
- all(:path => sub_dir) | all(:path.like => "#{sub_dir}/%")
194
+ def self.directory(root_dir)
195
+ all(:path => root_dir) | all(:path.like => "#{root_dir}/%")
196
196
  end
197
197
 
198
198
  #
@@ -40,13 +40,13 @@ module Ronin
40
40
  has 0..n, :urls, :model => 'URL',
41
41
  :child_key => [:scheme_id]
42
42
 
43
- # Pre-defines the HTTP URL Scheme
43
+ # Predefines the HTTP URL Scheme
44
44
  predefine :http, :name => 'http'
45
45
 
46
- # Pre-defines the HTTPS URL Scheme
46
+ # Predefines the HTTPS URL Scheme
47
47
  predefine :https, :name => 'https'
48
48
 
49
- # Pre-defines the FTP URL Scheme
49
+ # Predefines the FTP URL Scheme
50
50
  predefine :ftp, :name => 'ftp'
51
51
 
52
52
  end
@@ -19,5 +19,5 @@
19
19
 
20
20
  module Ronin
21
21
  # Ronin version
22
- VERSION = '1.4.1'
22
+ VERSION = '1.5.0.rc1'
23
23
  end
@@ -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
+
@@ -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
+