ronin 1.4.0.rc1 → 1.4.0.rc2
Sign up to get free protection for your applications and to get access to all the features.
- data/ChangeLog.md +21 -0
- data/Gemfile +4 -0
- data/README.md +1 -1
- data/bin/ronin-ips +1 -1
- data/bin/ronin-urls +1 -1
- data/bin/ronin-wordlist +25 -0
- data/gemspec.yml +2 -2
- data/lib/bond/completions/ronin.rb +1 -1
- data/lib/ronin.rb +1 -1
- data/lib/ronin/address.rb +1 -1
- data/lib/ronin/arch.rb +1 -1
- data/lib/ronin/author.rb +1 -1
- data/lib/ronin/auto_load.rb +1 -1
- data/lib/ronin/bootstrap.rb +1 -1
- data/lib/ronin/campaign.rb +1 -1
- data/lib/ronin/config.rb +1 -1
- data/lib/ronin/credential.rb +1 -1
- data/lib/ronin/database.rb +1 -1
- data/lib/ronin/database/database.rb +1 -1
- data/lib/ronin/database/exceptions.rb +1 -1
- data/lib/ronin/database/exceptions/invalid_config.rb +1 -1
- data/lib/ronin/database/exceptions/unknown_repository.rb +1 -1
- data/lib/ronin/database/migrations.rb +1 -1
- data/lib/ronin/database/migrations/1.0.0.rb +1 -1
- data/lib/ronin/database/migrations/1.1.0.rb +1 -1
- data/lib/ronin/database/migrations/exceptions.rb +1 -1
- data/lib/ronin/database/migrations/exceptions/duplicate_migration.rb +1 -1
- data/lib/ronin/database/migrations/exceptions/unknown_migration.rb +1 -1
- data/lib/ronin/database/migrations/graph.rb +1 -1
- data/lib/ronin/database/migrations/migration.rb +1 -1
- data/lib/ronin/database/migrations/migrations.rb +1 -1
- data/lib/ronin/email_address.rb +1 -1
- data/lib/ronin/environment.rb +1 -1
- data/lib/ronin/exceptions.rb +1 -1
- data/lib/ronin/exceptions/duplicate_repository.rb +1 -1
- data/lib/ronin/exceptions/repository_not_found.rb +1 -1
- data/lib/ronin/host_name.rb +1 -1
- data/lib/ronin/host_name_ip_address.rb +1 -1
- data/lib/ronin/installation.rb +1 -1
- data/lib/ronin/ip_address.rb +1 -1
- data/lib/ronin/ip_address_mac_address.rb +1 -1
- data/lib/ronin/license.rb +1 -1
- data/lib/ronin/mac_address.rb +1 -1
- data/lib/ronin/model.rb +1 -1
- data/lib/ronin/model/has_authors.rb +1 -1
- data/lib/ronin/model/has_description.rb +1 -1
- data/lib/ronin/model/has_license.rb +1 -1
- data/lib/ronin/model/has_name.rb +1 -1
- data/lib/ronin/model/has_title.rb +1 -1
- data/lib/ronin/model/has_unique_name.rb +1 -1
- data/lib/ronin/model/has_version.rb +1 -1
- data/lib/ronin/model/importable.rb +1 -1
- data/lib/ronin/model/model.rb +1 -1
- data/lib/ronin/model/types.rb +1 -1
- data/lib/ronin/model/types/description.rb +1 -1
- data/lib/ronin/open_port.rb +1 -1
- data/lib/ronin/organization.rb +1 -1
- data/lib/ronin/os.rb +1 -1
- data/lib/ronin/os_guess.rb +1 -1
- data/lib/ronin/password.rb +1 -1
- data/lib/ronin/port.rb +1 -1
- data/lib/ronin/repositories.rb +1 -1
- data/lib/ronin/repository.rb +3 -3
- data/lib/ronin/ronin.rb +1 -1
- data/lib/ronin/script.rb +1 -1
- data/lib/ronin/script/buildable.rb +1 -1
- data/lib/ronin/script/deployable.rb +1 -1
- data/lib/ronin/script/exceptions.rb +1 -1
- data/lib/ronin/script/exceptions/build_failed.rb +1 -1
- data/lib/ronin/script/exceptions/deploy_failed.rb +1 -1
- data/lib/ronin/script/exceptions/exception.rb +1 -1
- data/lib/ronin/script/exceptions/not_built.rb +1 -1
- data/lib/ronin/script/exceptions/test_failed.rb +1 -1
- data/lib/ronin/script/path.rb +1 -1
- data/lib/ronin/script/script.rb +1 -1
- data/lib/ronin/script/testable.rb +1 -1
- data/lib/ronin/service.rb +1 -1
- data/lib/ronin/service_credential.rb +1 -1
- data/lib/ronin/software.rb +1 -1
- data/lib/ronin/spec/database.rb +1 -1
- data/lib/ronin/target.rb +1 -1
- data/lib/ronin/tcp_port.rb +1 -1
- data/lib/ronin/udp_port.rb +1 -1
- data/lib/ronin/ui.rb +1 -1
- data/lib/ronin/ui/cli.rb +1 -1
- data/lib/ronin/ui/cli/class_command.rb +1 -1
- data/lib/ronin/ui/cli/cli.rb +1 -1
- data/lib/ronin/ui/cli/command.rb +47 -7
- data/lib/ronin/ui/cli/commands.rb +1 -1
- data/lib/ronin/ui/cli/commands/campaigns.rb +30 -3
- data/lib/ronin/ui/cli/commands/console.rb +18 -2
- data/lib/ronin/ui/cli/commands/creds.rb +24 -2
- data/lib/ronin/ui/cli/commands/database.rb +26 -3
- data/lib/ronin/ui/cli/commands/emails.rb +25 -2
- data/lib/ronin/ui/cli/commands/exec.rb +6 -2
- data/lib/ronin/ui/cli/commands/help.rb +20 -3
- data/lib/ronin/ui/cli/commands/hosts.rb +27 -2
- data/lib/ronin/ui/cli/commands/install.rb +23 -4
- data/lib/ronin/ui/cli/commands/ips.rb +29 -3
- data/lib/ronin/ui/cli/commands/repos.rb +23 -2
- data/lib/ronin/ui/cli/commands/uninstall.rb +17 -2
- data/lib/ronin/ui/cli/commands/update.rb +17 -2
- data/lib/ronin/ui/cli/commands/urls.rb +32 -3
- data/lib/ronin/ui/cli/commands/wordlist.rb +168 -0
- data/lib/ronin/ui/cli/exceptions.rb +1 -1
- data/lib/ronin/ui/cli/exceptions/unknown_command.rb +1 -1
- data/lib/ronin/ui/cli/model_command.rb +1 -1
- data/lib/ronin/ui/cli/printing.rb +1 -1
- data/lib/ronin/ui/cli/resources_command.rb +1 -1
- data/lib/ronin/ui/cli/script_command.rb +1 -1
- data/lib/ronin/ui/console.rb +1 -1
- data/lib/ronin/ui/console/commands.rb +1 -1
- data/lib/ronin/ui/console/console.rb +1 -1
- data/lib/ronin/ui/console/context.rb +17 -6
- data/lib/ronin/url.rb +15 -1
- data/lib/ronin/url_query_param.rb +1 -1
- data/lib/ronin/url_query_param_name.rb +1 -1
- data/lib/ronin/url_scheme.rb +1 -1
- data/lib/ronin/user_name.rb +1 -1
- data/lib/ronin/vendor.rb +1 -1
- data/lib/ronin/version.rb +2 -2
- data/lib/ronin/web_credential.rb +1 -1
- data/spec/installation_spec.rb +1 -0
- data/spec/repository_spec.rb +1 -1
- data/spec/url_spec.rb +16 -0
- metadata +61 -58
data/lib/ronin/model/has_name.rb
CHANGED
data/lib/ronin/model/model.rb
CHANGED
data/lib/ronin/model/types.rb
CHANGED
data/lib/ronin/open_port.rb
CHANGED
data/lib/ronin/organization.rb
CHANGED
data/lib/ronin/os.rb
CHANGED
data/lib/ronin/os_guess.rb
CHANGED
data/lib/ronin/password.rb
CHANGED
data/lib/ronin/port.rb
CHANGED
data/lib/ronin/repositories.rb
CHANGED
data/lib/ronin/repository.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
#
|
2
|
-
# Copyright (c) 2006-
|
2
|
+
# Copyright (c) 2006-2012 Hal Brodigan (postmodern.mod3 at gmail.com)
|
3
3
|
#
|
4
4
|
# This file is part of Ronin.
|
5
5
|
#
|
@@ -180,14 +180,14 @@ module Ronin
|
|
180
180
|
# Repository.find('postmodern-repo')
|
181
181
|
#
|
182
182
|
# @example Load the repository with the given name and domain.
|
183
|
-
# Repository.find('postmodern-repo
|
183
|
+
# Repository.find('postmodern-repo@github.com')
|
184
184
|
#
|
185
185
|
# @since 1.0.0
|
186
186
|
#
|
187
187
|
# @api private
|
188
188
|
#
|
189
189
|
def Repository.find(name)
|
190
|
-
name, domain = name.to_s.split('
|
190
|
+
name, domain = name.to_s.split('@',2)
|
191
191
|
|
192
192
|
query = {:name => name}
|
193
193
|
query[:domain] = domain if domain
|
data/lib/ronin/ronin.rb
CHANGED
data/lib/ronin/script.rb
CHANGED
data/lib/ronin/script/path.rb
CHANGED
data/lib/ronin/script/script.rb
CHANGED
data/lib/ronin/service.rb
CHANGED
data/lib/ronin/software.rb
CHANGED
data/lib/ronin/spec/database.rb
CHANGED
data/lib/ronin/target.rb
CHANGED
data/lib/ronin/tcp_port.rb
CHANGED
data/lib/ronin/udp_port.rb
CHANGED
data/lib/ronin/ui.rb
CHANGED
data/lib/ronin/ui/cli.rb
CHANGED
data/lib/ronin/ui/cli/cli.rb
CHANGED
data/lib/ronin/ui/cli/command.rb
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
#
|
2
|
-
# Copyright (c) 2006-
|
2
|
+
# Copyright (c) 2006-2012 Hal Brodigan (postmodern.mod3 at gmail.com)
|
3
3
|
#
|
4
4
|
# This file is part of Ronin.
|
5
5
|
#
|
@@ -212,6 +212,9 @@ module Ronin
|
|
212
212
|
|
213
213
|
# set additional arguments
|
214
214
|
self.class.each_argument do |name|
|
215
|
+
# no more arguments left
|
216
|
+
break if arguments.empty?
|
217
|
+
|
215
218
|
param = get_param(name)
|
216
219
|
|
217
220
|
if param.type <= Parameters::Types::Array
|
@@ -222,6 +225,11 @@ module Ronin
|
|
222
225
|
end
|
223
226
|
end
|
224
227
|
|
228
|
+
unless arguments.empty?
|
229
|
+
print_error "Too many arguments. Please consult --help"
|
230
|
+
exit -1
|
231
|
+
end
|
232
|
+
|
225
233
|
begin
|
226
234
|
run
|
227
235
|
rescue => error
|
@@ -439,6 +447,20 @@ module Ronin
|
|
439
447
|
end
|
440
448
|
end
|
441
449
|
|
450
|
+
#
|
451
|
+
# Determines if there are any options defined by the command.
|
452
|
+
#
|
453
|
+
# @return [Boolean]
|
454
|
+
# Specifies if there are any options defined by the command.
|
455
|
+
#
|
456
|
+
# @since 1.4.0
|
457
|
+
#
|
458
|
+
# @api semipublic
|
459
|
+
#
|
460
|
+
def self.options?
|
461
|
+
each_option.any?
|
462
|
+
end
|
463
|
+
|
442
464
|
#
|
443
465
|
# The additional arguments of the command.
|
444
466
|
#
|
@@ -499,7 +521,7 @@ module Ronin
|
|
499
521
|
#
|
500
522
|
# @since 1.4.0
|
501
523
|
#
|
502
|
-
# @api
|
524
|
+
# @api semipublic
|
503
525
|
#
|
504
526
|
def self.each_argument(&block)
|
505
527
|
return enum_for(:each_argument) unless block
|
@@ -511,6 +533,20 @@ module Ronin
|
|
511
533
|
end
|
512
534
|
end
|
513
535
|
|
536
|
+
#
|
537
|
+
# Determines if there are any arguments defined by the command.
|
538
|
+
#
|
539
|
+
# @return [Boolean]
|
540
|
+
# Specifies if there are any arguments defined by the command.
|
541
|
+
#
|
542
|
+
# @since 1.4.0
|
543
|
+
#
|
544
|
+
# @api semipublic
|
545
|
+
#
|
546
|
+
def self.arguments?
|
547
|
+
each_argument.any?
|
548
|
+
end
|
549
|
+
|
514
550
|
#
|
515
551
|
# Creates an OptionParser for the command.
|
516
552
|
#
|
@@ -547,13 +583,17 @@ module Ronin
|
|
547
583
|
|
548
584
|
yield opts if block_given?
|
549
585
|
|
550
|
-
|
551
|
-
|
586
|
+
if self.class.arguments?
|
587
|
+
opts.separator ''
|
588
|
+
opts.separator 'Arguments:'
|
552
589
|
|
553
|
-
|
554
|
-
|
590
|
+
self.class.each_argument do |name|
|
591
|
+
param = get_param(name)
|
592
|
+
name = name.to_s.upcase
|
593
|
+
desc = param.description
|
555
594
|
|
556
|
-
|
595
|
+
opts.separator " #{name.ljust(33)}#{desc}"
|
596
|
+
end
|
557
597
|
end
|
558
598
|
|
559
599
|
if self.class.summary
|