fingerprinter 0.1.10 → 0.1.11
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
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 0b615b35520844d41a238e14b38117a52623f8e1445a2bb1bac20f93dfe31eb2
|
4
|
+
data.tar.gz: 8299df5625b0c22e690cdaede06392551473674be475fdb9e9093178af938446
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 77df6c3fde451e04a37b751c5da6e49cc7cbd9fac005e8edeaf79322380df74bbf3883422b880013dc1e3aa77a2719c95af2e8382d24d90288ac9f3f2a1ba7e0
|
7
|
+
data.tar.gz: b3637abef00af676d8308d4157411b3238fdd3a2af57e2c46c38029cb83d2d943f361631d399841942eeda1da78246fb4a27a6550610e0bcf4743fca3acfb7b7
|
@@ -3,7 +3,7 @@
|
|
3
3
|
# This class builds and maintains the list of options provided for the scan to make it available
|
4
4
|
# when needed
|
5
5
|
class ScanOptions
|
6
|
-
def self.build(options)
|
6
|
+
def self.build(options)
|
7
7
|
@proxy = options[:proxy]
|
8
8
|
@user_agent = options[:ua]
|
9
9
|
@timeout = options[:timeout]
|
@@ -42,7 +42,7 @@ class ScanOptions
|
|
42
42
|
end
|
43
43
|
|
44
44
|
def self.http_concurrency
|
45
|
-
@concurrency ||
|
45
|
+
@concurrency || 20
|
46
46
|
end
|
47
47
|
|
48
48
|
def self.silent?
|
@@ -8,7 +8,6 @@ require 'typhoeus'
|
|
8
8
|
class HttpClient
|
9
9
|
def initialize
|
10
10
|
Typhoeus::Config.user_agent = ScanOptions.user_agent
|
11
|
-
@hydra = Typhoeus::Hydra.new(max_concurrency: ScanOptions.http_concurrency)
|
12
11
|
end
|
13
12
|
|
14
13
|
def request_options(method, options, body = nil)
|
@@ -35,36 +34,12 @@ class HttpClient
|
|
35
34
|
req_options
|
36
35
|
end
|
37
36
|
|
38
|
-
def get(
|
37
|
+
def get(url, options = {})
|
39
38
|
responses = {}
|
40
39
|
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
http_request.on_complete { |response| responses[url] = response }
|
46
|
-
|
47
|
-
@hydra.queue(http_request)
|
48
|
-
end
|
49
|
-
|
50
|
-
@hydra.run
|
51
|
-
|
52
|
-
responses
|
53
|
-
end
|
54
|
-
|
55
|
-
def post(urls, body, options = {})
|
56
|
-
responses = {}
|
57
|
-
|
58
|
-
urls = [urls] if urls.is_a?(String)
|
59
|
-
urls.each do |url|
|
60
|
-
http_request = Typhoeus::Request.new(url, request_options(:post, options, body))
|
61
|
-
|
62
|
-
http_request.on_complete { |response| responses[url] = response }
|
63
|
-
|
64
|
-
@hydra.queue(http_request)
|
65
|
-
end
|
66
|
-
|
67
|
-
@hydra.run
|
40
|
+
http_request = Typhoeus::Request.new(url, request_options(:get, options))
|
41
|
+
http_request.on_complete { |response| responses[url] = response }
|
42
|
+
http_request.run
|
68
43
|
|
69
44
|
responses
|
70
45
|
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Progress Kemp Load Master Detection
|
4
|
+
class ProgressKempLoadMaster < Fingerprinter::Technologies
|
5
|
+
BODY_CONTENT_REGEX = [
|
6
|
+
/LoadMaster/
|
7
|
+
].freeze
|
8
|
+
|
9
|
+
def self.run(data)
|
10
|
+
return unless title_detection(data[:doc], 'Configuration') &&
|
11
|
+
whole_body_check(data[:response], BODY_CONTENT_REGEX)
|
12
|
+
|
13
|
+
'Progress Kemp Load Master'
|
14
|
+
end
|
15
|
+
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fingerprinter
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.11
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Joshua MARTINELLE
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2024-07-
|
11
|
+
date: 2024-07-21 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: concurrent-ruby
|
@@ -68,6 +68,7 @@ files:
|
|
68
68
|
- lib/fingerprinter/technologies/softwares/apache_ofbiz.rb
|
69
69
|
- lib/fingerprinter/technologies/softwares/f5_next_central_manager.rb
|
70
70
|
- lib/fingerprinter/technologies/softwares/nexus_repository.rb
|
71
|
+
- lib/fingerprinter/technologies/softwares/progress_kemp_load_master.rb
|
71
72
|
- lib/fingerprinter/technologies/softwares/servicenow.rb
|
72
73
|
- lib/fingerprinter/technologies/softwares/tinyproxy.rb
|
73
74
|
- lib/fingerprinter/utilities/kb.rb
|