recog 3.0.1 → 3.0.3

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.
@@ -230,21 +230,21 @@
230
230
  </fingerprint>
231
231
 
232
232
  <fingerprint pattern="^(\S{1,512}) Zimbra POP3 server ready\.?$">
233
- <description>VMware Zimbra POP</description>
233
+ <description>Zimbra Collaboration POP</description>
234
234
  <example host.name="foo.bar">foo.bar Zimbra POP3 server ready</example>
235
- <param pos="0" name="service.vendor" value="VMware"/>
236
- <param pos="0" name="service.product" value="Zimbra"/>
237
- <param pos="0" name="service.cpe23" value="cpe:/a:vmware:zimbra_desktop:-"/>
235
+ <param pos="0" name="service.vendor" value="Zimbra"/>
236
+ <param pos="0" name="service.product" value="Collaboration"/>
237
+ <param pos="0" name="service.cpe23" value="cpe:/a:zimbra:collaboration:-"/>
238
238
  <param pos="1" name="host.name"/>
239
239
  </fingerprint>
240
240
 
241
241
  <fingerprint pattern="^(\S{1,512}) Zimbra (\S+) POP3 server ready\.?$">
242
- <description>VMware Zimbra POP with version</description>
242
+ <description>Zimbra Collaboration POP with version</description>
243
243
  <example host.name="foo.bar" service.version="7.0.0_GA_3079">foo.bar Zimbra 7.0.0_GA_3079 POP3 server ready</example>
244
- <param pos="0" name="service.vendor" value="VMware"/>
245
- <param pos="0" name="service.product" value="Zimbra"/>
244
+ <param pos="0" name="service.vendor" value="Zimbra"/>
245
+ <param pos="0" name="service.product" value="Collaboration"/>
246
246
  <param pos="2" name="service.version"/>
247
- <param pos="0" name="service.cpe23" value="cpe:/a:vmware:zimbra_desktop:{service.version}"/>
247
+ <param pos="0" name="service.cpe23" value="cpe:/a:zimbra:collaboration:{service.version}"/>
248
248
  <param pos="1" name="host.name"/>
249
249
  </fingerprint>
250
250
 
@@ -4,7 +4,7 @@
4
4
  Fingerprint based on https://github.com/salesforce/jarm
5
5
  -->
6
6
 
7
- <fingerprint pattern="^2ad2ad16d2ad2ad00042d42d000000332dc9cd7d90589195193c8bb05d84fa|2ad2ad16d2ad2ad22c2ad2ad2ad2adce2e4c8c53174ecbf5529ce7584d5518$|2ad2ad16d2ad2ad22c42d42d000000d342d5966a57139eeaff9f8bc4841b25$">
7
+ <fingerprint pattern="^(?:2ad2ad16d2ad2ad00042d42d000000332dc9cd7d90589195193c8bb05d84fa|2ad2ad16d2ad2ad22c2ad2ad2ad2adce2e4c8c53174ecbf5529ce7584d5518|2ad2ad16d2ad2ad22c42d42d000000d342d5966a57139eeaff9f8bc4841b25)$">
8
8
  <description>Tor relay</description>
9
9
  <example>2ad2ad16d2ad2ad00042d42d000000332dc9cd7d90589195193c8bb05d84fa</example>
10
10
  <example>2ad2ad16d2ad2ad22c2ad2ad2ad2adce2e4c8c53174ecbf5529ce7584d5518</example>
@@ -14,7 +14,7 @@
14
14
  <param pos="0" name="service.cpe23" value="cpe:/a:torproject:tor:-"/>
15
15
  </fingerprint>
16
16
 
17
- <fingerprint pattern="^2ad2ad0002ad2ad0002ad2ad2ad2ada9e96d3ba9f7903758a731e0fa01453d|29d29d15d29d29d21c29d29d29d29d10d7a07cb776562eccb97246005feba5|2ad2ad0002ad2ad0002ad2ad2ad2ad5bf44aec534289dfa8e33148b66cd6c3|29d29d15d29d29d21c29d29d29d29de857600fcd9f89735d87c3704c4e141b$">
17
+ <fingerprint pattern="^(?:2ad2ad0002ad2ad0002ad2ad2ad2ada9e96d3ba9f7903758a731e0fa01453d|29d29d15d29d29d21c29d29d29d29d10d7a07cb776562eccb97246005feba5|2ad2ad0002ad2ad0002ad2ad2ad2ad5bf44aec534289dfa8e33148b66cd6c3|29d29d15d29d29d21c29d29d29d29de857600fcd9f89735d87c3704c4e141b)$">
18
18
  <description>Synology NAS DSM 6</description>
19
19
  <example>29d29d15d29d29d21c29d29d29d29d10d7a07cb776562eccb97246005feba5</example>
20
20
  <example>29d29d15d29d29d21c29d29d29d29de857600fcd9f89735d87c3704c4e141b</example>
@@ -29,7 +29,7 @@
29
29
  <param pos="0" name="hw.device" value="NAS"/>
30
30
  </fingerprint>
31
31
 
32
- <fingerprint pattern="^00000000000000000042d42d0000009535d5979f591ae8e547c5e5743e5b64|29d29d15d29d29d00042d42d00000068f5dc63852f94da932cd6b61b1cd9e3|29d29d15d29d29d21c42d42d000000bf85d79ff39d9f5079675604a74fc04b|29d29d15d29d29d00042d42d000000038eaaf490bec8dc33757f165ce01762|29d29d15d29d29d21c42d42d000000790cb01ea78cc2a73fe8428d61afc0c8$">
32
+ <fingerprint pattern="^(?:00000000000000000042d42d0000009535d5979f591ae8e547c5e5743e5b64|29d29d15d29d29d00042d42d00000068f5dc63852f94da932cd6b61b1cd9e3|29d29d15d29d29d21c42d42d000000bf85d79ff39d9f5079675604a74fc04b|29d29d15d29d29d00042d42d000000038eaaf490bec8dc33757f165ce01762|29d29d15d29d29d21c42d42d000000790cb01ea78cc2a73fe8428d61afc0c8)$">
33
33
  <description>Synology NAS DSM 7</description>
34
34
  <example>00000000000000000042d42d0000009535d5979f591ae8e547c5e5743e5b64</example>
35
35
  <example>29d29d15d29d29d00042d42d000000038eaaf490bec8dc33757f165ce01762</example>
@@ -56,7 +56,7 @@
56
56
  <param pos="0" name="os.device" value="Router"/>
57
57
  </fingerprint>
58
58
 
59
- <fingerprint pattern="^07d14d16d21d21d00042d43d000000aa99ce74e2c6d013c745aa52b5cc042d|07d14d16d21d21d07c42d43d000000f50d155305214cf247147c43c0f1a823|07b08b09b21b21b07b07b08b07b21b23aeefb38b723c523befb314af6e95ac|07c08c09c21c21c07c07c08c07c21c23aeefb38b723c523befb314af6e95ac|07d14d16d21d21d00007d14d07d21d0ae59125bcd90b8876b50928af8f6cd4$">
59
+ <fingerprint pattern="^(?:07d14d16d21d21d00042d43d000000aa99ce74e2c6d013c745aa52b5cc042d|07d14d16d21d21d07c42d43d000000f50d155305214cf247147c43c0f1a823|07b08b09b21b21b07b07b08b07b21b23aeefb38b723c523befb314af6e95ac|07c08c09c21c21c07c07c08c07c21c23aeefb38b723c523befb314af6e95ac|07d14d16d21d21d00007d14d07d21d0ae59125bcd90b8876b50928af8f6cd4)$">
60
60
  <description>Metasploit listener</description>
61
61
  <example>07b08b09b21b21b07b07b08b07b21b23aeefb38b723c523befb314af6e95ac</example>
62
62
  <example>07c08c09c21c21c07c07c08c07c21c23aeefb38b723c523befb314af6e95ac</example>
@@ -71,7 +71,7 @@
71
71
  <!-- This fingerprint matches Java's TLS stack,
72
72
  see https://blog.cobaltstrike.com/2020/12/08/a-red-teamer-plays-with-jarm/ for details -->
73
73
 
74
- <fingerprint pattern="^07d14d16d21d21d07c42d41d00041d24a458a375eef0c576d23a7bab9a9fb1|07d14d16d21d21d00042d41d00041de5fb3038104f457d92ba02e9311512c2$">
74
+ <fingerprint pattern="^(?:07d14d16d21d21d07c42d41d00041d24a458a375eef0c576d23a7bab9a9fb1|07d14d16d21d21d00042d41d00041de5fb3038104f457d92ba02e9311512c2)$">
75
75
  <description>Cobalt Strike listener</description>
76
76
  <example>07d14d16d21d21d07c42d41d00041d24a458a375eef0c576d23a7bab9a9fb1</example>
77
77
  <example>07d14d16d21d21d00042d41d00041de5fb3038104f457d92ba02e9311512c2</example>
@@ -146,7 +146,7 @@
146
146
  <param pos="0" name="hw.cpe23" value="cpe:/h:google:chromecast:-"/>
147
147
  </fingerprint>
148
148
 
149
- <fingerprint pattern="^21d14d00021d21d21c21d14d21d21d3e9a0dda94718e521eb7d1409c9e3601|2ad2ad0002ad2ad0002ad2ad2ad2ad755a2cec4b52fb1bce1ac7f1e48c8a7d$">
149
+ <fingerprint pattern="^(?:21d14d00021d21d21c21d14d21d21d3e9a0dda94718e521eb7d1409c9e3601|2ad2ad0002ad2ad0002ad2ad2ad2ad755a2cec4b52fb1bce1ac7f1e48c8a7d)$">
150
150
  <description>VMware ESXi</description>
151
151
  <example>21d14d00021d21d21c21d14d21d21d3e9a0dda94718e521eb7d1409c9e3601</example>
152
152
  <example>2ad2ad0002ad2ad0002ad2ad2ad2ad755a2cec4b52fb1bce1ac7f1e48c8a7d</example>
@@ -405,4 +405,12 @@
405
405
  <param pos="0" name="os.product" value="Proxmox"/>
406
406
  </fingerprint>
407
407
 
408
+ <fingerprint pattern="^CN=minikubeCA$">
409
+ <description>Kubernetes minikube</description>
410
+ <example>CN=minikubeCA</example>
411
+ <param pos="0" name="service.vendor" value="Kubernetes"/>
412
+ <param pos="0" name="service.product" value="minikube"/>
413
+ <param pos="0" name="service.cpe23" value="cpe:/a:kubernetes:minikube:-"/>
414
+ </fingerprint>
415
+
408
416
  </fingerprints>
@@ -1755,4 +1755,33 @@
1755
1755
  <param pos="0" name="os.product" value="Proxmox"/>
1756
1756
  </fingerprint>
1757
1757
 
1758
+ <fingerprint pattern="^CN=(\S{1,512}),OU=Endpoint Health,O=Duo Security\\, Inc.,L=Ann Arbor,ST=Michigan,C=US(?:,\S+)?$">
1759
+ <description>Duo Device Health</description>
1760
+ <example host.name="127.0.0.1">CN=127.0.0.1,OU=Endpoint Health,O=Duo Security\, Inc.,L=Ann Arbor,ST=Michigan,C=US,1.2.840.113549.1.9.1=#0c1e656e64706f696e746865616c74684064756f73656375726974792e636f6d</example>
1761
+ <param pos="0" name="service.vendor" value="Duo"/>
1762
+ <param pos="0" name="service.product" value="Duo Device Health"/>
1763
+ <param pos="1" name="host.name"/>
1764
+ </fingerprint>
1765
+
1766
+ <fingerprint pattern="^CN=(\S{1,512}),OU=Mac Certifier,O=Duo Security\\, Inc.,L=Ann Arbor,ST=Michigan,C=US(?:,\S+)?$">
1767
+ <description>Duo Certifier</description>
1768
+ <example host.name="localhost">CN=localhost,OU=Mac Certifier,O=Duo Security\, Inc.,L=Ann Arbor,ST=Michigan,C=US,1.2.840.113549.1.9.1=#0c18656e64706f696e744064756f73656375726974792e636f6d</example>
1769
+ <param pos="0" name="service.vendor" value="Duo"/>
1770
+ <param pos="0" name="service.product" value="Duo Certifier"/>
1771
+ <param pos="0" name="os.vendor" value="Apple"/>
1772
+ <param pos="0" name="os.family" value="Mac OS"/>
1773
+ <param pos="0" name="os.product" value="Mac OS"/>
1774
+ <param pos="0" name="os.cpe23" value="cpe:/o:apple:macos:-"/>
1775
+ <param pos="1" name="host.name"/>
1776
+ </fingerprint>
1777
+
1778
+ <fingerprint pattern="^CN=(\S{1,512}),OU=Zimbra Collaboration Server$">
1779
+ <description>Zimbra Collaboration Server</description>
1780
+ <example host.name="foo.bar">CN=foo.bar,OU=Zimbra Collaboration Server</example>
1781
+ <param pos="0" name="service.vendor" value="Zimbra"/>
1782
+ <param pos="0" name="service.product" value="Collaboration Server"/>
1783
+ <param pos="0" name="service.cpe23" value="cpe:/a:zimbra:collaboration_server:-"/>
1784
+ <param pos="1" name="host.name"/>
1785
+ </fingerprint>
1786
+
1758
1787
  </fingerprints>
@@ -1,31 +1,31 @@
1
1
  require 'recog/match_reporter'
2
2
 
3
3
  describe Recog::MatchReporter do
4
- let(:options) { double(detail: false, quiet: false) }
4
+ let(:options) { double(detail: false, json_format: false, quiet: false, multi_match: false) }
5
5
  let(:formatter) { double('formatter').as_null_object }
6
6
  subject { Recog::MatchReporter.new(options, formatter) }
7
7
 
8
8
  def run_report
9
9
  subject.report do
10
10
  subject.increment_line_count
11
- subject.match 'a match'
11
+ subject.match [{'data' => 'a match'}]
12
12
  subject.failure 'a failure'
13
13
  end
14
14
  end
15
15
 
16
16
  describe "#report" do
17
17
  it "prints matches" do
18
- expect(formatter).to receive(:success_message).with('a match')
18
+ expect(formatter).to receive(:success_message).with('MATCH: {"data"=>"a match"}')
19
19
  run_report
20
20
  end
21
21
 
22
22
  it "prints failures" do
23
- expect(formatter).to receive(:failure_message).with('a failure')
23
+ expect(formatter).to receive(:failure_message).with('FAIL: a failure')
24
24
  run_report
25
25
  end
26
26
 
27
27
  context "with detail" do
28
- subject { Recog::MatchReporter.new(double(detail: true, quiet: false), formatter) }
28
+ subject { Recog::MatchReporter.new(double(detail: true, json_format: false, quiet: false, multi_match: false), formatter) }
29
29
 
30
30
  it "prints the lines processed" do
31
31
  expect(formatter).to receive(:status_message).with("\nProcessed 1 lines")
@@ -37,11 +37,25 @@ describe Recog::MatchReporter do
37
37
  run_report
38
38
  end
39
39
  end
40
+
41
+ context "with JSON" do
42
+ subject { Recog::MatchReporter.new(double(detail: false, json_format: true, quiet: false, multi_match: false), formatter) }
43
+
44
+ it "prints matches" do
45
+ expect(formatter).to receive(:success_message).with('{"data":"a match","match":{}}')
46
+ run_report
47
+ end
48
+
49
+ it "prints failures" do
50
+ expect(formatter).to receive(:failure_message).with('{"data":"a failure","match_failure":true,"match":null}')
51
+ run_report
52
+ end
53
+ end
40
54
  end
41
55
 
42
56
  describe "#print_summary" do
43
57
  context "with all matches" do
44
- before { subject.match 'match' }
58
+ before { subject.match ['match'] }
45
59
 
46
60
  it "prints a successful summary" do
47
61
  msg = "SUMMARY: 1 matches and 0 failures"
@@ -64,7 +78,7 @@ describe Recog::MatchReporter do
64
78
  describe "#stop?" do
65
79
  context "with a failure limit" do
66
80
 
67
- let(:options) { double(fail_fast: true, stop_after: 3, detail: false) }
81
+ let(:options) { double(fail_fast: true, stop_after: 3, detail: false, json_format: false, multi_match: false) }
68
82
  before do
69
83
  subject.failure 'first'
70
84
  subject.failure 'second'
@@ -81,7 +95,7 @@ describe Recog::MatchReporter do
81
95
  end
82
96
 
83
97
  context "with no failure limit" do
84
- let(:options) { double(fail_fast: false, detail: false) }
98
+ let(:options) { double(fail_fast: false, detail: false, json_format: false, multi_match: false) }
85
99
 
86
100
  it "return false" do
87
101
  expect(subject.stop?).to be false
data.tar.gz.sig ADDED
Binary file
metadata CHANGED
@@ -1,14 +1,99 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: recog
3
3
  version: !ruby/object:Gem::Version
4
- version: 3.0.1
4
+ version: 3.0.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Rapid7 Research
8
- autorequire:
8
+ autorequire:
9
9
  bindir: recog/bin
10
- cert_chain: []
11
- date: 2022-06-29 00:00:00.000000000 Z
10
+ cert_chain:
11
+ - |
12
+ -----BEGIN CERTIFICATE-----
13
+ MIIDtzCCAp+gAwIBAgIQDOfg5RfYRv6P5WD8G/AwOTANBgkqhkiG9w0BAQUFADBl
14
+ MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
15
+ d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv
16
+ b3QgQ0EwHhcNMDYxMTEwMDAwMDAwWhcNMzExMTEwMDAwMDAwWjBlMQswCQYDVQQG
17
+ EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl
18
+ cnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJvb3QgQ0EwggEi
19
+ MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCtDhXO5EOAXLGH87dg+XESpa7c
20
+ JpSIqvTO9SA5KFhgDPiA2qkVlTJhPLWxKISKityfCgyDF3qPkKyK53lTXDGEKvYP
21
+ mDI2dsze3Tyoou9q+yHyUmHfnyDXH+Kx2f4YZNISW1/5WBg1vEfNoTb5a3/UsDg+
22
+ wRvDjDPZ2C8Y/igPs6eD1sNuRMBhNZYW/lmci3Zt1/GiSw0r/wty2p5g0I6QNcZ4
23
+ VYcgoc/lbQrISXwxmDNsIumH0DJaoroTghHtORedmTpyoeb6pNnVFzF1roV9Iq4/
24
+ AUaG9ih5yLHa5FcXxH4cDrC0kqZWs72yl+2qp/C3xag/lRbQ/6GW6whfGHdPAgMB
25
+ AAGjYzBhMA4GA1UdDwEB/wQEAwIBhjAPBgNVHRMBAf8EBTADAQH/MB0GA1UdDgQW
26
+ BBRF66Kv9JLLgjEtUYunpyGd823IDzAfBgNVHSMEGDAWgBRF66Kv9JLLgjEtUYun
27
+ pyGd823IDzANBgkqhkiG9w0BAQUFAAOCAQEAog683+Lt8ONyc3pklL/3cmbYMuRC
28
+ dWKuh+vy1dneVrOfzM4UKLkNl2BcEkxY5NM9g0lFWJc1aRqoR+pWxnmrEthngYTf
29
+ fwk8lOa4JiwgvT2zKIn3X/8i4peEH+ll74fg38FnSbNd67IJKusm7Xi+fT8r87cm
30
+ NW1fiQG2SVufAQWbqz0lwcy2f8Lxb4bG+mRo64EtlOtCt/qMHt1i8b5QZ7dsvfPx
31
+ H2sMNgcWfzd8qVttevESRmCD1ycEvkvOl77DZypoEd+A5wwzZr8TDRRu838fYxAe
32
+ +o0bJW1sj6W3YQGx0qMmoRBxna3iw/nDmVG3KwcIzi7mULKn+gpFL6Lw8g==
33
+ -----END CERTIFICATE-----
34
+ - |
35
+ -----BEGIN CERTIFICATE-----
36
+ MIIFMDCCBBigAwIBAgIQBAkYG1/Vu2Z1U0O1b5VQCDANBgkqhkiG9w0BAQsFADBl
37
+ MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
38
+ d3cuZGlnaWNlcnQuY29tMSQwIgYDVQQDExtEaWdpQ2VydCBBc3N1cmVkIElEIFJv
39
+ b3QgQ0EwHhcNMTMxMDIyMTIwMDAwWhcNMjgxMDIyMTIwMDAwWjByMQswCQYDVQQG
40
+ EwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3d3cuZGlnaWNl
41
+ cnQuY29tMTEwLwYDVQQDEyhEaWdpQ2VydCBTSEEyIEFzc3VyZWQgSUQgQ29kZSBT
42
+ aWduaW5nIENBMIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA+NOzHH8O
43
+ Ea9ndwfTCzFJGc/Q+0WZsTrbRPV/5aid2zLXcep2nQUut4/6kkPApfmJ1DcZ17aq
44
+ 8JyGpdglrA55KDp+6dFn08b7KSfH03sjlOSRI5aQd4L5oYQjZhJUM1B0sSgmuyRp
45
+ wsJS8hRniolF1C2ho+mILCCVrhxKhwjfDPXiTWAYvqrEsq5wMWYzcT6scKKrzn/p
46
+ fMuSoeU7MRzP6vIK5Fe7SrXpdOYr/mzLfnQ5Ng2Q7+S1TqSp6moKq4TzrGdOtcT3
47
+ jNEgJSPrCGQ+UpbB8g8S9MWOD8Gi6CxR93O8vYWxYoNzQYIH5DiLanMg0A9kczye
48
+ n6Yzqf0Z3yWT0QIDAQABo4IBzTCCAckwEgYDVR0TAQH/BAgwBgEB/wIBADAOBgNV
49
+ HQ8BAf8EBAMCAYYwEwYDVR0lBAwwCgYIKwYBBQUHAwMweQYIKwYBBQUHAQEEbTBr
50
+ MCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wQwYIKwYBBQUH
51
+ MAKGN2h0dHA6Ly9jYWNlcnRzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEFzc3VyZWRJ
52
+ RFJvb3RDQS5jcnQwgYEGA1UdHwR6MHgwOqA4oDaGNGh0dHA6Ly9jcmw0LmRpZ2lj
53
+ ZXJ0LmNvbS9EaWdpQ2VydEFzc3VyZWRJRFJvb3RDQS5jcmwwOqA4oDaGNGh0dHA6
54
+ Ly9jcmwzLmRpZ2ljZXJ0LmNvbS9EaWdpQ2VydEFzc3VyZWRJRFJvb3RDQS5jcmww
55
+ TwYDVR0gBEgwRjA4BgpghkgBhv1sAAIEMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8v
56
+ d3d3LmRpZ2ljZXJ0LmNvbS9DUFMwCgYIYIZIAYb9bAMwHQYDVR0OBBYEFFrEuXsq
57
+ CqOl6nEDwGD5LfZldQ5YMB8GA1UdIwQYMBaAFEXroq/0ksuCMS1Ri6enIZ3zbcgP
58
+ MA0GCSqGSIb3DQEBCwUAA4IBAQA+7A1aJLPzItEVyCx8JSl2qB1dHC06GsTvMGHX
59
+ fgtg/cM9D8Svi/3vKt8gVTew4fbRknUPUbRupY5a4l4kgU4QpO4/cY5jDhNLrddf
60
+ RHnzNhQGivecRk5c/5CxGwcOkRX7uq+1UcKNJK4kxscnKqEpKBo6cSgCPC6Ro8Al
61
+ EeKcFEehemhor5unXCBc2XGxDI+7qPjFEmifz0DLQESlE/DmZAwlCEIysjaKJAL+
62
+ L3J+HNdJRZboWR3p+nRka7LrZkPas7CM1ekN3fYBIM6ZMWM9CBoYs4GbT8aTEAb8
63
+ B4H6i9r5gkn3Ym6hU/oSlBiFLpKR6mhsRDKyZqHnGKSaZFHv
64
+ -----END CERTIFICATE-----
65
+ - |
66
+ -----BEGIN CERTIFICATE-----
67
+ MIIFIzCCBAugAwIBAgIQCMePMbkSxvnPeJhYXIfaxzANBgkqhkiG9w0BAQsFADBy
68
+ MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
69
+ d3cuZGlnaWNlcnQuY29tMTEwLwYDVQQDEyhEaWdpQ2VydCBTSEEyIEFzc3VyZWQg
70
+ SUQgQ29kZSBTaWduaW5nIENBMB4XDTIwMTAwNzAwMDAwMFoXDTIzMTEwNjEyMDAw
71
+ MFowYDELMAkGA1UEBhMCVVMxFjAUBgNVBAgTDU1hc3NhY2h1c2V0dHMxDzANBgNV
72
+ BAcTBkJvc3RvbjETMBEGA1UEChMKUmFwaWQ3IExMQzETMBEGA1UEAxMKUmFwaWQ3
73
+ IExMQzCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBALNTz4zvAy7h/vQp
74
+ 4dr1txXHlABAagkwYYwTMCtHs5PXsJITx/5SAjx5swuaLfze5kPBNF2YImvFlOXY
75
+ WaB+0PsOnXnaARsDZU683xFlj8izU6IN6VrAHzDLKFBzruJENrOJD/ikbEtbjO/q
76
+ gFbmS9J9v5ohG/pcRSS0t4ZPAwymf8eCp6QsvOKK/Aymp1RhlRaP8N6N5CIpkhz1
77
+ 9p968iCE+DjOXVYxcWE+jE/7uB1dbgrXykNBujMSS3GULOvVEY28n6NCmrPlo23g
78
+ yRjYVJ2Vy14nBqnxDZ/yRIfWRVjWoT9TsAEbe9gY29oDpSCSs4wSmLQd5zGCpZ9h
79
+ r0HDFB8CAwEAAaOCAcUwggHBMB8GA1UdIwQYMBaAFFrEuXsqCqOl6nEDwGD5LfZl
80
+ dQ5YMB0GA1UdDgQWBBTLBL7DTwumVEKtdCdpHVYMXOFeDzAOBgNVHQ8BAf8EBAMC
81
+ B4AwEwYDVR0lBAwwCgYIKwYBBQUHAwMwdwYDVR0fBHAwbjA1oDOgMYYvaHR0cDov
82
+ L2NybDMuZGlnaWNlcnQuY29tL3NoYTItYXNzdXJlZC1jcy1nMS5jcmwwNaAzoDGG
83
+ L2h0dHA6Ly9jcmw0LmRpZ2ljZXJ0LmNvbS9zaGEyLWFzc3VyZWQtY3MtZzEuY3Js
84
+ MEwGA1UdIARFMEMwNwYJYIZIAYb9bAMBMCowKAYIKwYBBQUHAgEWHGh0dHBzOi8v
85
+ d3d3LmRpZ2ljZXJ0LmNvbS9DUFMwCAYGZ4EMAQQBMIGEBggrBgEFBQcBAQR4MHYw
86
+ JAYIKwYBBQUHMAGGGGh0dHA6Ly9vY3NwLmRpZ2ljZXJ0LmNvbTBOBggrBgEFBQcw
87
+ AoZCaHR0cDovL2NhY2VydHMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0U0hBMkFzc3Vy
88
+ ZWRJRENvZGVTaWduaW5nQ0EuY3J0MAwGA1UdEwEB/wQCMAAwDQYJKoZIhvcNAQEL
89
+ BQADggEBAN+GL5/myPWg7oH4mVrG7/OhXF1MoYQF0ddaNiqaweEHMuKJBQCVZRbL
90
+ 37HojoKXXv2yyRJBCeTB+ojrxX+5PdLVZa0ss7toWzJ2A1poPXZ1eZvm5xeFD32z
91
+ YQaTmmNWNI3PCDTyJ2PXUc+bDiNNwcZ7yc5o78UNRvp9Jxghya17Q76c9Ov9wvnv
92
+ dxxQKWGOQy0m4fBrkyjAyH9Djjn81RbQrqYgPuhd5nD0HjN3VUQLhQbIJrk9TVs0
93
+ EknWpNgVhohbot1lfVAMmIhdtOVaRVcQQixWPwprDj/ydB8ryDMDosIMcw+fkoXU
94
+ 9GJsSaSRRYQ9UUkVL27b64okU8D48m8=
95
+ -----END CERTIFICATE-----
96
+ date: 2022-10-20 00:00:00.000000000 Z
12
97
  dependencies:
13
98
  - !ruby/object:Gem::Dependency
14
99
  name: rspec
@@ -200,7 +285,7 @@ files:
200
285
  homepage: https://www.github.com/rapid7/recog-ruby
201
286
  licenses: []
202
287
  metadata: {}
203
- post_install_message:
288
+ post_install_message:
204
289
  rdoc_options: []
205
290
  require_paths:
206
291
  - lib
@@ -216,7 +301,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
216
301
  version: '0'
217
302
  requirements: []
218
303
  rubygems_version: 3.1.6
219
- signing_key:
304
+ signing_key:
220
305
  specification_version: 4
221
306
  summary: Network service fingerprint database, classes, and utilities
222
307
  test_files:
metadata.gz.sig ADDED
Binary file