ronin-recon 0.1.0.rc1 → 0.1.0
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.
- checksums.yaml +4 -4
- data/.ruby-version +1 -1
- data/ChangeLog.md +1 -1
- data/README.md +2 -1
- data/data/completions/ronin-recon +17 -17
- data/data/wordlists/raft-small-directories.txt.gz +0 -0
- data/data/wordlists/subdomains-1000.txt.gz +0 -0
- data/gemspec.yml +6 -6
- data/lib/ronin/recon/builtin/api/crt_sh.rb +111 -0
- data/lib/ronin/recon/builtin/dns/subdomain_enum.rb +1 -0
- data/lib/ronin/recon/builtin/net/port_scan.rb +1 -0
- data/lib/ronin/recon/builtin/net/service_id.rb +1 -1
- data/lib/ronin/recon/builtin/ssl/cert_grab.rb +12 -4
- data/lib/ronin/recon/builtin/web/dir_enum.rb +13 -6
- data/lib/ronin/recon/builtin/web/email_addresses.rb +10 -5
- data/lib/ronin/recon/builtin/web/spider.rb +6 -2
- data/lib/ronin/recon/cli/commands/run.rb +7 -7
- data/lib/ronin/recon/cli/commands/test.rb +4 -1
- data/lib/ronin/recon/cli/printing.rb +19 -18
- data/lib/ronin/recon/config.rb +2 -2
- data/lib/ronin/recon/engine.rb +15 -15
- data/lib/ronin/recon/graph.rb +4 -4
- data/lib/ronin/recon/importer.rb +3 -3
- data/lib/ronin/recon/message/job_completed.rb +2 -2
- data/lib/ronin/recon/message/job_failed.rb +2 -2
- data/lib/ronin/recon/message/job_started.rb +2 -2
- data/lib/ronin/recon/mixins/http.rb +0 -1
- data/lib/ronin/recon/output_formats/dir.rb +2 -2
- data/lib/ronin/recon/output_formats/dot.rb +5 -5
- data/lib/ronin/recon/output_formats/graph_format.rb +2 -2
- data/lib/ronin/recon/output_formats/graphviz_format.rb +3 -3
- data/lib/ronin/recon/scope.rb +7 -3
- data/lib/ronin/recon/value_status.rb +3 -3
- data/lib/ronin/recon/values/domain.rb +4 -0
- data/lib/ronin/recon/values/email_address.rb +1 -1
- data/lib/ronin/recon/values/host.rb +4 -1
- data/lib/ronin/recon/values/ip.rb +1 -1
- data/lib/ronin/recon/values/ip_range.rb +1 -1
- data/lib/ronin/recon/values/open_port.rb +1 -1
- data/lib/ronin/recon/values/url.rb +1 -2
- data/lib/ronin/recon/values/website.rb +38 -10
- data/lib/ronin/recon/values/wildcard.rb +1 -1
- data/lib/ronin/recon/version.rb +1 -1
- data/lib/ronin/recon/worker.rb +3 -3
- data/man/ronin-recon-run.1 +1 -1
- data/man/ronin-recon-run.1.md +1 -1
- metadata +16 -16
- data/lib/ronin/recon/builtin/ssl/cert_sh.rb +0 -77
data/lib/ronin/recon/engine.rb
CHANGED
@@ -88,10 +88,10 @@ module Ronin
|
|
88
88
|
#
|
89
89
|
# Initializes the recon engine.
|
90
90
|
#
|
91
|
-
# @param [Array<
|
91
|
+
# @param [Array<Value>] values
|
92
92
|
# The values to start performing recon on.
|
93
93
|
#
|
94
|
-
# @param [Array<
|
94
|
+
# @param [Array<Value>] ignore
|
95
95
|
# The values to ignore while performing recon.
|
96
96
|
#
|
97
97
|
# @param [Integer, nil] max_depth
|
@@ -118,7 +118,7 @@ module Ronin
|
|
118
118
|
# @yieldparam [Engine] self
|
119
119
|
# The newly initialized engine.
|
120
120
|
#
|
121
|
-
# @yieldparam [
|
121
|
+
# @yieldparam [Value] parent
|
122
122
|
# The parent value which is associated to the discovered value.
|
123
123
|
#
|
124
124
|
# @api public
|
@@ -186,10 +186,10 @@ module Ronin
|
|
186
186
|
# If the block accepts two arguments the value and it's parent value
|
187
187
|
# will be passed to the block.
|
188
188
|
#
|
189
|
-
# @yieldparam [
|
189
|
+
# @yieldparam [Value] value
|
190
190
|
# A value discovered by one of the recon workers.
|
191
191
|
#
|
192
|
-
# @yieldparam [
|
192
|
+
# @yieldparam [Value] parent
|
193
193
|
# The parent value which is associated to the discovered value.
|
194
194
|
#
|
195
195
|
# @return [Engine]
|
@@ -293,10 +293,10 @@ module Ronin
|
|
293
293
|
# If `:job_failed` is given, then any exception raised by a worker will
|
294
294
|
# be passed to the given block.
|
295
295
|
#
|
296
|
-
# @yieldparam [
|
296
|
+
# @yieldparam [Value] value
|
297
297
|
# A discovered value value.
|
298
298
|
#
|
299
|
-
# @yieldparam [
|
299
|
+
# @yieldparam [Value] parent
|
300
300
|
# The parent value of the value.
|
301
301
|
#
|
302
302
|
# @yieldparam [Class<Worker>] worker_class
|
@@ -327,7 +327,7 @@ module Ronin
|
|
327
327
|
# @param [Worker] worker
|
328
328
|
# The worker that is processing the value.
|
329
329
|
#
|
330
|
-
# @param [
|
330
|
+
# @param [Value] value
|
331
331
|
# The value that is being processed.
|
332
332
|
#
|
333
333
|
# @api private
|
@@ -344,7 +344,7 @@ module Ronin
|
|
344
344
|
# @param [Worker] worker
|
345
345
|
# The worker that processed the value.
|
346
346
|
#
|
347
|
-
# @param [
|
347
|
+
# @param [Value] value
|
348
348
|
# The value that was processed.
|
349
349
|
#
|
350
350
|
# @api private
|
@@ -361,7 +361,7 @@ module Ronin
|
|
361
361
|
# @param [Worker] worker
|
362
362
|
# The worker that raised the exception.
|
363
363
|
#
|
364
|
-
# @param [
|
364
|
+
# @param [Value] value
|
365
365
|
# The value that was being processed.
|
366
366
|
#
|
367
367
|
# @param [RuntimeError] exception
|
@@ -381,10 +381,10 @@ module Ronin
|
|
381
381
|
# @param [Worker] worker
|
382
382
|
# The worker that discovered the value.
|
383
383
|
#
|
384
|
-
# @param [
|
384
|
+
# @param [Value] value
|
385
385
|
# The newly discovered value.
|
386
386
|
#
|
387
|
-
# @param [
|
387
|
+
# @param [Value] parent
|
388
388
|
# The parent value associated with the new value.
|
389
389
|
#
|
390
390
|
# @api private
|
@@ -405,10 +405,10 @@ module Ronin
|
|
405
405
|
# @param [Worker] worker
|
406
406
|
# The worker that discovered the value.
|
407
407
|
#
|
408
|
-
# @param [
|
408
|
+
# @param [Value] value
|
409
409
|
# The discovered value.
|
410
410
|
#
|
411
|
-
# @param [
|
411
|
+
# @param [Value] parent
|
412
412
|
# The parent value associated with the value.
|
413
413
|
#
|
414
414
|
# @api private
|
@@ -610,7 +610,7 @@ module Ronin
|
|
610
610
|
#
|
611
611
|
# Sends a new value into the recon engine for processing.
|
612
612
|
#
|
613
|
-
# @param [
|
613
|
+
# @param [Value] value
|
614
614
|
# The value object to enqueue.
|
615
615
|
#
|
616
616
|
# @api private
|
data/lib/ronin/recon/graph.rb
CHANGED
@@ -50,7 +50,7 @@ module Ronin
|
|
50
50
|
#
|
51
51
|
# Adds a value to the graph, if it already hasn't been added.
|
52
52
|
#
|
53
|
-
# @param [
|
53
|
+
# @param [Value] new_value
|
54
54
|
# The new value node to add.
|
55
55
|
#
|
56
56
|
# @return [Boolean]
|
@@ -66,7 +66,7 @@ module Ronin
|
|
66
66
|
#
|
67
67
|
# Adds a value to the graph, if it already hasn't been added.
|
68
68
|
#
|
69
|
-
# @param [
|
69
|
+
# @param [Value] new_value
|
70
70
|
# The new value node to add.
|
71
71
|
#
|
72
72
|
# @param [Value, nil] parent_value
|
@@ -89,7 +89,7 @@ module Ronin
|
|
89
89
|
#
|
90
90
|
# Determines if the value is in the graph.
|
91
91
|
#
|
92
|
-
# @param [
|
92
|
+
# @param [Value] value
|
93
93
|
# The value node.
|
94
94
|
#
|
95
95
|
# @return [Boolean]
|
@@ -102,7 +102,7 @@ module Ronin
|
|
102
102
|
#
|
103
103
|
# Fetches the parent value nodes for the value.
|
104
104
|
#
|
105
|
-
# @param [
|
105
|
+
# @param [Value] value
|
106
106
|
# The value node to lookup.
|
107
107
|
#
|
108
108
|
# @return [Set<Value>, nil]
|
data/lib/ronin/recon/importer.rb
CHANGED
@@ -49,10 +49,10 @@ module Ronin
|
|
49
49
|
#
|
50
50
|
# Imports the connection between two values.
|
51
51
|
#
|
52
|
-
# @param [
|
52
|
+
# @param [Value] value
|
53
53
|
# A discovered recon value to import.
|
54
54
|
#
|
55
|
-
# @param [
|
55
|
+
# @param [Value] parent
|
56
56
|
# The parent value of the discovered recon value.
|
57
57
|
#
|
58
58
|
# @return [(Ronin::DB::Model, Ronin::DB::Model)]
|
@@ -78,7 +78,7 @@ module Ronin
|
|
78
78
|
#
|
79
79
|
# Imports a value into the database.
|
80
80
|
#
|
81
|
-
# @param [
|
81
|
+
# @param [Value] value
|
82
82
|
# A discovered recon value to import.
|
83
83
|
#
|
84
84
|
# @return [Ronin::DB::HostName,
|
@@ -35,7 +35,7 @@ module Ronin
|
|
35
35
|
|
36
36
|
# The input value object.
|
37
37
|
#
|
38
|
-
# @return [
|
38
|
+
# @return [Value]
|
39
39
|
attr_reader :value
|
40
40
|
|
41
41
|
#
|
@@ -44,7 +44,7 @@ module Ronin
|
|
44
44
|
# @param [Worker] worker
|
45
45
|
# The worker object.
|
46
46
|
#
|
47
|
-
# @param [
|
47
|
+
# @param [Value] value
|
48
48
|
# The input value for the job.
|
49
49
|
#
|
50
50
|
def initialize(worker,value)
|
@@ -35,7 +35,7 @@ module Ronin
|
|
35
35
|
|
36
36
|
# The input value object.
|
37
37
|
#
|
38
|
-
# @return [
|
38
|
+
# @return [Value]
|
39
39
|
attr_reader :value
|
40
40
|
|
41
41
|
# The exception.
|
@@ -49,7 +49,7 @@ module Ronin
|
|
49
49
|
# @param [Worker] worker
|
50
50
|
# The worker object.
|
51
51
|
#
|
52
|
-
# @param [
|
52
|
+
# @param [Value] value
|
53
53
|
# The input value object.
|
54
54
|
#
|
55
55
|
# @param [StandardError] exception
|
@@ -35,7 +35,7 @@ module Ronin
|
|
35
35
|
|
36
36
|
# The input value object.
|
37
37
|
#
|
38
|
-
# @return [
|
38
|
+
# @return [Value]
|
39
39
|
attr_reader :value
|
40
40
|
|
41
41
|
#
|
@@ -44,7 +44,7 @@ module Ronin
|
|
44
44
|
# @param [Worker] worker
|
45
45
|
# The worker object.
|
46
46
|
#
|
47
|
-
# @param [
|
47
|
+
# @param [Value] value
|
48
48
|
# The input value object.
|
49
49
|
#
|
50
50
|
def initialize(worker,value)
|
@@ -33,7 +33,7 @@ module Ronin
|
|
33
33
|
|
34
34
|
# The opened filenames and files within the output directory.
|
35
35
|
#
|
36
|
-
# @return [Hash{Class<
|
36
|
+
# @return [Hash{Class<Value> => File}]
|
37
37
|
attr_reader :files
|
38
38
|
|
39
39
|
# Mapping of value classes to file names.
|
@@ -69,7 +69,7 @@ module Ronin
|
|
69
69
|
#
|
70
70
|
# Writes a new value to it's specific file.
|
71
71
|
#
|
72
|
-
# @param [
|
72
|
+
# @param [Value] value
|
73
73
|
# The value to write.
|
74
74
|
#
|
75
75
|
def <<(value)
|
@@ -60,7 +60,7 @@ module Ronin
|
|
60
60
|
#
|
61
61
|
# Returns the descriptive type name for the value object.
|
62
62
|
#
|
63
|
-
# @param [
|
63
|
+
# @param [Value] value
|
64
64
|
# The value object.
|
65
65
|
#
|
66
66
|
# @return [String]
|
@@ -91,7 +91,7 @@ module Ronin
|
|
91
91
|
#
|
92
92
|
# Returns the body text for the value object.
|
93
93
|
#
|
94
|
-
# @param [
|
94
|
+
# @param [Value] value
|
95
95
|
# The value object.
|
96
96
|
#
|
97
97
|
# @return [String]
|
@@ -112,7 +112,7 @@ module Ronin
|
|
112
112
|
# Writes a value to the GraphViz DOT output stream as a node
|
113
113
|
# declaration.
|
114
114
|
#
|
115
|
-
# @param [
|
115
|
+
# @param [Value] value
|
116
116
|
# The value object to write.
|
117
117
|
#
|
118
118
|
def <<(value)
|
@@ -127,10 +127,10 @@ module Ronin
|
|
127
127
|
# Appends a value and it's parent value to the GraphViz DOT output
|
128
128
|
# stream.
|
129
129
|
#
|
130
|
-
# @param [
|
130
|
+
# @param [Value] value
|
131
131
|
# The value to append.
|
132
132
|
#
|
133
|
-
# @param [
|
133
|
+
# @param [Value] parent
|
134
134
|
# The parent value of the given value.
|
135
135
|
#
|
136
136
|
# @return [self]
|
@@ -29,10 +29,10 @@ module Ronin
|
|
29
29
|
# Appends a value and it's parent value to the GraphViz DOT output
|
30
30
|
# stream.
|
31
31
|
#
|
32
|
-
# @param [
|
32
|
+
# @param [Value] value
|
33
33
|
# The value to append.
|
34
34
|
#
|
35
|
-
# @param [
|
35
|
+
# @param [Value] parent
|
36
36
|
# The parent value of the given value.
|
37
37
|
#
|
38
38
|
# @return [self]
|
@@ -72,7 +72,7 @@ module Ronin
|
|
72
72
|
#
|
73
73
|
# Writes a value to the GraphViz output stream as a node declaration.
|
74
74
|
#
|
75
|
-
# @param [
|
75
|
+
# @param [Value] value
|
76
76
|
# The value object to write.
|
77
77
|
#
|
78
78
|
def <<(value)
|
@@ -82,10 +82,10 @@ module Ronin
|
|
82
82
|
#
|
83
83
|
# Appends a value and it's parent value to the GraphViz output stream.
|
84
84
|
#
|
85
|
-
# @param [
|
85
|
+
# @param [Value] value
|
86
86
|
# The value to append.
|
87
87
|
#
|
88
|
-
# @param [
|
88
|
+
# @param [Value] parent
|
89
89
|
# The parent value of the given value.
|
90
90
|
#
|
91
91
|
# @return [self]
|
data/lib/ronin/recon/scope.rb
CHANGED
@@ -23,6 +23,8 @@ require 'ronin/recon/values/domain'
|
|
23
23
|
require 'ronin/recon/values/host'
|
24
24
|
require 'ronin/recon/values/ip_range'
|
25
25
|
require 'ronin/recon/values/ip'
|
26
|
+
require 'ronin/recon/values/url'
|
27
|
+
require 'ronin/recon/values/email_address'
|
26
28
|
|
27
29
|
module Ronin
|
28
30
|
module Recon
|
@@ -46,7 +48,7 @@ module Ronin
|
|
46
48
|
#
|
47
49
|
# Initializes the scope.
|
48
50
|
#
|
49
|
-
# @param [Array<Values::Wildcard, Values::Domain, Values::Host, Values::IPRange, Values::IP>] values
|
51
|
+
# @param [Array<Values::Wildcard, Values::Domain, Values::Host, Values::Website, Values::IPRange, Values::IP>] values
|
50
52
|
# The list of "in scope" values.
|
51
53
|
#
|
52
54
|
# @param [Array<Value>] ignore
|
@@ -64,7 +66,7 @@ module Ronin
|
|
64
66
|
|
65
67
|
values.each do |value|
|
66
68
|
case value
|
67
|
-
when Values::Wildcard, Values::Domain, Values::Host
|
69
|
+
when Values::Wildcard, Values::Domain, Values::Host, Values::Website
|
68
70
|
@host_values << value
|
69
71
|
when Values::IP, Values::IPRange
|
70
72
|
@ip_values << value
|
@@ -91,7 +93,9 @@ module Ronin
|
|
91
93
|
when Values::Wildcard,
|
92
94
|
Values::Domain,
|
93
95
|
Values::Host,
|
94
|
-
Values::
|
96
|
+
Values::Website,
|
97
|
+
Values::URL,
|
98
|
+
Values::EmailAddress
|
95
99
|
@host_values
|
96
100
|
when Values::IP,
|
97
101
|
Values::IPRange
|
@@ -34,7 +34,7 @@ module Ronin
|
|
34
34
|
#
|
35
35
|
# Records that a value was enqueued for the given worker class.
|
36
36
|
#
|
37
|
-
# @param [
|
37
|
+
# @param [Value] value
|
38
38
|
#
|
39
39
|
# @param [Class<Worker>] worker_class
|
40
40
|
#
|
@@ -45,7 +45,7 @@ module Ronin
|
|
45
45
|
#
|
46
46
|
# Records that a worker has dequeued the value and started processing it.
|
47
47
|
#
|
48
|
-
# @param [
|
48
|
+
# @param [Value] value
|
49
49
|
#
|
50
50
|
# @param [Class<Worker>] worker_class
|
51
51
|
#
|
@@ -56,7 +56,7 @@ module Ronin
|
|
56
56
|
#
|
57
57
|
# Records that a worker has completed processing the value.
|
58
58
|
#
|
59
|
-
# @param [
|
59
|
+
# @param [Value] value
|
60
60
|
#
|
61
61
|
# @param [Class<Worker>] worker_class
|
62
62
|
#
|
@@ -22,6 +22,7 @@ require 'ronin/recon/values/host'
|
|
22
22
|
require 'ronin/recon/values/ip'
|
23
23
|
require 'ronin/recon/values/website'
|
24
24
|
require 'ronin/recon/values/url'
|
25
|
+
require 'ronin/recon/values/email_address'
|
25
26
|
|
26
27
|
module Ronin
|
27
28
|
module Recon
|
@@ -52,6 +53,9 @@ module Ronin
|
|
52
53
|
if (other_host = other.host)
|
53
54
|
other_host == @name || other_host.end_with?(".#{@name}")
|
54
55
|
end
|
56
|
+
when EmailAddress
|
57
|
+
other.address.end_with?("@#{@name}") ||
|
58
|
+
other.address.end_with?(".#{@name}")
|
55
59
|
else
|
56
60
|
false
|
57
61
|
end
|
@@ -22,6 +22,7 @@ require 'ronin/recon/value'
|
|
22
22
|
require 'ronin/recon/values/ip'
|
23
23
|
require 'ronin/recon/values/website'
|
24
24
|
require 'ronin/recon/values/url'
|
25
|
+
require 'ronin/recon/values/email_address'
|
25
26
|
|
26
27
|
module Ronin
|
27
28
|
module Recon
|
@@ -51,7 +52,7 @@ module Ronin
|
|
51
52
|
#
|
52
53
|
# Compares the value to another value.
|
53
54
|
#
|
54
|
-
# @param [
|
55
|
+
# @param [Value] other
|
55
56
|
# The other value to compare.
|
56
57
|
#
|
57
58
|
# @return [Boolean]
|
@@ -79,6 +80,8 @@ module Ronin
|
|
79
80
|
@name == other.name
|
80
81
|
when IP, Website, URL
|
81
82
|
@name == other.host
|
83
|
+
when EmailAddress
|
84
|
+
other.address.end_with?("@#{@name}")
|
82
85
|
else
|
83
86
|
false
|
84
87
|
end
|
@@ -149,7 +149,7 @@ module Ronin
|
|
149
149
|
#
|
150
150
|
# Compares the value to another value.
|
151
151
|
#
|
152
|
-
# @param [
|
152
|
+
# @param [Value] other
|
153
153
|
#
|
154
154
|
# @return [Boolean]
|
155
155
|
#
|
@@ -192,7 +192,6 @@ module Ronin
|
|
192
192
|
|
193
193
|
hash[:status] = @status if @status
|
194
194
|
hash[:headers] = @headers if @headers
|
195
|
-
hash[:body] = @body if @body
|
196
195
|
|
197
196
|
return hash
|
198
197
|
end
|
@@ -19,6 +19,8 @@
|
|
19
19
|
#
|
20
20
|
|
21
21
|
require 'ronin/recon/value'
|
22
|
+
require 'ronin/recon/values/url'
|
23
|
+
require 'ronin/recon/values/email_address'
|
22
24
|
|
23
25
|
require 'uri'
|
24
26
|
|
@@ -34,7 +36,7 @@ module Ronin
|
|
34
36
|
|
35
37
|
# Indicates whether the website uses `http://` or `https://`.
|
36
38
|
#
|
37
|
-
# @return [
|
39
|
+
# @return ['http', 'https']
|
38
40
|
attr_reader :scheme
|
39
41
|
|
40
42
|
# The website's host name.
|
@@ -50,7 +52,7 @@ module Ronin
|
|
50
52
|
#
|
51
53
|
# Initializes the website.
|
52
54
|
#
|
53
|
-
# @param [
|
55
|
+
# @param ['http', 'https'] scheme
|
54
56
|
# Indicates whether the website uses `http://` or `https://`.
|
55
57
|
#
|
56
58
|
# @param [String] host
|
@@ -78,7 +80,7 @@ module Ronin
|
|
78
80
|
# The new website value.
|
79
81
|
#
|
80
82
|
def self.http(host,port=80)
|
81
|
-
new(
|
83
|
+
new('http',host,port)
|
82
84
|
end
|
83
85
|
|
84
86
|
#
|
@@ -94,7 +96,7 @@ module Ronin
|
|
94
96
|
# The new website value.
|
95
97
|
#
|
96
98
|
def self.https(host,port=443)
|
97
|
-
new(
|
99
|
+
new('https',host,port)
|
98
100
|
end
|
99
101
|
|
100
102
|
#
|
@@ -109,13 +111,13 @@ module Ronin
|
|
109
111
|
def self.parse(url)
|
110
112
|
uri = URI.parse(url)
|
111
113
|
|
112
|
-
Values::Website.new(uri.scheme
|
114
|
+
Values::Website.new(uri.scheme,uri.host,uri.port)
|
113
115
|
end
|
114
116
|
|
115
117
|
#
|
116
118
|
# Compares the value to another value.
|
117
119
|
#
|
118
|
-
# @param [
|
120
|
+
# @param [Value] other
|
119
121
|
#
|
120
122
|
# @return [Boolean]
|
121
123
|
#
|
@@ -126,6 +128,32 @@ module Ronin
|
|
126
128
|
@port == other.port
|
127
129
|
end
|
128
130
|
|
131
|
+
#
|
132
|
+
# Case equality method used for fuzzy matching.
|
133
|
+
#
|
134
|
+
# @param [Value] other
|
135
|
+
# The other value to compare.
|
136
|
+
#
|
137
|
+
# @return [Boolean]
|
138
|
+
# Imdicates whether the other value is either the same {Website} or
|
139
|
+
# a {URL} with the same {#scheme}, {#host}, and {#port} as the
|
140
|
+
# website.
|
141
|
+
#
|
142
|
+
def ===(other)
|
143
|
+
case other
|
144
|
+
when Website
|
145
|
+
self == other
|
146
|
+
when URL
|
147
|
+
@scheme == other.scheme &&
|
148
|
+
@host == other.host &&
|
149
|
+
@port == other.port
|
150
|
+
when EmailAddress
|
151
|
+
other.address.end_with?("@#{@host}")
|
152
|
+
else
|
153
|
+
false
|
154
|
+
end
|
155
|
+
end
|
156
|
+
|
129
157
|
#
|
130
158
|
# The "hash" value of the wildcard host name.
|
131
159
|
#
|
@@ -140,8 +168,8 @@ module Ronin
|
|
140
168
|
#
|
141
169
|
# @api private
|
142
170
|
URI_CLASSES = {
|
143
|
-
https
|
144
|
-
http
|
171
|
+
'https' => URI::HTTPS,
|
172
|
+
'http' => URI::HTTP
|
145
173
|
}
|
146
174
|
|
147
175
|
#
|
@@ -161,8 +189,8 @@ module Ronin
|
|
161
189
|
# The base URL value for the website.
|
162
190
|
#
|
163
191
|
def to_s
|
164
|
-
if ((@scheme ==
|
165
|
-
((@scheme ==
|
192
|
+
if ((@scheme == 'https') && (@port != 443)) ||
|
193
|
+
((@scheme == 'http') && (@port != 80))
|
166
194
|
"#{@scheme}://#{@host}:#{@port}"
|
167
195
|
else
|
168
196
|
"#{@scheme}://#{@host}"
|
data/lib/ronin/recon/version.rb
CHANGED
data/lib/ronin/recon/worker.rb
CHANGED
@@ -392,7 +392,7 @@ module Ronin
|
|
392
392
|
#
|
393
393
|
# Initializes the worker and runs it with the single value.
|
394
394
|
#
|
395
|
-
# @param [
|
395
|
+
# @param [Value] value
|
396
396
|
# The input value to process.
|
397
397
|
#
|
398
398
|
# @param [Hash{Symbol => Object}] kwargs
|
@@ -413,13 +413,13 @@ module Ronin
|
|
413
413
|
#
|
414
414
|
# Calls the recon worker with the given input value.
|
415
415
|
#
|
416
|
-
# @param [
|
416
|
+
# @param [Value] value
|
417
417
|
# The input value.
|
418
418
|
#
|
419
419
|
# @yield [new_value]
|
420
420
|
# The `call` method can then `yield` one or more newly discovered values
|
421
421
|
#
|
422
|
-
# @yieldparam [
|
422
|
+
# @yieldparam [Value] new_value
|
423
423
|
# An newly discovered output value from the input value.
|
424
424
|
#
|
425
425
|
# @abstract
|
data/man/ronin-recon-run.1
CHANGED
@@ -57,7 +57,7 @@ Sets a param value for the given worker\.
|
|
57
57
|
Overrides the concurrency for the given worker\.
|
58
58
|
.TP
|
59
59
|
\fB\-\-max\-depth\fR \fINUM\fP
|
60
|
-
The maximum recon depth\. Defaults to depth of \
|
60
|
+
The maximum recon depth\. Defaults to depth of \fB10\fR if the option is not
|
61
61
|
specified\.
|
62
62
|
.TP
|
63
63
|
\fB\-o\fR, \fB\-\-output\fR \fIFILE\fP
|
data/man/ronin-recon-run.1.md
CHANGED
@@ -60,7 +60,7 @@ Runs the recon engine with one or more initial values.
|
|
60
60
|
: Overrides the concurrency for the given worker.
|
61
61
|
|
62
62
|
`--max-depth` *NUM*
|
63
|
-
: The maximum recon depth. Defaults to depth of `
|
63
|
+
: The maximum recon depth. Defaults to depth of `10` if the option is not
|
64
64
|
specified.
|
65
65
|
|
66
66
|
`-o`, `--output` *FILE*
|