recog 2.3.22 → 3.0.2

Sign up to get free protection for your applications and to get access to all the features.
Files changed (128) hide show
  1. checksums.yaml +4 -4
  2. checksums.yaml.gz.sig +2 -0
  3. data/LICENSE +1 -1
  4. data/README.md +25 -16
  5. data/Rakefile +2 -9
  6. data/lib/recog/db_manager.rb +1 -1
  7. data/lib/recog/fingerprint.rb +21 -7
  8. data/lib/recog/fingerprint_parse_error.rb +10 -0
  9. data/lib/recog/match_reporter.rb +37 -3
  10. data/lib/recog/matcher.rb +5 -10
  11. data/lib/recog/verifier.rb +4 -4
  12. data/lib/recog/verify_reporter.rb +7 -6
  13. data/lib/recog/version.rb +1 -1
  14. data/{bin → recog/bin}/recog_match +20 -7
  15. data/{xml → recog/xml}/apache_modules.xml +0 -0
  16. data/{xml → recog/xml}/apache_os.xml +61 -19
  17. data/{xml → recog/xml}/architecture.xml +15 -1
  18. data/{xml → recog/xml}/dhcp_vendor_class.xml +10 -10
  19. data/{xml → recog/xml}/dns_versionbind.xml +16 -13
  20. data/{xml → recog/xml}/favicons.xml +167 -9
  21. data/{xml → recog/xml}/fingerprints.xsd +9 -1
  22. data/{xml → recog/xml}/ftp_banners.xml +131 -141
  23. data/{xml → recog/xml}/h323_callresp.xml +2 -2
  24. data/{xml → recog/xml}/hp_pjl_id.xml +81 -81
  25. data/{xml → recog/xml}/html_title.xml +250 -9
  26. data/{xml → recog/xml}/http_cookies.xml +111 -34
  27. data/{xml → recog/xml}/http_servers.xml +483 -270
  28. data/{xml → recog/xml}/http_wwwauth.xml +83 -37
  29. data/{xml → recog/xml}/imap_banners.xml +10 -10
  30. data/{xml → recog/xml}/ldap_searchresult.xml +0 -0
  31. data/{xml → recog/xml}/mdns_device-info_txt.xml +0 -0
  32. data/{xml → recog/xml}/mdns_workstation_txt.xml +0 -0
  33. data/{xml → recog/xml}/mysql_banners.xml +0 -0
  34. data/{xml → recog/xml}/mysql_error.xml +0 -0
  35. data/{xml → recog/xml}/nntp_banners.xml +8 -5
  36. data/{xml → recog/xml}/ntp_banners.xml +33 -33
  37. data/{xml → recog/xml}/operating_system.xml +92 -77
  38. data/{xml → recog/xml}/pop_banners.xml +25 -25
  39. data/{xml → recog/xml}/rsh_resp.xml +0 -0
  40. data/{xml → recog/xml}/rtsp_servers.xml +0 -0
  41. data/{xml → recog/xml}/sip_banners.xml +16 -5
  42. data/{xml → recog/xml}/sip_user_agents.xml +122 -27
  43. data/{xml → recog/xml}/smb_native_lm.xml +5 -5
  44. data/{xml → recog/xml}/smb_native_os.xml +25 -25
  45. data/{xml → recog/xml}/smtp_banners.xml +132 -131
  46. data/{xml → recog/xml}/smtp_debug.xml +0 -0
  47. data/{xml → recog/xml}/smtp_ehlo.xml +0 -0
  48. data/{xml → recog/xml}/smtp_expn.xml +0 -0
  49. data/{xml → recog/xml}/smtp_help.xml +1 -1
  50. data/{xml → recog/xml}/smtp_mailfrom.xml +0 -0
  51. data/{xml → recog/xml}/smtp_noop.xml +0 -0
  52. data/{xml → recog/xml}/smtp_quit.xml +0 -0
  53. data/{xml → recog/xml}/smtp_rcptto.xml +0 -0
  54. data/{xml → recog/xml}/smtp_rset.xml +0 -0
  55. data/{xml → recog/xml}/smtp_turn.xml +0 -0
  56. data/{xml → recog/xml}/smtp_vrfy.xml +0 -0
  57. data/{xml → recog/xml}/snmp_sysdescr.xml +1248 -1233
  58. data/{xml → recog/xml}/snmp_sysobjid.xml +13 -2
  59. data/{xml → recog/xml}/ssh_banners.xml +9 -5
  60. data/{xml → recog/xml}/telnet_banners.xml +83 -1
  61. data/{xml → recog/xml}/tls_jarm.xml +30 -2
  62. data/{xml → recog/xml}/x11_banners.xml +3 -3
  63. data/{xml → recog/xml}/x509_issuers.xml +24 -4
  64. data/{xml → recog/xml}/x509_subjects.xml +32 -3
  65. data/recog.gemspec +9 -5
  66. data/spec/data/external_example_fingerprint/hp_printer_ex_01.txt +1 -0
  67. data/spec/data/external_example_fingerprint/hp_printer_ex_02.txt +1 -0
  68. data/spec/data/external_example_fingerprint.xml +8 -0
  69. data/spec/data/external_example_illegal_path_fingerprint.xml +7 -0
  70. data/spec/lib/recog/db_spec.rb +84 -61
  71. data/spec/lib/recog/fingerprint_spec.rb +4 -4
  72. data/spec/lib/recog/match_reporter_spec.rb +22 -8
  73. data/spec/lib/recog/verify_reporter_spec.rb +8 -8
  74. data/spec/spec_helper.rb +4 -0
  75. data.tar.gz.sig +0 -0
  76. metadata +154 -142
  77. metadata.gz.sig +0 -0
  78. data/.github/ISSUE_TEMPLATE/bug_report.md +0 -37
  79. data/.github/ISSUE_TEMPLATE/feature_request.md +0 -17
  80. data/.github/ISSUE_TEMPLATE/fingerprint_request.md +0 -27
  81. data/.github/PULL_REQUEST_TEMPLATE +0 -24
  82. data/.github/SECURITY.md +0 -35
  83. data/.github/dependabot.yml +0 -8
  84. data/.github/workflows/ci.yml +0 -26
  85. data/.github/workflows/verify.yml +0 -89
  86. data/.gitignore +0 -23
  87. data/.rspec +0 -3
  88. data/.ruby-gemset +0 -1
  89. data/.ruby-version +0 -1
  90. data/.snyk +0 -10
  91. data/.travis.yml +0 -25
  92. data/CONTRIBUTING.md +0 -276
  93. data/bin/recog_cleanup +0 -16
  94. data/bin/recog_export +0 -81
  95. data/bin/recog_standardize +0 -163
  96. data/bin/recog_verify +0 -63
  97. data/cpe-remap.yaml +0 -356
  98. data/features/data/failing_banners_fingerprints.xml +0 -20
  99. data/features/data/matching_banners_fingerprints.xml +0 -23
  100. data/features/data/multiple_banners_fingerprints.xml +0 -32
  101. data/features/data/no_tests.xml +0 -3
  102. data/features/data/sample_banner.txt +0 -2
  103. data/features/data/successful_tests.xml +0 -18
  104. data/features/data/tests_with_failures.xml +0 -20
  105. data/features/data/tests_with_warnings.xml +0 -17
  106. data/features/match.feature +0 -36
  107. data/features/support/aruba.rb +0 -3
  108. data/features/support/env.rb +0 -6
  109. data/features/verify.feature +0 -48
  110. data/identifiers/README.md +0 -70
  111. data/identifiers/fields.txt +0 -105
  112. data/identifiers/hw_device.txt +0 -84
  113. data/identifiers/hw_family.txt +0 -121
  114. data/identifiers/hw_product.txt +0 -461
  115. data/identifiers/os_architecture.txt +0 -10
  116. data/identifiers/os_device.txt +0 -75
  117. data/identifiers/os_family.txt +0 -234
  118. data/identifiers/os_product.txt +0 -350
  119. data/identifiers/service_family.txt +0 -249
  120. data/identifiers/service_product.txt +0 -764
  121. data/identifiers/vendor.txt +0 -847
  122. data/lib/recog/verifier_factory.rb +0 -13
  123. data/misc/convert_mysql_err +0 -61
  124. data/misc/order.xsl +0 -17
  125. data/requirements.txt +0 -2
  126. data/spec/lib/fingerprint_self_test_spec.rb +0 -175
  127. data/tools/dev/hooks/pre-commit +0 -21
  128. data/update_cpes.py +0 -250
@@ -1,20 +0,0 @@
1
- <?xml version="1.0"?>
2
- <fingerprints>
3
- <fingerprint pattern="^foo$">
4
- <description>foo test</description>
5
- <!-- Fail: doesn't match -->
6
- <example>bar</example>
7
- </fingerprint>
8
- <fingerprint pattern="^This matches$">
9
- <!-- Warn: no name -->
10
- <!-- Fail: doesn't match -->
11
- <example>This almost matches</example>
12
- </fingerprint>
13
- <fingerprint pattern="^(\S+) ([\d.]+)$">
14
- <description>bar test</description>
15
- <!-- Fail: expected os.version doesn't match the capture group -->
16
- <example os.version="5.0" >bar 1.0</example>
17
- <param pos="2" name="os.version" />
18
- <param pos="1" name="os.name" value="Bar" />
19
- </fingerprint>
20
- </fingerprints>
@@ -1,17 +0,0 @@
1
- <?xml version="1.0"?>
2
- <fingerprints>
3
- <fingerprint pattern="^-{10} Welcome to Pure-FTPd (.*)-{10}$">
4
- <example pureftpd.config="">---------- Welcome to Pure-FTPd ----------</example>
5
- <description>Pure-FTPd</description>
6
- <param pos="1" name="pureftpd.config"/>
7
- <param pos="0" name="service.family" value="Pure-FTPd"/>
8
- <param pos="0" name="service.product" value="Pure-FTPd"/>
9
- </fingerprint>
10
- <fingerprint pattern="^-{10} Welcome to Pure-FTPd (.*)-{10}$">
11
- <!-- should warn with no examples -->
12
- <description>Pure-FTPd</description>
13
- <param pos="1" name="pureftpd.config"/>
14
- <param pos="0" name="service.family" value="Pure-FTPd"/>
15
- <param pos="0" name="service.product" value="Pure-FTPd"/>
16
- </fingerprint>
17
- </fingerprints>
@@ -1,36 +0,0 @@
1
- Feature: Match
2
- @no-clobber
3
- Scenario: Finds matches
4
- When I run `recog_match matching_banners_fingerprints.xml sample_banner.txt`
5
- Then it should pass with:
6
- """
7
- MATCH: {"matched"=>"Pure-FTPd Config data can be zero or more of: [privsep] [TLS]", "pureftpd.config"=>"[privsep] [TLS] ", "service.family"=>"Pure-FTPd", "service.product"=>"Pure-FTPd", "service.protocol"=>"ftp", "fingerprint_db"=>"matching_banners_fingerprints", "data"=>"---------- Welcome to Pure-FTPd [privsep] [TLS] ----------"}
8
- MATCH: {"matched"=>"SunOS/Solaris", "os.vendor"=>"Sun", "os.family"=>"Solaris", "os.product"=>"Solaris", "os.device"=>"General", "host.name"=>"polaris", "os.version"=>"5.8", "service.protocol"=>"ftp", "fingerprint_db"=>"matching_banners_fingerprints", "data"=>"polaris FTP server (SunOS 5.8) ready."}
9
- """
10
-
11
- @no-clobber
12
- Scenario: Fails at finding matches
13
- When I run `recog_match failing_banners_fingerprints.xml sample_banner.txt`
14
- Then it should pass with:
15
- """
16
- FAIL: ---------- Welcome to Pure-FTPd [privsep] [TLS] ----------
17
- FAIL: polaris FTP server (SunOS 5.8) ready
18
- """
19
-
20
- @no-clobber
21
- Scenario: Finds multiple matches
22
- When I run `recog_match multiple_banners_fingerprints.xml sample_banner.txt --multi-match`
23
- Then it should pass with:
24
- """
25
- MATCHES: {"matched"=>"Generic FTP, Checks for the existence of the word FTP in the line", "service.protocol"=>"", "fingerprint_db"=>"multiple_banners_fingerprints", "data"=>"---------- Welcome to Pure-FTPd [privsep] [TLS] ----------"},{"matched"=>"Pure-FTPd Config data can be zero or more of: [privsep] [TLS]", "pureftpd.config"=>"[privsep] [TLS] ", "service.family"=>"Pure-FTPd", "service.product"=>"Pure-FTPd", "service.protocol"=>"ftp", "fingerprint_db"=>"multiple_banners_fingerprints", "data"=>"---------- Welcome to Pure-FTPd [privsep] [TLS] ----------"}
26
- MATCHES: {"matched"=>"Generic FTP, Checks for the existence of the word FTP in the line", "service.protocol"=>"", "fingerprint_db"=>"multiple_banners_fingerprints", "data"=>"polaris FTP server (SunOS 5.8) ready."},{"matched"=>"SunOS/Solaris", "service.protocol"=>"ftp", "os.vendor"=>"Sun", "os.family"=>"Solaris", "os.product"=>"Solaris", "os.device"=>"General", "host.name"=>"polaris", "os.version"=>"5.8", "fingerprint_db"=>"multiple_banners_fingerprints", "data"=>"polaris FTP server (SunOS 5.8) ready."}
27
- """
28
-
29
- @no-clobber
30
- Scenario: Finds first matches using no-multi-match flag
31
- When I run `recog_match multiple_banners_fingerprints.xml sample_banner.txt --no-multi-match`
32
- Then it should pass with:
33
- """
34
- MATCH: {"matched"=>"Generic FTP, Checks for the existence of the word FTP in the line", "service.protocol"=>"", "fingerprint_db"=>"multiple_banners_fingerprints", "data"=>"---------- Welcome to Pure-FTPd [privsep] [TLS] ----------"}
35
- MATCH: {"matched"=>"Generic FTP, Checks for the existence of the word FTP in the line", "service.protocol"=>"", "fingerprint_db"=>"multiple_banners_fingerprints", "data"=>"polaris FTP server (SunOS 5.8) ready."}
36
- """
@@ -1,3 +0,0 @@
1
- Aruba.configure do |config|
2
- config.working_directory = 'features/data'
3
- end
@@ -1,6 +0,0 @@
1
- require 'aruba/cucumber'
2
-
3
- Before do
4
- @dirs = ["features/data"]
5
- @aruba_timeout_seconds = 30
6
- end
@@ -1,48 +0,0 @@
1
- Feature: Verify
2
- @no-clobber
3
- Scenario: No tests
4
- When I run `recog_verify no_tests.xml`
5
- Then it should pass with exactly:
6
- """
7
- no_tests.xml: SUMMARY: Test completed with 0 successful, 0 warnings, and 0 failures
8
- """
9
-
10
- @no-clobber
11
- Scenario: Successful tests
12
- When I run `recog_verify successful_tests.xml`
13
- Then it should pass with exactly:
14
- """
15
- successful_tests.xml: SUMMARY: Test completed with 4 successful, 0 warnings, and 0 failures
16
- """
17
-
18
- @no-clobber
19
- Scenario: Tests with warnings, warnings enabled
20
- When I run `recog_verify tests_with_warnings.xml`
21
- Then it should fail with:
22
- """
23
- tests_with_warnings.xml: WARN: 'Pure-FTPd' has no test cases
24
- tests_with_warnings.xml: WARN: 'Pure-FTPd' is missing an example that checks for parameter 'pureftpd.config' which is derived from a capture group
25
- tests_with_warnings.xml: SUMMARY: Test completed with 1 successful, 2 warnings, and 0 failures
26
- """
27
- And the exit status should be 2
28
-
29
- @no-clobber
30
- Scenario: Tests with warnings, warnings disabled
31
- When I run `recog_verify --no-warnings tests_with_warnings.xml`
32
- Then it should pass with exactly:
33
- """
34
- tests_with_warnings.xml: SUMMARY: Test completed with 1 successful, 0 warnings, and 0 failures
35
- """
36
-
37
- @no-clobber
38
- Scenario: Tests with failures
39
- When I run `recog_verify tests_with_failures.xml`
40
- Then it should fail with:
41
- """
42
- tests_with_failures.xml: FAIL: 'foo test' failed to match "bar" with (?-mix:^foo$)'
43
- tests_with_failures.xml: FAIL: '' failed to match "This almost matches" with (?-mix:^This matches$)'
44
- tests_with_failures.xml: FAIL: 'bar test's os.name is a non-zero pos but specifies a value of 'Bar'
45
- tests_with_failures.xml: FAIL: 'bar test' failed to find expected capture group os.version '5.0'. Result was 1.0
46
- tests_with_failures.xml: SUMMARY: Test completed with 0 successful, 0 warnings, and 4 failures
47
- """
48
- And the exit status should be 4
@@ -1,70 +0,0 @@
1
- # Recog: Identifiers
2
-
3
- This directory contains lists of standard identifiers for mapping Recog matches.
4
- The goal is define a standard set of constants to represent known software,
5
- hardware, vendors, and categories.
6
-
7
- This is currently incomplete and will be updated as standardization work moves
8
- forward.
9
-
10
- Fingerprints should use these identifiers whenever possible; if a different name
11
- or syntax for a given identifier is preferred, this should be implemented in the
12
- application through a mapping function.
13
-
14
- ## Lists
15
-
16
- ### Fields
17
-
18
- `fields.txt` defines the various fields (`os.vendor`, etc.) used to assert
19
- information about a match.
20
-
21
- ### Vendors
22
-
23
- `vendor.txt` defines known vendor names, covering services, operating systems,
24
- and hardware.
25
-
26
- ### Operating Systems
27
-
28
- `os_architecture.txt` defines known CPU types.
29
-
30
- `os_product.txt` defines known operating system names.
31
-
32
- `os_family.txt` defines known operating system families.
33
-
34
- `os_device.txt` defines known types of devices by function or purpose.
35
-
36
- ### Hardware
37
-
38
- `hw_product.txt` defines known hardware product names.
39
-
40
- `hw_family.txt` defines known hardware product families.
41
-
42
- `hw_device.txt` defines known types of devices by function or purpose (overlaps
43
- with `os_device.txt`).
44
-
45
- ### Services
46
-
47
- `service_product.txt` defines known service product names.
48
-
49
- `service_family.txt` defines known service product families.
50
-
51
- ### Software
52
-
53
- `software_product.txt` defines known software product names.
54
-
55
- `software_family.txt` defines known software product families.
56
-
57
- `software_class.txt` defines known types of software by function or purpose.
58
-
59
- ## Pending Work
60
-
61
- * All existing fingerprints should be correlated against these lists to
62
- identify mismatches and updated accordingly.
63
-
64
- * All net new identifiers from the existing fingerprints should be merged into
65
- these lists.
66
-
67
- * All fingerprint assertions should be enumerated, documented, and standardized
68
- where possible (`host.mac`, etc).
69
-
70
- * Hardware identifiers should be enumerated, consolidated, and standardized.
@@ -1,105 +0,0 @@
1
- agilent.serial
2
- apache.info
3
- apache.variant
4
- apache.variant.version
5
- aptinex.model
6
- chromecast.capabilities
7
- chromecast.generation
8
- cisco.imc_model
9
- cisco.model
10
- cookie
11
- dell.service_tag
12
- digi.serial_number
13
- extron.model
14
- host.domain
15
- host.ip
16
- host.mac
17
- host.mac_eui64
18
- host.mac_local
19
- host.name
20
- host.time
21
- hw.certainty
22
- hw.cpe23
23
- hw.device
24
- hw.family
25
- hw.model
26
- hw.product
27
- hw.serial_number
28
- hw.series
29
- hw.vendor
30
- hw.version
31
- imail.eval
32
- jetty.info
33
- junction.cookie
34
- junction.name
35
- lantronix.serial_number
36
- lenovo.machine_model
37
- lenovo.machine_type
38
- linux.kernel.version
39
- loadbalancer.poolname
40
- mdaemon.unregistered
41
- mercur.os.info
42
- metainfo.version
43
- metainfo.version.version
44
- ms.nttp.version
45
- notes.build.version
46
- ntmail.id
47
- openssh.comment
48
- openssh.cvepatch
49
- os.arch
50
- os.build
51
- os.certainty
52
- os.cpe23
53
- os.device
54
- os.edition
55
- os.family
56
- os.model
57
- os.product
58
- os.rev
59
- os.vendor
60
- os.version
61
- os.version.version
62
- os.version.version.version
63
- postfix.os.info
64
- postoffice.build
65
- postoffice.id
66
- procurve.model
67
- proftpd.server.name
68
- pureftpd.config
69
- python.version
70
- qpopper.version
71
- securetransport.build
72
- sendmail.config.version
73
- sendmail.hpux.phne.version
74
- sendmail.vendor.version
75
- service.certainty
76
- service.component.cpe23
77
- service.component.family
78
- service.component.product
79
- service.component.vendor
80
- service.component.version
81
- service.cpe23
82
- service.device
83
- service.edition
84
- service.family
85
- service.node
86
- service.product
87
- service.protocol
88
- service.vendor
89
- service.version
90
- service.version.version
91
- service.version.version.version
92
- service.version.version.version.version
93
- siemens.model
94
- snmp.fpmib.oid.1
95
- snmp.fpmib.oid.2
96
- system.time
97
- system.time.format
98
- system.time.micros
99
- system.time.millis
100
- tandberg.model
101
- thttpd.mx-patch
102
- tomcat.info
103
- unify.model
104
- wd2go.device_id
105
- zmailer.ident
@@ -1,84 +0,0 @@
1
- ADSL Modem
2
- AV Receiver
3
- Access Control
4
- Alarm Panel
5
- Appliance
6
- Audio Encoder
7
- Broadband Router
8
- Building Automation
9
- Cable Modem
10
- Check Scanner
11
- DOCSIS Cable Modem
12
- DSL Modem
13
- DVR
14
- Data Terminal
15
- Desktop
16
- Device
17
- Device Hub
18
- Device Server
19
- Display Controller
20
- Environment Control
21
- Ethernet Adapter
22
- Firewall
23
- HMI Controller
24
- Handheld Scanner
25
- Hypervisor
26
- IP Camera
27
- IPS
28
- Industrial Control
29
- JTAG Adapter
30
- KVM
31
- Laptop
32
- Light Bulb
33
- Lights Out Management
34
- Media Player
35
- Media Receiver
36
- Media Server
37
- Mobile Phone
38
- Monitoring
39
- Multifunction Device
40
- NAS
41
- Network Appliance
42
- Network Audio
43
- Network Management Device
44
- PLC
45
- Power Device
46
- Power Meter
47
- Power Relay
48
- Powerline
49
- Print Server
50
- Printer
51
- Relay Controller
52
- Router
53
- SD-WAN Appliance
54
- SIP Device
55
- SIP Gateway
56
- Scanner
57
- Security Appliance
58
- Sensor
59
- Smart TV
60
- Storage
61
- Storage Appliance
62
- Support Appliance
63
- Switch
64
- Tablet
65
- Tape Library
66
- Telecom
67
- Test Instrument
68
- Thin Client
69
- UPS
70
- VPN
71
- Video Conference
72
- Video Conferencing
73
- Video Decoder
74
- Video Encoder
75
- VoIP
76
- VoIP Server
77
- VoIP Switch
78
- Voice Appliance
79
- WAP
80
- WLAN Repeater
81
- Web Cam
82
- Whiteboard
83
- Wireless Controller
84
- Wireless Presenter
@@ -1,121 +0,0 @@
1
- AR Series
2
- Adaptive Security Appliance
3
- Aficio
4
- AirPort
5
- Apple TV
6
- Communication Manager
7
- DVR
8
- Data ONTAP
9
- DiskStation
10
- Document Centre
11
- EDR
12
- Eurotherm
13
- Extended Systems ExtendNet
14
- FRITZ!Box
15
- FRITZ!Fon
16
- FRITZ!Powerline
17
- FRITZ!WLAN Repeater
18
- FS
19
- Firewall-1
20
- Forms Printer
21
- FortiGate
22
- FortiVoice
23
- GW25
24
- GXV
25
- GXW
26
- HDX
27
- HandyTone
28
- HomePod
29
- Honeywell
30
- ILOM
31
- IMDVR
32
- ION
33
- JetDirect
34
- LX Series
35
- LaserJet
36
- LinkCom Xpress
37
- MGate
38
- MPEG4 DVR
39
- MT
40
- MX Series
41
- Mac mini
42
- MacBook
43
- MacBook Pro
44
- MegaRAC
45
- MiiNePort
46
- Multifunction
47
- My Book
48
- NE
49
- NPort
50
- NetScaler
51
- NetVanta
52
- Netscaler
53
- Network Audio
54
- Network Security Appliance
55
- Network Video Door Station
56
- OpenScape Desk Phone
57
- Optra
58
- Orbi
59
- POWER System
60
- Phaser
61
- Primergy
62
- Pro Series
63
- RMX
64
- ReadyNAS
65
- RealPresence
66
- RealPresence Group
67
- Router
68
- S500 Range
69
- SIP Device
70
- SIP Gateway
71
- SL2100
72
- Service Access Switch
73
- Service Router
74
- Simatic HMI
75
- Simatic NET
76
- Simatic S7
77
- Simatic Sinumerik
78
- SoundPoint
79
- SoundTouch
80
- SpeedTouch
81
- Speedport
82
- Storage
83
- Sun Fire
84
- Sunny
85
- Switch
86
- System X
87
- TASKalfa
88
- TelePresence
89
- Time Capsule
90
- TippingPoint
91
- Turbo Station
92
- UNIVERGE
93
- UniFi
94
- Unified Security Gateway
95
- VDX
96
- VSX
97
- VVX
98
- Vigor
99
- VoIP
100
- WD2GO
101
- WiMax
102
- Wide Format
103
- Wide Format Printer
104
- WorkCentre
105
- WorkCentre Pro
106
- Xserve
107
- ZXDSL
108
- ZXHN
109
- ZXV
110
- airMAX
111
- iLO
112
- iMac
113
- iPad
114
- iPad Air
115
- iPad Pro
116
- iPad mini
117
- iPhone
118
- iPod
119
- iSTAR Door Controllers
120
- imageClass
121
- imageRunner