recog 2.3.21 → 3.0.1

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.
Files changed (120) hide show
  1. checksums.yaml +4 -4
  2. data/LICENSE +1 -1
  3. data/README.md +42 -16
  4. data/Rakefile +2 -9
  5. data/lib/recog/db.rb +2 -1
  6. data/lib/recog/db_manager.rb +1 -1
  7. data/lib/recog/fingerprint.rb +33 -6
  8. data/lib/recog/fingerprint_parse_error.rb +10 -0
  9. data/lib/recog/verifier.rb +9 -9
  10. data/lib/recog/verify_reporter.rb +17 -6
  11. data/lib/recog/version.rb +1 -1
  12. data/{bin → recog/bin}/recog_match +0 -1
  13. data/{xml → recog/xml}/apache_modules.xml +0 -0
  14. data/{xml → recog/xml}/apache_os.xml +98 -56
  15. data/{xml → recog/xml}/architecture.xml +15 -1
  16. data/recog/xml/dhcp_vendor_class.xml +206 -0
  17. data/{xml → recog/xml}/dns_versionbind.xml +16 -13
  18. data/{xml → recog/xml}/favicons.xml +297 -47
  19. data/{xml → recog/xml}/fingerprints.xsd +9 -1
  20. data/{xml → recog/xml}/ftp_banners.xml +160 -156
  21. data/{xml → recog/xml}/h323_callresp.xml +101 -101
  22. data/{xml → recog/xml}/hp_pjl_id.xml +84 -84
  23. data/{xml → recog/xml}/html_title.xml +727 -34
  24. data/{xml → recog/xml}/http_cookies.xml +160 -77
  25. data/{xml → recog/xml}/http_servers.xml +556 -283
  26. data/{xml → recog/xml}/http_wwwauth.xml +190 -75
  27. data/{xml → recog/xml}/imap_banners.xml +5 -5
  28. data/{xml → recog/xml}/ldap_searchresult.xml +0 -0
  29. data/{xml → recog/xml}/mdns_device-info_txt.xml +389 -26
  30. data/{xml → recog/xml}/mdns_workstation_txt.xml +0 -0
  31. data/{xml → recog/xml}/mysql_banners.xml +1 -1
  32. data/{xml → recog/xml}/mysql_error.xml +0 -0
  33. data/{xml → recog/xml}/nntp_banners.xml +11 -8
  34. data/{xml → recog/xml}/ntp_banners.xml +97 -97
  35. data/{xml → recog/xml}/operating_system.xml +95 -80
  36. data/{xml → recog/xml}/pop_banners.xml +23 -23
  37. data/{xml → recog/xml}/rsh_resp.xml +3 -3
  38. data/{xml → recog/xml}/rtsp_servers.xml +0 -0
  39. data/{xml → recog/xml}/sip_banners.xml +43 -5
  40. data/{xml → recog/xml}/sip_user_agents.xml +175 -27
  41. data/{xml → recog/xml}/smb_native_lm.xml +5 -5
  42. data/{xml → recog/xml}/smb_native_os.xml +25 -25
  43. data/{xml → recog/xml}/smtp_banners.xml +147 -146
  44. data/{xml → recog/xml}/smtp_debug.xml +0 -0
  45. data/{xml → recog/xml}/smtp_ehlo.xml +1 -1
  46. data/{xml → recog/xml}/smtp_expn.xml +0 -0
  47. data/{xml → recog/xml}/smtp_help.xml +11 -11
  48. data/{xml → recog/xml}/smtp_mailfrom.xml +0 -0
  49. data/{xml → recog/xml}/smtp_noop.xml +2 -2
  50. data/{xml → recog/xml}/smtp_quit.xml +0 -0
  51. data/{xml → recog/xml}/smtp_rcptto.xml +0 -0
  52. data/{xml → recog/xml}/smtp_rset.xml +0 -0
  53. data/{xml → recog/xml}/smtp_turn.xml +0 -0
  54. data/{xml → recog/xml}/smtp_vrfy.xml +0 -0
  55. data/{xml → recog/xml}/snmp_sysdescr.xml +1570 -1430
  56. data/{xml → recog/xml}/snmp_sysobjid.xml +38 -27
  57. data/{xml → recog/xml}/ssh_banners.xml +16 -10
  58. data/{xml → recog/xml}/telnet_banners.xml +238 -21
  59. data/{xml → recog/xml}/tls_jarm.xml +56 -6
  60. data/{xml → recog/xml}/x11_banners.xml +3 -3
  61. data/{xml → recog/xml}/x509_issuers.xml +49 -1
  62. data/{xml → recog/xml}/x509_subjects.xml +139 -38
  63. data/recog.gemspec +9 -5
  64. data/spec/data/external_example_fingerprint/hp_printer_ex_01.txt +1 -0
  65. data/spec/data/external_example_fingerprint/hp_printer_ex_02.txt +1 -0
  66. data/spec/data/external_example_fingerprint.xml +8 -0
  67. data/spec/data/external_example_illegal_path_fingerprint.xml +7 -0
  68. data/spec/lib/recog/db_spec.rb +84 -61
  69. data/spec/lib/recog/fingerprint_spec.rb +4 -4
  70. data/spec/lib/recog/verify_reporter_spec.rb +73 -4
  71. data/spec/spec_helper.rb +4 -0
  72. metadata +65 -134
  73. data/.github/ISSUE_TEMPLATE/bug_report.md +0 -37
  74. data/.github/ISSUE_TEMPLATE/feature_request.md +0 -17
  75. data/.github/ISSUE_TEMPLATE/fingerprint_request.md +0 -27
  76. data/.github/PULL_REQUEST_TEMPLATE +0 -24
  77. data/.github/SECURITY.md +0 -35
  78. data/.github/workflows/ci.yml +0 -26
  79. data/.gitignore +0 -23
  80. data/.rspec +0 -3
  81. data/.ruby-gemset +0 -1
  82. data/.ruby-version +0 -1
  83. data/.snyk +0 -10
  84. data/.travis.yml +0 -25
  85. data/CONTRIBUTING.md +0 -270
  86. data/bin/recog_cleanup +0 -16
  87. data/bin/recog_export +0 -81
  88. data/bin/recog_standardize +0 -148
  89. data/bin/recog_verify +0 -64
  90. data/cpe-remap.yaml +0 -343
  91. data/features/data/failing_banners_fingerprints.xml +0 -20
  92. data/features/data/matching_banners_fingerprints.xml +0 -23
  93. data/features/data/multiple_banners_fingerprints.xml +0 -32
  94. data/features/data/no_tests.xml +0 -3
  95. data/features/data/sample_banner.txt +0 -2
  96. data/features/data/successful_tests.xml +0 -18
  97. data/features/data/tests_with_failures.xml +0 -20
  98. data/features/data/tests_with_warnings.xml +0 -17
  99. data/features/match.feature +0 -36
  100. data/features/support/aruba.rb +0 -3
  101. data/features/support/env.rb +0 -6
  102. data/features/verify.feature +0 -48
  103. data/identifiers/README.md +0 -70
  104. data/identifiers/fields.txt +0 -104
  105. data/identifiers/hw_device.txt +0 -78
  106. data/identifiers/hw_family.txt +0 -113
  107. data/identifiers/hw_product.txt +0 -410
  108. data/identifiers/os_architecture.txt +0 -10
  109. data/identifiers/os_device.txt +0 -75
  110. data/identifiers/os_family.txt +0 -233
  111. data/identifiers/os_product.txt +0 -340
  112. data/identifiers/service_family.txt +0 -249
  113. data/identifiers/service_product.txt +0 -752
  114. data/identifiers/vendor.txt +0 -798
  115. data/lib/recog/verifier_factory.rb +0 -13
  116. data/misc/convert_mysql_err +0 -61
  117. data/misc/order.xsl +0 -17
  118. data/requirements.txt +0 -2
  119. data/spec/lib/fingerprint_self_test_spec.rb +0 -174
  120. data/update_cpes.py +0 -250
@@ -31,7 +31,7 @@
31
31
  <param pos="1" name="host.domain"/>
32
32
  </fingerprint>
33
33
 
34
- <fingerprint pattern="^Lotus Notes POP3 server version X[^ ]+ ready on .*$">
34
+ <fingerprint pattern="^Lotus Notes POP3 server version X[^ ]+ ready on">
35
35
  <description>IBM Lotus Notes/Domino</description>
36
36
  <example>Lotus Notes POP3 server version X2.0 ready on foo/bar.</example>
37
37
  <param pos="0" name="service.vendor" value="IBM"/>
@@ -40,7 +40,7 @@
40
40
  <param pos="0" name="service.cpe23" value="cpe:/a:ibm:lotus_domino:-"/>
41
41
  </fingerprint>
42
42
 
43
- <fingerprint pattern="^Lotus Notes POP3 server version Release ([^ ]+) ready on .*$">
43
+ <fingerprint pattern="^Lotus Notes POP3 server version Release ([^ ]+) ready on">
44
44
  <description>IBM Lotus Notes/Domino - Release variant</description>
45
45
  <example service.version="8.5.1FP5">Lotus Notes POP3 server version Release 8.5.1FP5 ready on foo/US.</example>
46
46
  <param pos="0" name="service.vendor" value="IBM"/>
@@ -50,9 +50,9 @@
50
50
  <param pos="0" name="service.cpe23" value="cpe:/a:ibm:lotus_domino:{service.version}"/>
51
51
  </fingerprint>
52
52
 
53
- <fingerprint pattern="^Qpopper \(version (\d+\.\d+\.\d+), modified by Sphera Technologies\) at (.+) starting\..*$">
53
+ <fingerprint pattern="^Qpopper \(version (\d+\.\d+\.\d+), modified by Sphera Technologies\) at (.+) starting\.">
54
54
  <description>Qpopper with Sphera mods</description>
55
- <example>Qpopper (version 4.0.3, modified by Sphera Technologies) at domain starting. &lt;xxx@domain&gt;</example>
55
+ <example service.version="4.0.3" host.domain="domain">Qpopper (version 4.0.3, modified by Sphera Technologies) at domain starting. &lt;xxx@domain&gt;</example>
56
56
  <param pos="0" name="service.vendor" value="Sphera"/>
57
57
  <param pos="0" name="service.family" value="Qpopper"/>
58
58
  <param pos="0" name="service.product" value="Qpopper"/>
@@ -60,9 +60,9 @@
60
60
  <param pos="2" name="host.domain"/>
61
61
  </fingerprint>
62
62
 
63
- <fingerprint pattern="^Qpopper \(version (\d+\.\d+\.\d+)-mysql-(.+)\) at (.+) starting\..*$">
63
+ <fingerprint pattern="^Qpopper \(version (\d+\.\d+\.\d+)-mysql-(.+)\) at (.+) starting\.">
64
64
  <description>Qpopper with MySQL auth module</description>
65
- <example>Qpopper (version 4.0.3-mysql-0.13) at domain starting. &lt;xxx@domain&gt;</example>
65
+ <example service.version="4.0.3" service.component.version="0.13" host.domain="domain">Qpopper (version 4.0.3-mysql-0.13) at domain starting. &lt;xxx@domain&gt;</example>
66
66
  <param pos="0" name="service.vendor" value="Qualcomm"/>
67
67
  <param pos="0" name="service.family" value="Qpopper"/>
68
68
  <param pos="0" name="service.product" value="Qpopper"/>
@@ -73,11 +73,11 @@
73
73
  <param pos="3" name="host.domain"/>
74
74
  </fingerprint>
75
75
 
76
- <fingerprint pattern="(?i)^Qpop(?:per)? \(version ([\d\.]+)\) at (.+)(?: starting\.)?.*$">
76
+ <fingerprint pattern="(?i)^Qpop(?:per)? \(version ([\d\.]+)\) at (\S{1,512})(?: starting\.)?">
77
77
  <description>Qpopper missing version info</description>
78
- <example>Qpopper (version 4.0.16) at foo.example.com</example>
79
- <example>QPOP (version 2.53) at domain starting. &lt;xxx@domain&gt;</example>
80
- <example>Qpopper (version 4.0.3) at domain starting. &lt;xxx@domain&gt;</example>
78
+ <example service.version="4.0.16" host.domain="foo.example.com">Qpopper (version 4.0.16) at foo.example.com</example>
79
+ <example service.version="2.53" host.domain="domain">QPOP (version 2.53) at domain starting. &lt;xxx@domain&gt;</example>
80
+ <example service.version="4.0.3" host.domain="domain">Qpopper (version 4.0.3) at domain starting. &lt;xxx@domain&gt;</example>
81
81
  <param pos="0" name="service.vendor" value="Qualcomm"/>
82
82
  <param pos="0" name="service.family" value="Qpopper"/>
83
83
  <param pos="0" name="service.product" value="Qpopper"/>
@@ -85,9 +85,9 @@
85
85
  <param pos="2" name="host.domain"/>
86
86
  </fingerprint>
87
87
 
88
- <fingerprint pattern="^QPOP \(version (.*)\) at (.+) starting\..*$">
88
+ <fingerprint pattern="^QPOP \(version (.*)\) at (.+) starting\.">
89
89
  <description>Qpopper with missing version info</description>
90
- <example>QPOP (version ?) at domain starting. &lt;xxx@domain&gt;</example>
90
+ <example qpopper.version="?" host.domain="domain">QPOP (version ?) at domain starting. &lt;xxx@domain&gt;</example>
91
91
  <param pos="0" name="service.vendor" value="Qualcomm"/>
92
92
  <param pos="0" name="service.family" value="Qpopper"/>
93
93
  <param pos="0" name="service.product" value="Qpopper"/>
@@ -97,7 +97,7 @@
97
97
 
98
98
  <fingerprint pattern="^Microsoft Exchange Server 2003 POP3 server version (\d+\.\d+\.\d+\.\d+) (.+) ready.$">
99
99
  <description>Microsoft Exchange Server 2003</description>
100
- <example>Microsoft Exchange Server 2003 POP3 server version 6.5.6944.0 (host) ready.</example>
100
+ <example service.version="6.5.6944.0" host.name="(host)">Microsoft Exchange Server 2003 POP3 server version 6.5.6944.0 (host) ready.</example>
101
101
  <param pos="0" name="service.vendor" value="Microsoft"/>
102
102
  <param pos="0" name="service.family" value="Exchange Server"/>
103
103
  <param pos="0" name="service.product" value="Exchange 2003 Server"/>
@@ -110,9 +110,9 @@
110
110
  <param pos="0" name="os.cpe23" value="cpe:/o:microsoft:windows:-"/>
111
111
  </fingerprint>
112
112
 
113
- <fingerprint pattern="^Microsoft Exchange 2000 POP3 server version (\d+\.\d+\.\d+\.\d+) (.+) ready.$">
113
+ <fingerprint pattern="^Microsoft Exchange 2000 POP3 server version (\d+\.\d+\.\d+\.\d+) \((\S{1,512})\) ready\.$">
114
114
  <description>Microsoft Exchange Server 2000</description>
115
- <example>Microsoft Exchange 2000 POP3 server version 6.0.6603.0 (host) ready.</example>
115
+ <example service.version="6.0.6603.0" host.name="host">Microsoft Exchange 2000 POP3 server version 6.0.6603.0 (host) ready.</example>
116
116
  <param pos="0" name="service.vendor" value="Microsoft"/>
117
117
  <param pos="0" name="service.family" value="Exchange Server"/>
118
118
  <param pos="0" name="service.product" value="Exchange 2000 Server"/>
@@ -127,7 +127,7 @@
127
127
 
128
128
  <fingerprint pattern="^Microsoft Exchange POP3 server version (\d+\.\d+\.\d+\.\d+) ready$">
129
129
  <description>Microsoft Exchange Server</description>
130
- <example>Microsoft Exchange POP3 server version 5.5.2654.50 ready</example>
130
+ <example service.version="5.5.2654.50">Microsoft Exchange POP3 server version 5.5.2654.50 ready</example>
131
131
  <param pos="0" name="service.vendor" value="Microsoft"/>
132
132
  <param pos="0" name="service.family" value="Exchange Server"/>
133
133
  <param pos="0" name="service.product" value="Exchange Server"/>
@@ -141,7 +141,7 @@
141
141
 
142
142
  <fingerprint pattern="^Microsoft Windows POP3 Service Version 1.0 &lt;.+@(.+)&gt; ready.$">
143
143
  <description>Microsoft POP3 Services on Windows 2003</description>
144
- <example>Microsoft Windows POP3 Service Version 1.0 &lt;xxx@host&gt; ready.</example>
144
+ <example host.name="host">Microsoft Windows POP3 Service Version 1.0 &lt;xxx@host&gt; ready.</example>
145
145
  <param pos="0" name="service.vendor" value="Microsoft"/>
146
146
  <param pos="0" name="service.family" value="E-mail Services"/>
147
147
  <param pos="0" name="service.product" value="E-mail Services"/>
@@ -240,7 +240,7 @@
240
240
 
241
241
  <fingerprint pattern="^(\S{1,512}) Zimbra (\S+) POP3 server ready\.?$">
242
242
  <description>VMware Zimbra POP with version</description>
243
- <example host.name="foo.bar">foo.bar Zimbra 7.0.0_GA_3079 POP3 server ready</example>
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
244
  <param pos="0" name="service.vendor" value="VMware"/>
245
245
  <param pos="0" name="service.product" value="Zimbra"/>
246
246
  <param pos="2" name="service.version"/>
@@ -250,15 +250,15 @@
250
250
 
251
251
  <fingerprint pattern="^(?:S?POP3? server ready |Hello there.? )?&lt;.*@([^&gt;]+)&gt;$">
252
252
  <description>Generic masked POP3 server</description>
253
- <example>POP3 server ready &lt;58c29ae4-7316-429e-8109-060444ab1a28@foo.example.com&gt;</example>
254
- <example>&lt;84427.1298535083@foo.example.com&gt;</example>
253
+ <example host.name="foo.example.com">POP3 server ready &lt;58c29ae4-7316-429e-8109-060444ab1a28@foo.example.com&gt;</example>
254
+ <example host.name="foo.example.com">&lt;84427.1298535083@foo.example.com&gt;</example>
255
255
  <param pos="1" name="host.name"/>
256
256
  </fingerprint>
257
257
 
258
258
  <fingerprint pattern="^ApplePasswordServer ([\d\.]+) password">
259
259
  <description>Apple Open Directory</description>
260
- <example>ApplePasswordServer 10.6.0.0 password server at 10.2.90.228 ready.</example>
261
- <example>ApplePasswordServer 10.5.0.1 password serv</example>
260
+ <example os.version="10.6.0.0">ApplePasswordServer 10.6.0.0 password server at 10.2.90.228 ready.</example>
261
+ <example os.version="10.5.0.1">ApplePasswordServer 10.5.0.1 password serv</example>
262
262
  <param pos="0" name="service.vendor" value="Apple"/>
263
263
  <param pos="0" name="service.product" value="Open Directory"/>
264
264
  <param pos="0" name="os.vendor" value="Apple"/>
@@ -269,7 +269,7 @@
269
269
  <param pos="0" name="os.cpe23" value="cpe:/o:apple:mac_os_x:{os.version}"/>
270
270
  </fingerprint>
271
271
 
272
- <fingerprint pattern="^TCPIP POP server V\d\.\d\S-\S{3}, OpenVMS V(\d\.\d-\d)(?:\s+\S+)?\s+at\s+(\S+), .*$">
272
+ <fingerprint pattern="^TCPIP POP server V\d\.\d\S-\S{3}, OpenVMS V(\d\.\d-\d)(?:\s+\S+)?\s+at\s+(\S+),">
273
273
  <description>TCP/IP Services for OpenVMS POP server</description>
274
274
  <example os.version="7.3-2" host.name="example.com">TCPIP POP server V5.4J-15A, OpenVMS V7.3-2 Alpha at example.com, up since 2015-02-12 08:44:53 20400434.2</example>
275
275
  <param pos="0" name="service.family" value="OpenVMS"/>
@@ -41,7 +41,7 @@
41
41
  <param pos="0" name="os.cpe23" value="cpe:/o:ibm:aix:-"/>
42
42
  </fingerprint>
43
43
 
44
- <fingerprint pattern="^.rlogind: Host name for your address \([\d.]+\) unknown\..*$" flags="REG_DOT_NEWLINE">
44
+ <fingerprint pattern="^.rlogind: Host name for your address \([\d.]+\) unknown\." flags="REG_DOT_NEWLINE">
45
45
  <description>A/UX rlogind</description>
46
46
  <example>xrlogind: Host name for your address (127.0.0.1) unknown.
47
47
  </example>
@@ -49,7 +49,7 @@
49
49
  <param pos="0" name="os.family" value="A/UX"/>
50
50
  </fingerprint>
51
51
 
52
- <fingerprint pattern="^.rexecd: Login incorrect\..*$" flags="REG_DOT_NEWLINE">
52
+ <fingerprint pattern="^.rexecd: Login incorrect\." flags="REG_DOT_NEWLINE">
53
53
  <description>HP-UX rexecd</description>
54
54
  <example>xrexecd: Login incorrect.
55
55
  </example>
@@ -59,7 +59,7 @@
59
59
  <param pos="0" name="os.cpe23" value="cpe:/o:hp:hp-ux:-"/>
60
60
  </fingerprint>
61
61
 
62
- <fingerprint pattern="^.rexecd: [-\d]+.*$" flags="REG_DOT_NEWLINE">
62
+ <fingerprint pattern="^.rexecd: [-\d]+" flags="REG_DOT_NEWLINE">
63
63
  <description>AIX rexecd</description>
64
64
  <example>xrexecd: 0-1 The login is not correct.
65
65
  </example>
File without changes
@@ -184,7 +184,7 @@
184
184
  <description>Cisco/Tandberg TelePresence</description>
185
185
  <example os.version="TC7.0.2.aecf2d9" tandberg.model="519" hw.product="TANDBERG/519">TANDBERG/519 (TC7.0.2.aecf2d9)</example>
186
186
  <example os.version="X12.5.2" tandberg.model="4137" hw.product="TANDBERG/4137">TANDBERG/4137 (X12.5.2 (TEST SW))</example>
187
- <example os.version="X8.2.1" hw.product="TANDBERG/4130">TANDBERG/4130 (X8.2.1)</example>
187
+ <example os.version="X8.2.1" hw.product="TANDBERG/4130" tandberg.model="4130">TANDBERG/4130 (X8.2.1)</example>
188
188
  <example os.version="XC2.2.1-b2bua-1.0" hw.product="TANDBERG/4353" tandberg.model="4353">TANDBERG/4353 (XC2.2.1-b2bua-1.0)</example>
189
189
  <example os.version="TC5.1.4.295090" hw.product="TANDBERG/516" tandberg.model="516">TANDBERG/516 (TC5.1.4.295090)</example>
190
190
  <example os.version="TCNC5.1.4.295090" hw.product="TANDBERG/517" tandberg.model="517">TANDBERG/517 (TCNC5.1.4.295090)</example>
@@ -312,9 +312,9 @@
312
312
 
313
313
  <fingerprint pattern="^Grandstream (UCM6\d\d\d)V(\d\.\d\w) ([\d.]+)$">
314
314
  <description>Grandstream UCM 6xxx series generic</description>
315
- <example hw.product="UCM6102" os.version="1.0.6.10">Grandstream UCM6102V1.5A 1.0.6.10</example>
316
- <example hw.product="UCM6302" hw.version="1.2B">Grandstream UCM6302V1.2B 1.0.3.10</example>
317
- <example hw.product="UCM6510">Grandstream UCM6510V1.4B 1.0.14.23</example>
315
+ <example hw.product="UCM6102" os.version="1.0.6.10" hw.version="1.5A">Grandstream UCM6102V1.5A 1.0.6.10</example>
316
+ <example hw.product="UCM6302" hw.version="1.2B" os.version="1.0.3.10">Grandstream UCM6302V1.2B 1.0.3.10</example>
317
+ <example hw.product="UCM6510" os.version="1.0.14.23" hw.version="1.4B">Grandstream UCM6510V1.4B 1.0.14.23</example>
318
318
  <param pos="0" name="os.vendor" value="Grandstream"/>
319
319
  <param pos="3" name="os.version"/>
320
320
  <param pos="0" name="os.device" value="SIP Gateway"/>
@@ -668,7 +668,7 @@
668
668
  <description>Fortinet FortiVoice</description>
669
669
  <example hw.product="200D">FortiVoice-200D</example>
670
670
  <example hw.product="VM-Azure">FortiVoice-VM-Azure</example>
671
- <example>FortiVoice-1000E</example>
671
+ <example hw.product="1000E">FortiVoice-1000E</example>
672
672
  <param pos="0" name="service.vendor" value="Fortinet"/>
673
673
  <param pos="0" name="service.product" value="FortiVoice"/>
674
674
  <param pos="0" name="service.device" value="SIP Gateway"/>
@@ -689,4 +689,42 @@
689
689
  <param pos="0" name="service.cpe23" value="cpe:/a:freeswitch:freeswitch:{service.version}"/>
690
690
  </fingerprint>
691
691
 
692
+ <fingerprint pattern="^(OpenStage|OpenScape)_(\d+)_(V\d \S+) ">
693
+ <description>Unify OpenStage VoIP Phone 1</description>
694
+ <example hw.family="OpenStage" unify.model="40" os.version="V3 R5.13.0">OpenStage_40_V3 R5.13.0 SIP 190111</example>
695
+ <param pos="0" name="os.vendor" value="Unify"/>
696
+ <param pos="0" name="os.product" value="{hw.family} {unify.model} Firmware"/>
697
+ <param pos="0" name="hw.vendor" value="Unify"/>
698
+ <param pos="0" name="hw.product" value="{hw.family} {unify.model}"/>
699
+ <param pos="0" name="hw.device" value="VoIP"/>
700
+ <param pos="1" name="hw.family"/>
701
+ <param pos="2" name="unify.model"/>
702
+ <param pos="3" name="os.version"/>
703
+ </fingerprint>
704
+
705
+ <fingerprint pattern="^Desk_Phone_IP_(CP\d+[EXT]?)_(V\d \S+) ">
706
+ <description>Unify OpenStage VoIP Phone 2</description>
707
+ <example unify.model="CP200" os.version="V1 R6.14.0">Desk_Phone_IP_CP200_V1 R6.14.0 SIP 190802</example>
708
+ <example unify.model="CP400" os.version="V1 R6.14.0">Desk_Phone_IP_CP400_V1 R6.14.0 SIP 190802</example>
709
+ <example unify.model="CP600" os.version="V1 R6.14.0">Desk_Phone_IP_CP600_V1 R6.14.0 SIP 190802</example>
710
+ <param pos="0" name="os.vendor" value="Unify"/>
711
+ <param pos="0" name="hw.vendor" value="Unify"/>
712
+ <param pos="0" name="hw.family" value="OpenScape Desk Phone"/>
713
+ <param pos="0" name="hw.product" value="{hw.family} {unify.model}"/>
714
+ <param pos="0" name="hw.device" value="VoIP"/>
715
+ <param pos="1" name="unify.model"/>
716
+ <param pos="2" name="os.version"/>
717
+ </fingerprint>
718
+
719
+ <fingerprint pattern="^Eltex (ESR-\d\w{1,4})$">
720
+ <description>Eltex ESR model service gateway</description>
721
+ <example hw.product="ESR-12V">Eltex ESR-12V</example>
722
+ <param pos="0" name="os.vendor" value="Eltex"/>
723
+ <param pos="0" name="os.device" value="Router"/>
724
+ <param pos="0" name="os.product" value="{hw.product} Firmware"/>
725
+ <param pos="0" name="hw.vendor" value="Eltex"/>
726
+ <param pos="1" name="hw.product"/>
727
+ <param pos="0" name="hw.device" value="Router"/>
728
+ </fingerprint>
729
+
692
730
  </fingerprints>
@@ -28,7 +28,7 @@
28
28
 
29
29
  <fingerprint pattern="^Home&amp;Life HUB/([\d.]+)$">
30
30
  <description>Zyxel home routers</description>
31
- <example>Home&amp;Life HUB/1.1.26.00</example>
31
+ <example os.version="1.1.26.00">Home&amp;Life HUB/1.1.26.00</example>
32
32
  <param pos="0" name="os.vendor" value="Zyxel"/>
33
33
  <param pos="1" name="os.version"/>
34
34
  <param pos="0" name="os.device" value="Router"/>
@@ -65,11 +65,11 @@
65
65
  <description>Technicolor TGxxx Router with build info</description>
66
66
  <example hw.product="TG784n" os.version="10.2.1.O">Technicolor TG784n v3 Build 10.2.1.O</example>
67
67
  <example hw.product="TG789vn" os.version="10.5.2.Z.EC">Technicolor TG789vn v3 Build 10.5.2.Z.EC</example>
68
- <example>MediaAccess TG789vac v2 Build 10.5.8.Y.GX CP1916SAQHD</example>
68
+ <example os.version="10.5.8.Y.GX" hw.product="TG789vac">MediaAccess TG789vac v2 Build 10.5.8.Y.GX CP1916SAQHD</example>
69
69
  <example hw.product="TG799vn" os.version="10.5.2.T.JF">Technicolor TG799vn v2 Build 10.5.2.T.JF</example>
70
70
  <example hw.product="TG788vn" os.version="10.5.2.S.GD">MediaAccess TG788vn v2 Build 10.5.2.S.GD</example>
71
71
  <example hw.product="TG799vac" os.version="17.2.0405-1021">MediaAccess TG799vac Build 17.2.0405-1021</example>
72
- <example hw.product="TG389">MediaAccess TG389 Build 10.5.2.T.AQ</example>
72
+ <example hw.product="TG389" os.version="10.5.2.T.AQ">MediaAccess TG389 Build 10.5.2.T.AQ</example>
73
73
  <param pos="0" name="os.vendor" value="Technicolor"/>
74
74
  <param pos="0" name="os.device" value="Router"/>
75
75
  <param pos="2" name="os.version"/>
@@ -122,13 +122,42 @@
122
122
 
123
123
  <fingerprint pattern="^Cisco-SIPGateway/IOS-([\d\.x]+)$">
124
124
  <description>Cisco SIPGateway</description>
125
- <example>Cisco-SIPGateway/IOS-12.x</example>
125
+ <example os.version="12.x">Cisco-SIPGateway/IOS-12.x</example>
126
126
  <param pos="0" name="os.vendor" value="Cisco"/>
127
127
  <param pos="0" name="os.product" value="IOS"/>
128
128
  <param pos="1" name="os.version"/>
129
129
  <param pos="0" name="os.cpe23" value="cpe:/o:cisco:ios:{os.version}"/>
130
130
  </fingerprint>
131
131
 
132
+ <fingerprint pattern="^Cisco-CP(39\d{2})/([\d.]+)$">
133
+ <description>Cisco Unified SIP Phone 3900 Series</description>
134
+ <example cisco.model="3905" hw.product="Unified SIP Phone 3905" os.version="9.4.1">Cisco-CP3905/9.4.1</example>
135
+ <param pos="1" name="cisco.model"/>
136
+ <param pos="0" name="hw.vendor" value="Cisco"/>
137
+ <param pos="0" name="hw.device" value="VoIP"/>
138
+ <param pos="0" name="hw.product" value="Unified SIP Phone {cisco.model}"/>
139
+ <param pos="0" name="os.vendor" value="Cisco"/>
140
+ <param pos="0" name="os.product" value="Unified SIP Phone 3900 Firmware"/>
141
+ <param pos="2" name="os.version"/>
142
+ <param pos="0" name="hw.certainty" value="0.95"/>
143
+ <param pos="0" name="os.certainty" value="0.95"/>
144
+ <param pos="0" name="os.cpe23" value="cpe:/o:cisco:unified_sip_phone_3900_firmware:{os.version}"/>
145
+ </fingerprint>
146
+
147
+ <fingerprint pattern="^Cisco-ATA(\d{3})/([\d.]+)$">
148
+ <description>Cisco Analog Telephone Adapters (ATA)</description>
149
+ <example cisco.model="187" hw.product="ATA 187" os.version="9.2.3">Cisco-ATA187/9.2.3</example>
150
+ <param pos="1" name="cisco.model"/>
151
+ <param pos="0" name="hw.vendor" value="Cisco"/>
152
+ <param pos="0" name="hw.device" value="VoIP"/>
153
+ <param pos="0" name="hw.product" value="ATA {cisco.model}"/>
154
+ <param pos="0" name="os.vendor" value="Cisco"/>
155
+ <param pos="0" name="os.product" value="ATA {cisco.model} Firmware"/>
156
+ <param pos="2" name="os.version"/>
157
+ <param pos="0" name="hw.certainty" value="0.9"/>
158
+ <param pos="0" name="os.certainty" value="0.9"/>
159
+ </fingerprint>
160
+
132
161
  <!-- AVM.DE Devices -->
133
162
 
134
163
  <fingerprint pattern="^FRITZ!OS$">
@@ -142,18 +171,18 @@
142
171
 
143
172
  <fingerprint pattern="^(?:AVM )?(FRITZ!Box .*) +(\d+\.\d+\.\d+)">
144
173
  <description>AVM FritzBox</description>
145
- <example>AVM FRITZ!Box Fon 06.03.13</example>
146
- <example>AVM FRITZ!Box Fon 06.03.65 (Jun 7 2005)</example>
147
- <example>AVM FRITZ!Box Fon 5010 Annex A (ITA) 48.04.46 (Sep 14 2007)</example>
148
- <example>AVM FRITZ!Box Fon 5012 (UI) 25.03.90 (3.01.03 tested by accredited T-Com test lab) (Oct 28 2005)</example>
149
- <example>AVM FRITZ!Box Fon 5113 Annex A 83.04.69 (Dec 2 2008)</example>
150
- <example>AVM FRITZ!Box Fon 5124 56.04.77 (Feb 14 2014)</example>
151
- <example>AVM FRITZ!Box Fon 7170 Annex A.B ML Speedport W701V 58.04.67 (Dec 18 2008)</example>
152
- <example>AVM FRITZ!Box 3272 126.05.50 (Feb 27 2013)</example>
153
- <example>AVM FRITZ!Box 7170 Annex A 58.04.85 (Apr 4 2011)</example>
154
- <example>AVM FRITZ!Box 7312 117.05.23 TAL (Jun 1 2012)</example>
155
- <example>AVM FRITZ!Box WLAN 3270 v3 Edition Italia 125.05.52 (Feb 7 2014)</example>
156
- <example>AVM FRITZ!Box Speedport W701V Annex A 58.04.82 (May 12 2010)</example>
174
+ <example os.product="FRITZ!Box Fon" os.version="06.03.13">AVM FRITZ!Box Fon 06.03.13</example>
175
+ <example os.product="FRITZ!Box Fon" os.version="06.03.65">AVM FRITZ!Box Fon 06.03.65 (Jun 7 2005)</example>
176
+ <example os.product="FRITZ!Box Fon 5010 Annex A (ITA)" os.version="48.04.46">AVM FRITZ!Box Fon 5010 Annex A (ITA) 48.04.46 (Sep 14 2007)</example>
177
+ <example os.product="FRITZ!Box Fon 5012 (UI)" os.version="25.03.90">AVM FRITZ!Box Fon 5012 (UI) 25.03.90 (3.01.03 tested by accredited T-Com test lab) (Oct 28 2005)</example>
178
+ <example os.product="FRITZ!Box Fon 5113 Annex A" os.version="83.04.69">AVM FRITZ!Box Fon 5113 Annex A 83.04.69 (Dec 2 2008)</example>
179
+ <example os.product="FRITZ!Box Fon 5124" os.version="56.04.77">AVM FRITZ!Box Fon 5124 56.04.77 (Feb 14 2014)</example>
180
+ <example os.product="FRITZ!Box Fon 7170 Annex A.B ML Speedport W701V" os.version="58.04.67">AVM FRITZ!Box Fon 7170 Annex A.B ML Speedport W701V 58.04.67 (Dec 18 2008)</example>
181
+ <example os.product="FRITZ!Box 3272" os.version="126.05.50">AVM FRITZ!Box 3272 126.05.50 (Feb 27 2013)</example>
182
+ <example os.product="FRITZ!Box 7170 Annex A" os.version="58.04.85">AVM FRITZ!Box 7170 Annex A 58.04.85 (Apr 4 2011)</example>
183
+ <example os.product="FRITZ!Box 7312" os.version="117.05.23">AVM FRITZ!Box 7312 117.05.23 TAL (Jun 1 2012)</example>
184
+ <example os.product="FRITZ!Box WLAN 3270 v3 Edition Italia" os.version="125.05.52">AVM FRITZ!Box WLAN 3270 v3 Edition Italia 125.05.52 (Feb 7 2014)</example>
185
+ <example os.product="FRITZ!Box Speedport W701V Annex A" os.version="58.04.82">AVM FRITZ!Box Speedport W701V Annex A 58.04.82 (May 12 2010)</example>
157
186
  <param pos="0" name="os.vendor" value="AVM"/>
158
187
  <param pos="0" name="os.family" value="FRITZ!Box"/>
159
188
  <param pos="1" name="os.product"/>
@@ -164,8 +193,8 @@
164
193
 
165
194
  <fingerprint pattern="^(?:AVM )?(FRITZ!Fon .*) +(\d+\.\d+\.\d+)">
166
195
  <description>AVM FritzFon</description>
167
- <example>AVM FRITZ!Fon 7150 (fs) 38.04.56 (Mar 31 2008)</example>
168
- <example>AVM FRITZ!Fon WLAN 7150 Annex A 58.04.84 (Apr 4 2011)</example>
196
+ <example os.product="FRITZ!Fon 7150 (fs)" os.version="38.04.56">AVM FRITZ!Fon 7150 (fs) 38.04.56 (Mar 31 2008)</example>
197
+ <example os.product="FRITZ!Fon WLAN 7150 Annex A" os.version="58.04.84">AVM FRITZ!Fon WLAN 7150 Annex A 58.04.84 (Apr 4 2011)</example>
169
198
  <param pos="0" name="os.vendor" value="AVM"/>
170
199
  <param pos="0" name="os.family" value="FRITZ!Fon"/>
171
200
  <param pos="1" name="os.product"/>
@@ -176,7 +205,7 @@
176
205
 
177
206
  <fingerprint pattern="^(?:AVM )?(Multibox .*) +(\d+\.\d+\.\d+)">
178
207
  <description>AVM Multibox - Generic</description>
179
- <example>AVM Multibox 7390 NGN 84.05.09 (Jan 13 2012)</example>
208
+ <example os.product="Multibox 7390 NGN" os.version="84.05.09" hw.product="Multibox 7390 NGN">AVM Multibox 7390 NGN 84.05.09 (Jan 13 2012)</example>
180
209
  <param pos="0" name="os.vendor" value="AVM"/>
181
210
  <param pos="0" name="os.family" value="Multibox"/>
182
211
  <param pos="1" name="os.product"/>
@@ -240,10 +269,10 @@
240
269
 
241
270
  <fingerprint pattern="^(?:Polycom/[\d\.]+ )?Polycom(SoundPoint|VVX|SoundStation)\S+_(\d+)-UA/([\d\.]+)(?:_(.{12}))?$">
242
271
  <description>Polycom SoundPoint, SountdStation, VVX VoIP phones</description>
243
- <example hw.version="5.8.0.13337" hw.family="VVX" hw.product="VVX 350">PolycomVVX-VVX_350-UA/5.8.0.13337</example>
244
- <example hw.version="4.1.4.7430" hw.family="VVX" hw.product="VVX 400" host.mac="010203040506">PolycomVVX-VVX_400-UA/4.1.4.7430_010203040506</example>
245
- <example hw.version="5.5.0.23866" hw.family="VVX" hw.product="VVX 501">Polycom/5.5.0.23866 PolycomVVX-VVX_501-UA/5.5.0.23866</example>
246
- <example hw.version="4.0.7.2514" hw.family="SoundPoint" hw.product="SoundPoint 670">PolycomSoundPointIP-SPIP_670-UA/4.0.7.2514</example>
272
+ <example hw.version="5.8.0.13337" hw.family="VVX" hw.product="VVX 350" hw.model="350">PolycomVVX-VVX_350-UA/5.8.0.13337</example>
273
+ <example hw.version="4.1.4.7430" hw.family="VVX" hw.product="VVX 400" host.mac="010203040506" hw.model="400">PolycomVVX-VVX_400-UA/4.1.4.7430_010203040506</example>
274
+ <example hw.version="5.5.0.23866" hw.family="VVX" hw.product="VVX 501" hw.model="501">Polycom/5.5.0.23866 PolycomVVX-VVX_501-UA/5.5.0.23866</example>
275
+ <example hw.version="4.0.7.2514" hw.family="SoundPoint" hw.product="SoundPoint 670" hw.model="670">PolycomSoundPointIP-SPIP_670-UA/4.0.7.2514</example>
247
276
  <example hw.version="4.0.8.1608" hw.model="7000" hw.family="SoundStation" hw.product="SoundStation 7000">PolycomSoundStationIP-SSIP_7000-UA/4.0.8.1608</example>
248
277
  <param pos="0" name="hw.vendor" value="Polycom"/>
249
278
  <param pos="0" name="hw.device" value="VoIP"/>
@@ -256,9 +285,10 @@
256
285
 
257
286
  <fingerprint pattern="^(?:Polycom/[\d\.]+ )?Polycom(?:RealPresenceTrio)-Trio_(\S+)-UA/([\d\.]+)(?:_(.{12}))?$">
258
287
  <description>Polycom RealPresence Trio Phones</description>
259
- <example hw.version="5.4.0.12197" hw.product="RealPresence Trio 8800">PolycomRealPresenceTrio-Trio_8800-UA/5.4.0.12197</example>
260
- <example hw.version="5.7.2.3123" hw.product="RealPresence Trio Visual+">PolycomRealPresenceTrio-Trio_Visual+-UA/5.7.2.3123</example>
261
- <example hw.version="5.4.3.2389" hw.product="RealPresence Trio 8800">Polycom/5.4.3.2389 PolycomRealPresenceTrio-Trio_8800-UA/5.4.3.2389</example>
288
+ <example hw.version="5.4.0.12197" hw.product="RealPresence Trio 8800" hw.model="8800">PolycomRealPresenceTrio-Trio_8800-UA/5.4.0.12197</example>
289
+ <example hw.version="5.7.2.3123" hw.product="RealPresence Trio Visual+" hw.model="Visual+">PolycomRealPresenceTrio-Trio_Visual+-UA/5.7.2.3123</example>
290
+ <example hw.version="5.4.3.2389" hw.product="RealPresence Trio 8800" hw.model="8800">Polycom/5.4.3.2389 PolycomRealPresenceTrio-Trio_8800-UA/5.4.3.2389</example>
291
+ <example hw.version="5.4.3.2389" hw.product="RealPresence Trio 8800" hw.model="8800" host.mac="DEADBEEF0000">Polycom/5.4.3.2389 PolycomRealPresenceTrio-Trio_8800-UA/5.4.3.2389_DEADBEEF0000</example>
262
292
  <param pos="0" name="hw.vendor" value="Polycom"/>
263
293
  <param pos="0" name="hw.device" value="VoIP"/>
264
294
  <param pos="0" name="hw.family" value="RealPresence"/>
@@ -303,10 +333,11 @@
303
333
  <param pos="1" name="service.version"/>
304
334
  </fingerprint>
305
335
 
306
- <fingerprint pattern="^ShoreGear/([\d\.]+)\s+\(ShoreTel \d+\)$">
336
+ <fingerprint pattern="^ShoreGear/([\d\.]+)\s+\(ShoreTel [\d\.]+\)$">
307
337
  <description>ShoreTel VoIP Switch</description>
308
338
  <example hw.version="21.90.4128.0">ShoreGear/21.90.4128.0 (ShoreTel 15)</example>
309
339
  <example hw.version="22.11.4900.0">ShoreGear/22.11.4900.0 (ShoreTel 15)</example>
340
+ <example hw.version="19.48.2600.0">ShoreGear/19.48.2600.0 (ShoreTel 14.2)</example>
310
341
  <param pos="0" name="hw.vendor" value="ShoreTel"/>
311
342
  <param pos="0" name="hw.device" value="VoIP Switch"/>
312
343
  <param pos="1" name="hw.version"/>
@@ -564,4 +595,121 @@
564
595
  <param pos="0" name="service.cpe23" value="cpe:/a:freeswitch:freeswitch:{service.version}"/>
565
596
  </fingerprint>
566
597
 
598
+ <fingerprint pattern="^Valcom (VIP-\w+) sw([\d.]+)">
599
+ <description>Valcom SIP device with version</description>
600
+ <example os.version="1.50.28" hw.product="VIP-204">Valcom VIP-204 sw1.50.28</example>
601
+ <param pos="0" name="os.vendor" value="Valcom"/>
602
+ <param pos="0" name="os.product" value="{hw.product} Firmware"/>
603
+ <param pos="2" name="os.version"/>
604
+ <param pos="0" name="os.device" value="SIP Device"/>
605
+ <param pos="0" name="hw.vendor" value="Valcom"/>
606
+ <param pos="1" name="hw.product"/>
607
+ <param pos="0" name="hw.device" value="SIP Device"/>
608
+ </fingerprint>
609
+
610
+ <fingerprint pattern="^DX800A/([\d.]+)$">
611
+ <description>Gigaset SIP Phones</description>
612
+ <example os.version="41.175.00.000.000">DX800A/41.175.00.000.000</example>
613
+ <param pos="0" name="hw.vendor" value="Gigaset"/>
614
+ <param pos="0" name="hw.device" value="VoIP"/>
615
+ <param pos="0" name="hw.product" value="DX800A"/>
616
+ <param pos="0" name="os.vendor" value="Gigaset"/>
617
+ <param pos="0" name="os.product" value="{hw.product} Firmware"/>
618
+ <param pos="1" name="os.version"/>
619
+ </fingerprint>
620
+
621
+ <fingerprint pattern="^(TAU-\d+[A-Z]*(?:\.IP)?)/([\d.]+) SN/(VI[0-9A-Z]+)$">
622
+ <description>Eltex TAU model VoIP gateway - with serial number</description>
623
+ <example hw.product="TAU-8.IP" os.version="2.6.3">TAU-8.IP/2.6.3 SN/VI12345678</example>
624
+ <example os.version="2.0.0.229" hw.serial_number="VI4D012345">TAU-4M.IP/2.0.0.229 SN/VI4D012345</example>
625
+ <example hw.product="TAU-2M.IP" os.version="2.3.1.11" hw.serial_number="VI12345678">TAU-2M.IP/2.3.1.11 SN/VI12345678</example>
626
+ <example hw.product="TAU-1M.IP" os.version="2.0.0.229" hw.serial_number="VI3A012345">TAU-1M.IP/2.0.0.229 SN/VI3A012345</example>
627
+ <param pos="0" name="os.vendor" value="Eltex"/>
628
+ <param pos="0" name="os.product" value="{hw.product} Firmware"/>
629
+ <param pos="2" name="os.version"/>
630
+ <param pos="0" name="os.device" value="VoIP Gateway"/>
631
+ <param pos="0" name="hw.vendor" value="Eltex"/>
632
+ <param pos="1" name="hw.product"/>
633
+ <param pos="3" name="hw.serial_number"/>
634
+ <param pos="0" name="hw.device" value="VoIP Gateway"/>
635
+ </fingerprint>
636
+
637
+ <fingerprint pattern="^(TAU-\d+[A-Z]*(?:\.IP)?)/([\d.]+) SN/(VI[0-9A-Z]+) (?:SHA/[0-9a-f]+ )?sofia-sip/([\d.]+)$">
638
+ <description>Eltex TAU model VoIP gateway - with serial number and sofia version</description>
639
+ <example hw.product="TAU-8.IP" hw.serial_number="VI12345678">TAU-8.IP/2.3.0 SN/VI12345678 sofia-sip/1.12.10</example>
640
+ <example os.version="1.9.1" service.component.version="1.12.10">TAU-8.IP/1.9.1 SN/VI12345678 SHA/7404bd4 sofia-sip/1.12.10</example>
641
+ <example hw.product="TAU-2M.IP" os.version="1.13.3.5" hw.serial_number="VI12345678" service.component.version="1.12.10">TAU-2M.IP/1.13.3.5 SN/VI12345678 sofia-sip/1.12.10</example>
642
+ <example hw.product="TAU-1M.IP" os.version="1.9.3" hw.serial_number="VI3A012345" service.component.version="1.12.10">TAU-1M.IP/1.9.3 SN/VI3A012345 sofia-sip/1.12.10</example>
643
+ <param pos="0" name="service.vendor" value="FreeSWITCH"/>
644
+ <param pos="0" name="service.product" value="FreeSWITCH"/>
645
+ <param pos="0" name="service.device" value="SIP Gateway"/>
646
+ <param pos="0" name="service.cpe23" value="cpe:/a:freeswitch:freeswitch:-"/>
647
+ <param pos="0" name="service.component.vendor" value="FreeSWITCH"/>
648
+ <param pos="0" name="service.component.product" value="sofia-sip"/>
649
+ <param pos="4" name="service.component.version"/>
650
+ <param pos="0" name="os.vendor" value="Eltex"/>
651
+ <param pos="0" name="os.product" value="{hw.product} Firmware"/>
652
+ <param pos="2" name="os.version"/>
653
+ <param pos="0" name="os.device" value="VoIP Gateway"/>
654
+ <param pos="0" name="hw.vendor" value="Eltex"/>
655
+ <param pos="1" name="hw.product"/>
656
+ <param pos="3" name="hw.serial_number"/>
657
+ <param pos="0" name="hw.device" value="VoIP Gateway"/>
658
+ </fingerprint>
659
+
660
+ <fingerprint pattern="^(TAU-\d{1,2}) (?:build |v)([\d.]+) (?:with )?sofia-sip/([\d.]+)$">
661
+ <description>Eltex TAU model VoIP gateway - build variant with sofia version</description>
662
+ <example hw.product="TAU-72" os.version="2.18.0.35">TAU-72 build 2.18.0.35 sofia-sip/1.12.10</example>
663
+ <example service.component.version="1.12.10">TAU-1 v1.2 with sofia-sip/1.12.10</example>
664
+ <param pos="0" name="service.vendor" value="FreeSWITCH"/>
665
+ <param pos="0" name="service.product" value="FreeSWITCH"/>
666
+ <param pos="0" name="service.device" value="SIP Gateway"/>
667
+ <param pos="0" name="service.cpe23" value="cpe:/a:freeswitch:freeswitch:-"/>
668
+ <param pos="0" name="service.component.vendor" value="FreeSWITCH"/>
669
+ <param pos="0" name="service.component.product" value="sofia-sip"/>
670
+ <param pos="3" name="service.component.version"/>
671
+ <param pos="0" name="os.vendor" value="Eltex"/>
672
+ <param pos="0" name="os.product" value="{hw.product} Firmware"/>
673
+ <param pos="2" name="os.version"/>
674
+ <param pos="0" name="os.device" value="VoIP Gateway"/>
675
+ <param pos="0" name="hw.vendor" value="Eltex"/>
676
+ <param pos="1" name="hw.product"/>
677
+ <param pos="0" name="hw.device" value="VoIP Gateway"/>
678
+ </fingerprint>
679
+
680
+ <fingerprint pattern="^(?:Eltex )?(?:smg_pa_sip[ -]){1,2}([\d.]+)$">
681
+ <description>Eltex SMG model VoIP gateway - no model number</description>
682
+ <example os.version="3.9.1.50">Eltex smg_pa_sip smg_pa_sip-3.9.1.50</example>
683
+ <example os.version="3.10.1.22">smg_pa_sip smg_pa_sip-3.10.1.22</example>
684
+ <example os.version="3.18.0.67">smg_pa_sip 3.18.0.67</example>
685
+ <param pos="0" name="os.vendor" value="Eltex"/>
686
+ <param pos="0" name="os.product" value="SMG Firmware"/>
687
+ <param pos="1" name="os.version"/>
688
+ <param pos="0" name="os.device" value="VoIP Gateway"/>
689
+ <param pos="0" name="hw.vendor" value="Eltex"/>
690
+ <param pos="0" name="hw.device" value="VoIP Gateway"/>
691
+ </fingerprint>
692
+
693
+ <fingerprint pattern="^(RG-\d[\w-]+)/([\d.]+) SN/(VI\w+) (?:SHA/[0-9a-f]+ )?sofia-sip/([\d.]+)$">
694
+ <description>Eltex - NTP / NTU model broadband router - with serial number and sofia version</description>
695
+ <example hw.product="RG-5421G-Wac" hw.serial_number="VI12E45678">RG-5421G-Wac/2.4.2.87 SN/VI12E45678 sofia-sip/1.12.10</example>
696
+ <example os.version="1.11.0">RG-1404GF/1.11.0 SN/VI12E45678 sofia-sip/1.12.10</example>
697
+ <example service.component.version="1.12.1">RG-1404GF/1.8.0 SN/VI12E45678 SHA/0270864 sofia-sip/1.12.1</example>
698
+ <param pos="0" name="service.vendor" value="FreeSWITCH"/>
699
+ <param pos="0" name="service.product" value="FreeSWITCH"/>
700
+ <param pos="0" name="service.device" value="SIP Gateway"/>
701
+ <param pos="0" name="service.cpe23" value="cpe:/a:freeswitch:freeswitch:-"/>
702
+ <param pos="0" name="service.component.vendor" value="FreeSWITCH"/>
703
+ <param pos="0" name="service.component.product" value="sofia-sip"/>
704
+ <param pos="4" name="service.component.version"/>
705
+ <param pos="0" name="os.vendor" value="Eltex"/>
706
+ <param pos="0" name="os.product" value="{hw.product} Firmware"/>
707
+ <param pos="2" name="os.version"/>
708
+ <param pos="0" name="os.device" value="Broadband Router"/>
709
+ <param pos="0" name="hw.vendor" value="Eltex"/>
710
+ <param pos="1" name="hw.product"/>
711
+ <param pos="3" name="hw.serial_number"/>
712
+ <param pos="0" name="hw.device" value="Broadband Router"/>
713
+ </fingerprint>
714
+
567
715
  </fingerprints>
@@ -39,12 +39,12 @@
39
39
 
40
40
  <fingerprint pattern="^Samba (\d\.\d+.\d+\w*)">
41
41
  <description>Samba</description>
42
- <example>Samba 3.0.24</example>
42
+ <example service.version="3.0.24">Samba 3.0.24</example>
43
43
  <example service.version="3.0.28a">Samba 3.0.28a</example>
44
- <example>Samba 3.0.32-0.2-2210-SUSE-SL10.3</example>
45
- <example>Samba 3.6.3</example>
46
- <example>Samba 3.6.6</example>
47
- <example>Samba 3.6.9-151.el6_4.1</example>
44
+ <example service.version="3.0.32">Samba 3.0.32-0.2-2210-SUSE-SL10.3</example>
45
+ <example service.version="3.6.3">Samba 3.6.3</example>
46
+ <example service.version="3.6.6">Samba 3.6.6</example>
47
+ <example service.version="3.6.9">Samba 3.6.9-151.el6_4.1</example>
48
48
  <param pos="0" name="service.vendor" value="Samba"/>
49
49
  <param pos="0" name="service.product" value="Samba"/>
50
50
  <param pos="1" name="service.version"/>