recog 2.3.23 → 3.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (116) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/README.md +25 -16
  4. data/Rakefile +2 -9
  5. data/lib/recog/db_manager.rb +1 -1
  6. data/lib/recog/version.rb +1 -1
  7. data/{bin → recog/bin}/recog_match +0 -1
  8. data/{xml → recog/xml}/apache_modules.xml +0 -0
  9. data/{xml → recog/xml}/apache_os.xml +0 -0
  10. data/{xml → recog/xml}/architecture.xml +0 -0
  11. data/{xml → recog/xml}/dhcp_vendor_class.xml +9 -9
  12. data/{xml → recog/xml}/dns_versionbind.xml +0 -0
  13. data/{xml → recog/xml}/favicons.xml +63 -1
  14. data/{xml → recog/xml}/fingerprints.xsd +0 -0
  15. data/{xml → recog/xml}/ftp_banners.xml +0 -0
  16. data/{xml → recog/xml}/h323_callresp.xml +0 -0
  17. data/{xml → recog/xml}/hp_pjl_id.xml +0 -0
  18. data/{xml → recog/xml}/html_title.xml +47 -0
  19. data/{xml → recog/xml}/http_cookies.xml +19 -0
  20. data/{xml → recog/xml}/http_servers.xml +74 -1
  21. data/{xml → recog/xml}/http_wwwauth.xml +13 -0
  22. data/{xml → recog/xml}/imap_banners.xml +0 -0
  23. data/{xml → recog/xml}/ldap_searchresult.xml +0 -0
  24. data/{xml → recog/xml}/mdns_device-info_txt.xml +0 -0
  25. data/{xml → recog/xml}/mdns_workstation_txt.xml +0 -0
  26. data/{xml → recog/xml}/mysql_banners.xml +0 -0
  27. data/{xml → recog/xml}/mysql_error.xml +0 -0
  28. data/{xml → recog/xml}/nntp_banners.xml +0 -0
  29. data/{xml → recog/xml}/ntp_banners.xml +0 -0
  30. data/{xml → recog/xml}/operating_system.xml +0 -0
  31. data/{xml → recog/xml}/pop_banners.xml +0 -0
  32. data/{xml → recog/xml}/rsh_resp.xml +0 -0
  33. data/{xml → recog/xml}/rtsp_servers.xml +0 -0
  34. data/{xml → recog/xml}/sip_banners.xml +0 -0
  35. data/{xml → recog/xml}/sip_user_agents.xml +0 -0
  36. data/{xml → recog/xml}/smb_native_lm.xml +0 -0
  37. data/{xml → recog/xml}/smb_native_os.xml +0 -0
  38. data/{xml → recog/xml}/smtp_banners.xml +0 -0
  39. data/{xml → recog/xml}/smtp_debug.xml +0 -0
  40. data/{xml → recog/xml}/smtp_ehlo.xml +0 -0
  41. data/{xml → recog/xml}/smtp_expn.xml +0 -0
  42. data/{xml → recog/xml}/smtp_help.xml +0 -0
  43. data/{xml → recog/xml}/smtp_mailfrom.xml +0 -0
  44. data/{xml → recog/xml}/smtp_noop.xml +0 -0
  45. data/{xml → recog/xml}/smtp_quit.xml +0 -0
  46. data/{xml → recog/xml}/smtp_rcptto.xml +0 -0
  47. data/{xml → recog/xml}/smtp_rset.xml +0 -0
  48. data/{xml → recog/xml}/smtp_turn.xml +0 -0
  49. data/{xml → recog/xml}/smtp_vrfy.xml +0 -0
  50. data/{xml → recog/xml}/snmp_sysdescr.xml +21 -6
  51. data/{xml → recog/xml}/snmp_sysobjid.xml +11 -0
  52. data/{xml → recog/xml}/ssh_banners.xml +0 -0
  53. data/{xml → recog/xml}/telnet_banners.xml +34 -1
  54. data/{xml → recog/xml}/tls_jarm.xml +8 -0
  55. data/{xml → recog/xml}/x11_banners.xml +0 -0
  56. data/{xml → recog/xml}/x509_issuers.xml +13 -2
  57. data/{xml → recog/xml}/x509_subjects.xml +0 -0
  58. data/recog.gemspec +9 -5
  59. data/spec/spec_helper.rb +4 -0
  60. metadata +56 -145
  61. data/.github/ISSUE_TEMPLATE/bug_report.md +0 -37
  62. data/.github/ISSUE_TEMPLATE/feature_request.md +0 -17
  63. data/.github/ISSUE_TEMPLATE/fingerprint_request.md +0 -27
  64. data/.github/PULL_REQUEST_TEMPLATE +0 -24
  65. data/.github/SECURITY.md +0 -35
  66. data/.github/dependabot.yml +0 -8
  67. data/.github/workflows/ci.yml +0 -26
  68. data/.github/workflows/verify.yml +0 -89
  69. data/.gitignore +0 -23
  70. data/.rspec +0 -3
  71. data/.ruby-gemset +0 -1
  72. data/.ruby-version +0 -1
  73. data/.snyk +0 -10
  74. data/.travis.yml +0 -25
  75. data/.vscode/bin/monitor-recog-fingerprints.sh +0 -54
  76. data/.vscode/extensions.json +0 -5
  77. data/.vscode/settings.json +0 -8
  78. data/.vscode/tasks.json +0 -77
  79. data/CONTRIBUTING.md +0 -278
  80. data/bin/recog_cleanup +0 -16
  81. data/bin/recog_export +0 -81
  82. data/bin/recog_standardize +0 -163
  83. data/bin/recog_verify +0 -98
  84. data/cpe-remap.yaml +0 -374
  85. data/features/data/failing_banners_fingerprints.xml +0 -20
  86. data/features/data/matching_banners_fingerprints.xml +0 -23
  87. data/features/data/multiple_banners_fingerprints.xml +0 -32
  88. data/features/data/no_tests.xml +0 -3
  89. data/features/data/sample_banner.txt +0 -2
  90. data/features/data/schema_failure.xml +0 -4
  91. data/features/data/successful_tests.xml +0 -18
  92. data/features/data/tests_with_failures.xml +0 -26
  93. data/features/data/tests_with_warnings.xml +0 -17
  94. data/features/match.feature +0 -36
  95. data/features/support/aruba.rb +0 -3
  96. data/features/support/env.rb +0 -6
  97. data/features/support/hooks.rb +0 -9
  98. data/features/verify.feature +0 -112
  99. data/identifiers/README.md +0 -70
  100. data/identifiers/fields.txt +0 -105
  101. data/identifiers/hw_device.txt +0 -86
  102. data/identifiers/hw_family.txt +0 -121
  103. data/identifiers/hw_product.txt +0 -463
  104. data/identifiers/os_architecture.txt +0 -10
  105. data/identifiers/os_device.txt +0 -77
  106. data/identifiers/os_family.txt +0 -235
  107. data/identifiers/os_product.txt +0 -357
  108. data/identifiers/service_family.txt +0 -249
  109. data/identifiers/service_product.txt +0 -778
  110. data/identifiers/vendor.txt +0 -859
  111. data/misc/convert_mysql_err +0 -61
  112. data/misc/order.xsl +0 -17
  113. data/requirements.txt +0 -2
  114. data/spec/lib/fingerprint_self_test_spec.rb +0 -175
  115. data/tools/dev/hooks/pre-commit +0 -21
  116. data/update_cpes.py +0 -343
data/bin/recog_export DELETED
@@ -1,81 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- $:.unshift(File.expand_path(File.join(File.dirname(__FILE__), "..", "lib")))
4
- require 'optparse'
5
- require 'ostruct'
6
- require 'recog'
7
-
8
- def squash_lines(str)
9
- str.split(/\n/).join(' ').gsub(/\s+/, ' ')
10
- end
11
-
12
- def export_text(options)
13
- end
14
-
15
- def export_ruby(options)
16
- $stdout.puts "# Recog fingerprint database export [ #{File.basename(options.xml_file)} ] on #{Time.now.to_s}"
17
- $stdout.puts "fp_str = '' # Set this value to the match string"
18
- $stdout.puts "fp_match = {} # Match results are stored here"
19
- $stdout.puts ""
20
- $stdout.puts "case fp_str"
21
- options.db.fingerprints.each do |fp|
22
- puts " # #{squash_lines fp.name}"
23
- puts " when /#{fp.regex.to_s}/"
24
- fp.tests.each do |test|
25
- puts " # Example: #{squash_lines test}"
26
- end
27
- fp.params.each_pair do |k,v|
28
- if v[0] == 0
29
- puts " fp_match[#{k.inspect}] = #{v[1].inspect}"
30
- else
31
- puts " fp_match[#{k.inspect}] = $#{v[0].to_s}"
32
- end
33
- end
34
- puts ""
35
- end
36
- $stdout.puts "end"
37
- end
38
-
39
-
40
- options = OpenStruct.new(etype: :ruby)
41
-
42
- option_parser = OptionParser.new do |opts|
43
- opts.banner = "Usage: #{$0} [options] XML_FINGERPRINTS_FILE"
44
- opts.separator "Exports an XML fingerprint database to another format."
45
- opts.separator ""
46
- opts.separator "Options"
47
-
48
- opts.on("-t", "--type type",
49
- "Choose a type of export.",
50
- " [r]uby (default - export a ruby case statement with regular expressions)",
51
- " [t]ext (export a text description of the fingerprints)") do |etype|
52
- case etype.downcase
53
- when /^r/
54
- options.etype = :ruby
55
- when /^t/
56
- options.etype = :text
57
- end
58
- end
59
-
60
- opts.on("-h", "--help", "Show this message.") do
61
- puts opts
62
- exit
63
- end
64
- end
65
- option_parser.parse!(ARGV)
66
-
67
- if ARGV.count != 1
68
- puts option_parser
69
- exit
70
- end
71
-
72
- options.xml_file = ARGV.shift
73
- options.db = Recog::DB.new(options.xml_file)
74
-
75
- case options.etype
76
- when :ruby
77
- export_ruby(options)
78
- when :text
79
- export_text(options)
80
- end
81
-
@@ -1,163 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- $:.unshift(File.expand_path(File.join(File.dirname(__FILE__), "..", "lib")))
4
- require 'optparse'
5
- require 'ostruct'
6
- require 'recog'
7
-
8
- def load_identifiers(path)
9
- res = {}
10
- File.readlines(path).map{|line| line.strip}.each do |ident|
11
- res[ident] = true
12
- end
13
- return res
14
- end
15
-
16
- def write_identifiers(vals, path)
17
- res = []
18
- vals.each_pair do |k,v|
19
- res = res.push(k)
20
- end
21
- res = res.map{|x| x.strip}.select{|x| x.length > 0}.sort.uniq
22
- File.write(path, res.join("\n") + "\n")
23
- end
24
-
25
- bdir = File.expand_path(File.join(File.dirname(__FILE__), "..", "identifiers"))
26
-
27
- options = OpenStruct.new(write: false)
28
- option_parser = OptionParser.new do |opts|
29
- opts.banner = "Usage: #{$0} [options] XML_FINGERPRINT_FILE1 ..."
30
- opts.separator "Verifies that each fingerprint asserts known identifiers."
31
- opts.separator ""
32
- opts.separator "Options"
33
-
34
- opts.on("-w", "--write") do
35
- options.write = true
36
- end
37
-
38
- opts.on("-h", "--help", "Show this message.") do
39
- puts opts
40
- exit
41
- end
42
- end
43
- option_parser.parse!(ARGV)
44
-
45
- if ARGV.empty?
46
- $stderr.puts 'Missing XML fingerprint files'
47
- puts option_parser
48
- exit(1)
49
- end
50
-
51
- # Load the unique identifiers
52
- vendors = load_identifiers(File.join(bdir, "vendor.txt"))
53
- fields = load_identifiers(File.join(bdir, "fields.txt"))
54
- os_arch = load_identifiers(File.join(bdir, "os_architecture.txt"))
55
- os_prod = load_identifiers(File.join(bdir, "os_product.txt"))
56
- os_family = load_identifiers(File.join(bdir, "os_family.txt"))
57
- os_device = load_identifiers(File.join(bdir, "os_device.txt"))
58
- hw_prod = load_identifiers(File.join(bdir, "hw_product.txt"))
59
- hw_family = load_identifiers(File.join(bdir, "hw_family.txt"))
60
- hw_device = load_identifiers(File.join(bdir, "hw_device.txt"))
61
- svc_prod = load_identifiers(File.join(bdir, "service_product.txt"))
62
- svc_family = load_identifiers(File.join(bdir, "service_family.txt"))
63
-
64
- missing_count = 0
65
-
66
- ARGV.each do |arg|
67
- Dir.glob(arg).each do |file|
68
- ndb = Recog::DB.new(file)
69
- ndb.fingerprints.each do |f|
70
- f.params.each do |k,v|
71
- paramIndex, val = v
72
- if ! fields[k]
73
- puts "FIELD MISSING: #{k}"
74
- missing_count += 1
75
- fields[k] = true
76
- end
77
- next if paramIndex != 0
78
- next if val.index("{") != nil
79
- next if val.strip == ""
80
- case k
81
- when "os.vendor", "service.vendor", "service.component.vendor", "hw.vendor"
82
- if ! vendors[val]
83
- puts "VENDOR MISSING: #{val}"
84
- missing_count += 1
85
- vendors[val] = true
86
- end
87
- when "os.arch"
88
- if ! os_arch[val]
89
- puts "OS ARCH MISSING: #{val}"
90
- missing_count += 1
91
- os_arch[val] = true
92
- end
93
- when "os.product"
94
- if ! os_prod[val]
95
- puts "OS PRODUCT MISSING: #{val}"
96
- missing_count += 1
97
- os_prod[val] = true
98
- end
99
- when "os.family"
100
- if ! os_family[val]
101
- puts "OS FAMILY MISSING: #{val}"
102
- missing_count += 1
103
- os_family[val] = true
104
- end
105
- when "os.device"
106
- if ! os_device[val]
107
- puts "OS DEVICE MISSING: #{val}"
108
- missing_count += 1
109
- os_device[val] = true
110
- end
111
- when "hw.product"
112
- if ! hw_prod[val]
113
- puts "HW PRODUCT MISSING: #{val}"
114
- missing_count += 1
115
- hw_prod[val] = true
116
- end
117
- when "hw.family"
118
- if ! hw_family[val]
119
- puts "HW FAMILY MISSING: #{val}"
120
- missing_count += 1
121
- hw_family[val] = true
122
- end
123
- when "hw.device"
124
- if ! hw_device[val]
125
- puts "HW DEVICE MISSING: #{val}"
126
- missing_count += 1
127
- hw_device[val] = true
128
- end
129
- when "service.product", "service.component.product"
130
- if ! svc_prod[val]
131
- puts "SERVICE PRODUCT MISSING: #{val}"
132
- missing_count += 1
133
- svc_prod[val] = true
134
- end
135
- when "service.family"
136
- if ! svc_family[val]
137
- puts "SERVICE FAMILY MISSING: #{val}"
138
- missing_count += 1
139
- svc_family[val] = true
140
- end
141
- end
142
- end
143
- end
144
- end
145
- end
146
-
147
- if options.write
148
- # Write back the unique identifiers
149
- write_identifiers(vendors, File.join(bdir, "vendor.txt"))
150
- write_identifiers(fields, File.join(bdir, "fields.txt"))
151
- write_identifiers(os_arch, File.join(bdir, "os_architecture.txt"))
152
- write_identifiers(os_prod, File.join(bdir, "os_product.txt"))
153
- write_identifiers(os_family, File.join(bdir, "os_family.txt"))
154
- write_identifiers(os_device, File.join(bdir, "os_device.txt"))
155
- write_identifiers(hw_prod, File.join(bdir, "hw_product.txt"))
156
- write_identifiers(hw_family, File.join(bdir, "hw_family.txt"))
157
- write_identifiers(hw_device, File.join(bdir, "hw_device.txt"))
158
- write_identifiers(svc_prod, File.join(bdir, "service_product.txt"))
159
- write_identifiers(svc_family, File.join(bdir, "service_family.txt"))
160
- end
161
-
162
- exit_code = (missing_count > 0 ? 1 : 0)
163
- exit(exit_code)
data/bin/recog_verify DELETED
@@ -1,98 +0,0 @@
1
- #!/usr/bin/env ruby
2
-
3
- $:.unshift(File.expand_path(File.join(File.dirname(__FILE__), "..", "lib")))
4
- require 'nokogiri'
5
- require 'optparse'
6
- require 'ostruct'
7
- require 'recog'
8
- require 'recog/formatter'
9
- require 'recog/verifier'
10
- require 'recog/verify_reporter'
11
-
12
- options = OpenStruct.new(color: false, detail: false, quiet: false, warnings: true, schema: nil)
13
-
14
- option_parser = OptionParser.new do |opts|
15
- opts.banner = "Usage: #{$0} [options] XML_FINGERPRINT_FILE1 ..."
16
- opts.separator "Verifies that each fingerprint passes its internal tests."
17
- opts.separator ""
18
- opts.separator "Options"
19
-
20
- opts.on("-f", "--format FORMATTER",
21
- "Choose a formatter.",
22
- " [s]ummary (default - failure/warning msgs and summary)",
23
- " [q]uiet (configured failure/warning msgs only)",
24
- " [d]etail (fingerprint name with tests and expanded summary)") do |format|
25
- if format.start_with? 'd'
26
- options.detail = true
27
- end
28
- if format.start_with? 'q'
29
- options.quiet = true
30
- end
31
- end
32
-
33
- opts.on("-c", "--color", "Enable color in the output.") do
34
- options.color = true
35
- end
36
-
37
- opts.on("--[no-]warnings", "Track warnings") do |o|
38
- options.warnings = o
39
- end
40
-
41
- opts.on("--schema-location SCHEMA_FILE", "Location of the Recog XSD file. If not specified, validation will not be run.") do |schema_file|
42
- options.schema = Nokogiri::XML::Schema(File.read(schema_file))
43
- end
44
-
45
- opts.on("-h", "--help", "Show this message.") do
46
- puts opts
47
- exit
48
- end
49
- end
50
- option_parser.parse!(ARGV)
51
-
52
- if ARGV.empty?
53
- $stderr.puts 'Missing XML fingerprint files'
54
- puts option_parser
55
- exit(1)
56
- end
57
-
58
- warnings = 0
59
- failures = 0
60
- formatter = Recog::Formatter.new(options, $stdout)
61
- ARGV.each do |arg|
62
- Dir.glob(arg).each do |file|
63
- # Create a new reporter per XML file to hold context on success/warn/fails
64
- reporter = Recog::VerifyReporter.new(options, formatter, file)
65
-
66
- begin
67
- # Validate the XML database against the recog schema first, if requested
68
- if options.schema
69
- errors = options.schema.validate(Nokogiri::XML(File.read(file)))
70
- if errors.size > 0
71
- reporter.report(0) do
72
- errors.each do |error|
73
- reporter.failure(error.message, error.line)
74
- end
75
- end
76
- # Skip validation of individual fingerprints since the XML itself
77
- # is likely malformed.
78
- next
79
- end
80
- end
81
-
82
- # Now read the XML file directly and validate the fingerprints
83
- # themselves
84
- db = Recog::DB.new(file)
85
- verifier = Recog::Verifier.new(db, reporter)
86
- verifier.verify
87
- rescue Recog::FingerprintParseError => e
88
- reporter.failure(e.message, e.line_number)
89
- rescue => e
90
- reporter.failure(e.message)
91
- ensure
92
- failures += reporter.failure_count
93
- warnings += reporter.warning_count
94
- end
95
- end
96
- end
97
-
98
- exit failures + warnings
data/cpe-remap.yaml DELETED
@@ -1,374 +0,0 @@
1
- mappings:
2
- # The following section contains CPE application or 'a' remappings. These will
3
- # ONLY be used for mapping Recog 'service' attributes.
4
- a:
5
- akamai:
6
- products:
7
- ghost: akamaighost
8
- amazon:
9
- products:
10
- s3: amazon_simple_storage_service
11
- cloudfront_load_balancer: amazon_cloudfront
12
- apache:
13
- products:
14
- httpd: http_server
15
- aprelium_technologies:
16
- vendor: aprelium
17
- alt-n:
18
- vendor: altn
19
- aruba_networks:
20
- vendor: arubanetworks
21
- atlassian:
22
- products:
23
- confluence: confluence_server
24
- bea:
25
- products:
26
- weblogic: weblogic_server
27
- blue_coat:
28
- vendor: bluecoat
29
- carnegie_mellon_university:
30
- vendor: cmu
31
- products:
32
- cyrus_imap: cyrus_imap_server
33
- centos_webpanel:
34
- vendor: centos-webpanel
35
- check_point:
36
- vendor: checkpoint
37
- cherokee_project:
38
- vendor: cherokee-project
39
- cisco:
40
- products:
41
- apic: application_policy_infrastructure_controller
42
- cloudflare:
43
- products:
44
- cloudflare_load_balancer: load_balancing
45
- cpanel:
46
- products:
47
- cpanel_service_daemon: cpanel
48
- crushftp:
49
- products:
50
- crushftp_web_interface: crushftp
51
- cz.nic:
52
- vendor: knot-dns
53
- drupal:
54
- products:
55
- cms: drupal
56
- embedthis:
57
- products:
58
- goahead_webserver: goahead
59
- envoy_proxy:
60
- vendor: envoyproxy
61
- f5:
62
- products:
63
- big-ip: big-ip_local_traffic_manager
64
- big-ip_ltm: big-ip_local_traffic_manager
65
- fedora_project:
66
- vendor: fedoraproject
67
- google:
68
- products:
69
- google_web_services: web_server
70
- ibm:
71
- products:
72
- lotus_domino: lotus_domino_server
73
- ibm_domino: lotus_domino
74
- ignite_realtime:
75
- vendor: igniterealtime
76
- intel:
77
- products:
78
- intel(r)_active_management_technology: active_management_technology
79
- intel(r)_standard_manageability: standard_manageability
80
- jamf:
81
- products:
82
- jamf_pro: jamf
83
- kibana:
84
- vendor: elasticsearch
85
- kubernetes:
86
- products:
87
- nginx_ingress_controller: ingress-nginx
88
- kodi:
89
- products:
90
- media_server: kodi
91
- kong:
92
- vendor: konghq
93
- products:
94
- gateway: kong_gateway
95
- litespeed_technologies:
96
- vendor: litespeedtech
97
- lotus:
98
- vendor: ibm
99
- lynx_technology:
100
- vendor: lynxtechnology
101
- products:
102
- twonky_media_server: twonky_server
103
- mailenable:
104
- products:
105
- mail_server: mailenable
106
- manageengine:
107
- vendor: zohocorp
108
- products:
109
- adaudit_plus: manageengine_adaudit_plus
110
- desktop_central: manageengine_desktop_central
111
- opmanager: manageengine_opmanager
112
- microsoft:
113
- products:
114
- active_directory_controller: active_directory
115
- exchange_server_5.5: exchange_server
116
- exchange_2000_server: exchange_server
117
- exchange_2003_server: exchange_server
118
- exchange_2007_server: exchange_server
119
- lightweight_directory_server: active_directory_lightweight_directory_service
120
- pws: personal_web_server
121
- mod_ssl:
122
- vendor: modssl
123
- mod_wsgi:
124
- vendor: modwsgi
125
- # NIST took the vendor name from the website but apparently missed the `.in`
126
- # in moinmo.in was part of the name
127
- moinmoin:
128
- vendor: moinmo
129
- mort_bay:
130
- vendor: mortbay
131
- munin:
132
- vendor: munin-monitoring
133
- nginx:
134
- vendor: f5
135
- nlnet_labs:
136
- vendor: nlnetlabs
137
- products:
138
- dnsd: name_server_daemon
139
- net-snmp:
140
- products:
141
- snmp_agent: net-snmp
142
- owncloud:
143
- products:
144
- owncloud_server: owncloud
145
- parallels:
146
- products:
147
- plesk: parallels_plesk_panel
148
- phoenix_contact:
149
- vendor: phoenixcontact
150
- plesk:
151
- vendor: parallels
152
- proftpd_project:
153
- vendor: proftpd
154
- progress:
155
- products:
156
- openedge_explorer: openedge
157
- pulse_secure:
158
- vendor: pulsesecure
159
- realvnc_ltd.:
160
- vendor: realvnc
161
- red_hat:
162
- vendor: redhat
163
- products:
164
- cygwin_x_server_project: cygwin
165
- jboss_as: jboss_wildfly_application_server
166
- jboss_eap: jboss_enterprise_application_platform
167
- jbossweb: jboss_web_framework_kit
168
- red_hat_directory_server: directory_server
169
- rundeck:
170
- vendor: pagerduty
171
- serv-u:
172
- vendor: solarwinds
173
- squid_cache:
174
- vendor: squid-cache
175
- ssh_communications_security:
176
- vendor: ssh
177
- products:
178
- ssh_tectia_server: tectia_server
179
- standard_networks:
180
- vendor: ipswitch
181
- swagger:
182
- vendor: smartbear
183
- synology:
184
- products:
185
- dsm: diskstation_manager
186
- tightvnc:
187
- products:
188
- desktop: tightvnc
189
- tor_project:
190
- vendor: torproject
191
- traefik_labs:
192
- vendor: traefik
193
- products:
194
- traefik_proxy: traefik
195
- twistedmatrix:
196
- products:
197
- twisted_web: twistedweb
198
- ubiquiti:
199
- vendor: ui
200
- vandyke_software:
201
- vendor: vandyke
202
- vmware:
203
- products:
204
- zimbra: zimbra_desktop
205
- vcenter: vcenter_server
206
- x.org:
207
- products:
208
- x.org_x11: x11
209
- xiongmai_technology:
210
- vendor: xiongmaitech
211
- zaphoyd_studios:
212
- vendor: zaphoyd
213
- products:
214
- websocket++: websocketpp
215
-
216
- # The following section contains CPE operating system or 'o' remappings. These will
217
- # ONLY be used for mapping Recog 'os' attributes.
218
- o:
219
- alpine:
220
- vendor: alpinelinux
221
- products:
222
- linux: alpine_linux
223
- apple:
224
- products:
225
- ios: iphone_os
226
- mac_os: macos
227
- brocade:
228
- vendor: broadcom
229
- products:
230
- fabric_os: fabric_operating_system
231
- centos:
232
- products:
233
- linux: centos
234
- check_point:
235
- vendor: checkpoint
236
- cisco:
237
- products:
238
- adaptive_security_appliance: adaptive_security_appliance_software
239
- mds_9000: mds_9000_san-os
240
- nam: network_analysis_module_software
241
- pix: pix_firewall_software
242
- telepresence: telepresence_video_communication_server_software
243
- vpn_3000_concentrator: vpn_3000_concentrator_series_software
244
- wireless_lan_controller: wireless_lan_controller_software
245
- citrix:
246
- products:
247
- netscaler: netscaler_firmware
248
- netscaler_gateway: netscaler_gateway_firmware
249
- cumulus:
250
- vendor: cumulusnetworks
251
- data_domain:
252
- vendor: dell
253
- products:
254
- dd_os: emc_data_domain_os
255
- debian:
256
- products:
257
- linux: debian_linux
258
- eltex:
259
- vendor: eltex-co
260
- fedora_project:
261
- vendor: fedoraproject
262
- hp:
263
- products:
264
- ilo: integrated_lights-out_firmware
265
- ilo_firmware: integrated_lights-out_firmware
266
- ilo_2: integrated_lights-out_2_firmware
267
- ilo_3: integrated_lights-out_3_firmware
268
- ilo_4: integrated_lights-out_4_firmware
269
- ilo_5: integrated_lights-out_5_firmware
270
- tru64_unix: tru64
271
- ibm:
272
- products:
273
- os/400: os_400
274
- i5/os: i5os
275
- juniper:
276
- products:
277
- junos_os: junos
278
- linux:
279
- products:
280
- linux: linux_kernel
281
- microsoft:
282
- products:
283
- windows_server_2003_datacenter_edition: windows_server_2003
284
- windows_server_2003_r2: windows_server_2003
285
- windows_2008_r2: windows_server_2008
286
- windows_server_2008_datacenter_edition: windows_server_2008
287
- windows_server_2008_r2: windows_server_2008
288
- windows_server_2008_r2_datacenter_edition: windows_server_2008
289
- windows_server_2012_r2: windows_server_2012
290
- nt: windows_nt
291
- windows_nt_desktop: windows_nt
292
- windows_nt_server: windows_nt
293
- windows_server_2000: windows_2000
294
- windows_2000_server: windows_2000
295
- windows_2000_datacenter_server: windows_2000
296
- oracle:
297
- products:
298
- ilom: integrated_lights_out_manager_firmware
299
- palo_alto_networks:
300
- vendor: paloaltonetworks
301
- phoenix_contact:
302
- vendor: phoenixcontact
303
- red_hat:
304
- vendor: redhat
305
- software_house:
306
- vendor: swhouse
307
- sun:
308
- products:
309
- solaris: sunos
310
- ubiquiti:
311
- vendor: ui
312
- ubuntu:
313
- vendor: canonical
314
- products:
315
- linux: ubuntu_linux
316
- vmware:
317
- products:
318
- photon_linux: photon_os
319
- vmware_esx_server: esx
320
- vmware_esxi_server: esxi
321
- wind_river:
322
- vendor: windriver
323
- xiongmai_technology:
324
- vendor: xiongmaitech
325
-
326
- # The following section contains CPE hardware or 'h' remappings. These will
327
- # ONLY be used for mapping Recog 'hw' attributes.
328
- h:
329
- apple:
330
- products:
331
- imac_(retina_4k_21.5-inch_2019): imac
332
- imac_(retina_5k_27-inch_2017): imac
333
- imac_(retina_5k_27-inch_2019): imac
334
- imac_(retina_5k_27-inch_2020): imac
335
- macbook_air_(13-inch_2017): macbook_air
336
- macbook_air_(m1_2020): macbook_air
337
- macbook_air_(retina_13-inch_2018): macbook_air
338
- macbook_air_(retina_13-inch_2019): macbook_air
339
- macbook_air_(retina_13-inch_2020): macbook_air
340
- macbook_pro_(13-inch_2018_four_thunderbolt_3_ports): macbook_pro
341
- macbook_pro_(13-inch_2019_two_thunderbolt_3_ports): macbook_pro
342
- macbook_pro_(13-inch_2020): macbook_pro
343
- macbook_pro_(13-inch_m1_2020): macbook_pro
344
- macbook_pro_(15-inch_2018): macbook_pro
345
- macbook_pro_(15-inch_2019): macbook_pro
346
- macbook_pro_(16-inch_2019): macbook_pro
347
- macbook_pro_(retina_13-inch_early_2015): macbook_pro
348
- macbook_pro_(retina_15-inch_mid_2015): macbook_pro
349
- cisco:
350
- products:
351
- nam: network_analysis_module
352
- citrix:
353
- products:
354
- netscaler_sdx_gateway: netscaler_sdx
355
- eltex:
356
- vendor: eltex-co
357
- emc:
358
- products:
359
- celerra: celerra_network_attached_storage
360
- hp:
361
- products:
362
- ilo: integrated_lights-out
363
- kace:
364
- vendor: dell
365
- products:
366
- k1000: kace_k1000_systems_management_appliance
367
- phoenix_contact:
368
- vendor: phoenixcontact
369
- software_house:
370
- vendor: swhouse
371
- tandberg:
372
- vendor: cisco
373
- ubiquiti:
374
- vendor: ui