recog 2.3.21 → 3.0.1

Sign up to get free protection for your applications and to get access to all the features.
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"/>