recog 2.3.18 → 2.3.22

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 (73) hide show
  1. checksums.yaml +4 -4
  2. data/.github/dependabot.yml +8 -0
  3. data/.github/workflows/ci.yml +26 -0
  4. data/.github/workflows/verify.yml +89 -0
  5. data/CONTRIBUTING.md +6 -0
  6. data/README.md +17 -0
  7. data/bin/recog_standardize +33 -12
  8. data/bin/recog_verify +1 -2
  9. data/cpe-remap.yaml +355 -200
  10. data/features/verify.feature +14 -14
  11. data/identifiers/README.md +24 -10
  12. data/identifiers/fields.txt +105 -0
  13. data/identifiers/hw_device.txt +8 -0
  14. data/identifiers/hw_family.txt +19 -0
  15. data/identifiers/hw_product.txt +122 -0
  16. data/identifiers/os_device.txt +2 -1
  17. data/identifiers/os_family.txt +3 -0
  18. data/identifiers/os_product.txt +46 -8
  19. data/identifiers/service_family.txt +10 -1
  20. data/identifiers/service_product.txt +90 -2
  21. data/identifiers/vendor.txt +104 -0
  22. data/lib/recog/db.rb +2 -1
  23. data/lib/recog/fingerprint.rb +18 -5
  24. data/lib/recog/nizer.rb +1 -82
  25. data/lib/recog/verifier.rb +5 -5
  26. data/lib/recog/verifier_factory.rb +3 -3
  27. data/lib/recog/verify_reporter.rb +14 -4
  28. data/lib/recog/version.rb +1 -1
  29. data/requirements.txt +1 -1
  30. data/spec/lib/fingerprint_self_test_spec.rb +1 -0
  31. data/spec/lib/recog/verify_reporter_spec.rb +69 -0
  32. data/tools/dev/hooks/pre-commit +21 -0
  33. data/update_cpes.py +19 -6
  34. data/xml/apache_modules.xml +60 -0
  35. data/xml/apache_os.xml +38 -38
  36. data/xml/dhcp_vendor_class.xml +206 -0
  37. data/xml/dns_versionbind.xml +11 -1
  38. data/xml/favicons.xml +270 -45
  39. data/xml/ftp_banners.xml +89 -64
  40. data/xml/h323_callresp.xml +99 -99
  41. data/xml/hp_pjl_id.xml +3 -3
  42. data/xml/html_title.xml +1051 -62
  43. data/xml/http_cookies.xml +294 -85
  44. data/xml/http_servers.xml +551 -122
  45. data/xml/http_wwwauth.xml +139 -43
  46. data/xml/imap_banners.xml +8 -8
  47. data/xml/ldap_searchresult.xml +1 -0
  48. data/xml/mdns_device-info_txt.xml +720 -27
  49. data/xml/mysql_banners.xml +3 -2
  50. data/xml/nntp_banners.xml +4 -4
  51. data/xml/ntp_banners.xml +79 -65
  52. data/xml/operating_system.xml +6 -6
  53. data/xml/pop_banners.xml +11 -11
  54. data/xml/rsh_resp.xml +3 -3
  55. data/xml/rtsp_servers.xml +7 -0
  56. data/xml/sip_banners.xml +374 -9
  57. data/xml/sip_user_agents.xml +377 -5
  58. data/xml/smb_native_lm.xml +32 -1
  59. data/xml/smb_native_os.xml +160 -33
  60. data/xml/smtp_banners.xml +168 -129
  61. data/xml/smtp_ehlo.xml +1 -1
  62. data/xml/smtp_expn.xml +1 -0
  63. data/xml/smtp_help.xml +10 -10
  64. data/xml/smtp_noop.xml +2 -2
  65. data/xml/smtp_vrfy.xml +1 -0
  66. data/xml/snmp_sysdescr.xml +508 -214
  67. data/xml/snmp_sysobjid.xml +25 -25
  68. data/xml/ssh_banners.xml +145 -29
  69. data/xml/telnet_banners.xml +240 -61
  70. data/xml/tls_jarm.xml +162 -0
  71. data/xml/x509_issuers.xml +237 -2
  72. data/xml/x509_subjects.xml +369 -49
  73. metadata +10 -3
data/xml/ftp_banners.xml CHANGED
@@ -5,9 +5,9 @@
5
5
  against these patterns to fingerprint FTP servers.
6
6
  -->
7
7
 
8
- <fingerprint pattern="^([^ ]+) Microsoft FTP Service \(Version ([1234]\.\d+)\)\.$">
8
+ <fingerprint pattern="^([^ ]{1,512}) Microsoft FTP Service \(Version ([1234]\.\d+)\)\.$">
9
9
  <description>Microsoft FTP Server on Windows NT</description>
10
- <example>xx Microsoft FTP Service (Version 3.0).</example>
10
+ <example host.name="foo.bar" service.version="3.0">foo.bar Microsoft FTP Service (Version 3.0).</example>
11
11
  <param pos="0" name="service.vendor" value="Microsoft"/>
12
12
  <param pos="0" name="service.product" value="IIS"/>
13
13
  <param pos="0" name="service.family" value="IIS"/>
@@ -20,9 +20,9 @@
20
20
  <param pos="1" name="host.name"/>
21
21
  </fingerprint>
22
22
 
23
- <fingerprint pattern="^([^ ]+) Microsoft FTP Service \(Version 5.0\)\.$">
23
+ <fingerprint pattern="^([^ ]{1,512}) Microsoft FTP Service \(Version 5.0\)\.$">
24
24
  <description>Microsoft FTP Server on Windows 2000</description>
25
- <example>xxx Microsoft FTP Service (Version 5.0).</example>
25
+ <example host.name="foo.bar">foo.bar Microsoft FTP Service (Version 5.0).</example>
26
26
  <param pos="0" name="service.vendor" value="Microsoft"/>
27
27
  <param pos="0" name="service.product" value="IIS"/>
28
28
  <param pos="0" name="service.family" value="IIS"/>
@@ -35,9 +35,9 @@
35
35
  <param pos="1" name="host.name"/>
36
36
  </fingerprint>
37
37
 
38
- <fingerprint pattern="^([^ ]+) Microsoft FTP Service \(Version 5.1\)\.$">
38
+ <fingerprint pattern="^([^ ]{1,512}) Microsoft FTP Service \(Version 5.1\)\.$">
39
39
  <description>Microsoft FTP Server on Windows XP, 2003 or later versions of 2000</description>
40
- <example>xxx Microsoft FTP Service (Version 5.1).</example>
40
+ <example host.name="foo.bar">foo.bar Microsoft FTP Service (Version 5.1).</example>
41
41
  <param pos="0" name="service.vendor" value="Microsoft"/>
42
42
  <param pos="0" name="service.product" value="IIS"/>
43
43
  <param pos="0" name="service.family" value="IIS"/>
@@ -49,9 +49,9 @@
49
49
  <param pos="1" name="host.name"/>
50
50
  </fingerprint>
51
51
 
52
- <fingerprint pattern="^([^ ]+) Microsoft FTP Service$">
52
+ <fingerprint pattern="^([^ ]{1,512}) Microsoft FTP Service$">
53
53
  <description>Microsoft FTP Server on Windows XP, 2003 or later without version</description>
54
- <example>hostname Microsoft FTP Service</example>
54
+ <example host.name="foo.bar">foo.bar Microsoft FTP Service</example>
55
55
  <param pos="0" name="service.vendor" value="Microsoft"/>
56
56
  <param pos="0" name="service.product" value="IIS"/>
57
57
  <param pos="0" name="service.family" value="IIS"/>
@@ -76,7 +76,7 @@
76
76
  <param pos="0" name="os.cpe23" value="cpe:/o:microsoft:windows:-"/>
77
77
  </fingerprint>
78
78
 
79
- <fingerprint pattern="^([^ ]+) +FTP +Server \(Version ([^\(]+)\(PHNE_\d+\) [^\)]+\) ready.?$" flags="REG_ICASE">
79
+ <fingerprint pattern="^([^ ]{1,512}) +FTP +Server \(Version ([^\(]+)\(PHNE_\d+\) [^\)]+\) ready.?$" flags="REG_ICASE">
80
80
  <description>FTP on HPUX with a PHNE (HP Networking patch) installed</description>
81
81
  <example>example.com FTP server (Version 1.1.214.4(PHNE_38458) Mon Feb 15 06:03:12 GMT 2010) ready.</example>
82
82
  <param pos="0" name="service.vendor" value="HP"/>
@@ -89,7 +89,7 @@
89
89
  <param pos="2" name="service.version"/>
90
90
  </fingerprint>
91
91
 
92
- <fingerprint pattern="^([^ ]+) +FTP +Server \(Revision \S+ Version wuftpd-([^\(]+)\(PHNE_\d+\) [^\)]+\) ready.?$" flags="REG_ICASE">
92
+ <fingerprint pattern="^([^ ]{1,512}) +FTP +Server \(Revision \S+ Version wuftpd-([^\(]+)\(PHNE_\d+\) [^\)]+\) ready.?$" flags="REG_ICASE">
93
93
  <description>WU-FTPD on HPUX with a PHNE (HP Networking patch) installed</description>
94
94
  <example>example.com FTP server (Revision 1.1 Version wuftpd-2.6.1(PHNE_38578) Fri Sep 5 12:10:54 GMT 2008) ready.</example>
95
95
  <param pos="0" name="service.vendor" value="Washington University"/>
@@ -102,7 +102,7 @@
102
102
  <param pos="2" name="service.version"/>
103
103
  </fingerprint>
104
104
 
105
- <fingerprint pattern="^(\S+)(?: \S+)? FTP Server \((?:Revision [\d\.]+ )?Version wu(?:ftpd)?-([\d\.]+).*\) ready.?$" flags="REG_ICASE">
105
+ <fingerprint pattern="^(\S{1,512})(?: \S{1,512})? FTP Server \((?:Revision [\d\.]+ )?Version wu(?:ftpd)?-([\d\.]+).*\) ready.?$" flags="REG_ICASE">
106
106
  <description>WU-FTPD on various OS</description>
107
107
  <example host.name="example.com" service.version="2.6.2">example.com FTP server (Version wu-2.6.2(1) Sat Jul 19 16:21:30 UTC 2008) ready.</example>
108
108
  <example host.name="example.com" service.version="2.6.2">example.com 192.168.0.1 FTP server (Version wu-2.6.2(1) Wed Sep 21 11:16:21 MEST 2005) ready.</example>
@@ -114,7 +114,7 @@
114
114
  <param pos="2" name="service.version"/>
115
115
  </fingerprint>
116
116
 
117
- <fingerprint pattern="^(\S+)\s+FTP Server \(Version:\s+Mac OS X Server\s+([\d\.]+).*\) ready\.?" flags="REG_ICASE,REG_MULTILINE">
117
+ <fingerprint pattern="^(\S{1,512})\s{1,8}FTP Server \(Version:\s+Mac OS X Server\s+([\d\.]+).*\) ready\.?" flags="REG_ICASE,REG_MULTILINE">
118
118
  <description>FTPD on Mac OS X Server with a version</description>
119
119
  <example host.name="example.com" os.version="10.3">example.com FTP server (Version: Mac OS X Server 10.3 - +GSSAPI) ready.</example>
120
120
  <example host.name="example.com" os.version="10.3">this is a banner. change it.&#13;
@@ -129,7 +129,7 @@ example.com FTP server (Version: Mac OS X Server 10.3 - +GSSAPI) ready.</exampl
129
129
  <param pos="0" name="os.cpe23" value="cpe:/o:apple:mac_os_x_server:{os.version}"/>
130
130
  </fingerprint>
131
131
 
132
- <fingerprint pattern="^(\S+)\s+FTP Server \(Version:\s+Mac OS X Server\) ready\.?" flags="REG_ICASE,REG_MULTILINE">
132
+ <fingerprint pattern="^(\S{1,512})\s{1,8}FTP Server \(Version:\s+Mac OS X Server\) ready\.?" flags="REG_ICASE,REG_MULTILINE">
133
133
  <description>FTPD on Mac OS X Server without a version</description>
134
134
  <example host.name="example.com">example.com FTP server (Version: Mac OS X Server) ready.</example>
135
135
  <example host.name="example.com">this is a banner. change it.&#13;
@@ -143,7 +143,7 @@ example.com FTP server (Version: Mac OS X Server) ready.</example>
143
143
  <param pos="1" name="host.name"/>
144
144
  </fingerprint>
145
145
 
146
- <fingerprint pattern="^(\S+)\s+FTP Server \(tnftpd (.*)\) ready\.?$" flags="REG_ICASE">
146
+ <fingerprint pattern="^(\S{1,512})\s{1,8}FTP Server \(tnftpd (.*)\) ready\.?$" flags="REG_ICASE">
147
147
  <description>Simple tnftpd banner with a version</description>
148
148
  <example host.name="example.com" service.version="20061217">example.com FTP server (tnftpd 20061217) ready.</example>
149
149
  <param pos="0" name="service.product" value="tnftpd"/>
@@ -151,7 +151,7 @@ example.com FTP server (Version: Mac OS X Server) ready.</example>
151
151
  <param pos="1" name="host.name"/>
152
152
  </fingerprint>
153
153
 
154
- <fingerprint pattern="^(\S+) FTP Server \(SunOS 5.(1[1-9])\) ready\.?$" flags="REG_ICASE">
154
+ <fingerprint pattern="^(\S{1,512}) FTP Server \(SunOS 5.(1[1-9])\) ready\.?$" flags="REG_ICASE">
155
155
  <description>SunOS/Solaris</description>
156
156
  <example host.name="example.com" os.version="11">example.com FTP server (SunOS 5.11) ready.</example>
157
157
  <param pos="0" name="os.vendor" value="Oracle"/>
@@ -162,7 +162,7 @@ example.com FTP server (Version: Mac OS X Server) ready.</example>
162
162
  <param pos="0" name="os.cpe23" value="cpe:/o:oracle:solaris:{os.version}"/>
163
163
  </fingerprint>
164
164
 
165
- <fingerprint pattern="^(\S+) FTP Server \(SunOS 5.([789]|10)\) ready\.?$" flags="REG_ICASE">
165
+ <fingerprint pattern="^(\S{1,512}) FTP Server \(SunOS 5.([789]|10)\) ready\.?$" flags="REG_ICASE">
166
166
  <description>SunOS/Solaris 5.7-5.10</description>
167
167
  <example host.name="example.com" os.version="7">example.com FTP server (SunOS 5.7) ready.</example>
168
168
  <example host.name="example.com" os.version="10">example.com FTP server (SunOS 5.10) ready.</example>
@@ -174,7 +174,7 @@ example.com FTP server (Version: Mac OS X Server) ready.</example>
174
174
  <param pos="0" name="os.cpe23" value="cpe:/o:sun:solaris:{os.version}"/>
175
175
  </fingerprint>
176
176
 
177
- <fingerprint pattern="^(\S+) FTP Server \(SunOS 5.6\) ready\." flags="REG_ICASE">
177
+ <fingerprint pattern="^(\S{1,512}) FTP Server \(SunOS 5.6\) ready\." flags="REG_ICASE">
178
178
  <description>SunOS 5.6 (Solaris 2.6)</description>
179
179
  <example host.name="example.com">example.com FTP Server (SunOS 5.6) ready.</example>
180
180
  <param pos="0" name="os.vendor" value="Sun"/>
@@ -320,7 +320,7 @@ example.com FTP server (Version: Mac OS X Server) ready.</example>
320
320
  <param pos="0" name="service.cpe23" value="cpe:/a:proftpd:proftpd:-"/>
321
321
  </fingerprint>
322
322
 
323
- <fingerprint pattern="^(?:\d{4}\-\d\d\-\d\d \d\d:\d\d:\d\d,\d\d\d )?(\S+) proftpd\[\d+\]: error: no valid servers configured">
323
+ <fingerprint pattern="^(?:\d{4}\-\d\d\-\d\d \d\d:\d\d:\d\d,\d\d\d )?(\S{1,512}) proftpd\[\d+\]: error: no valid servers configured">
324
324
  <description>ProFTPD no valid servers configured</description>
325
325
  <example host.name="ftp.host.com">ftp.host.com proftpd[40312]: error: no valid servers configured\n</example>
326
326
  <example host.name="hostname.com">2016-10-31 12:14:35,524 hostname.com proftpd[26992]: error: no valid servers configured\n</example>
@@ -360,10 +360,11 @@ example.com FTP server (Version: Mac OS X Server) ready.</example>
360
360
  <example service.version="1.0.11">=(&lt;*&gt;)=-.:. (( Welcome to Pure-FTPd 1.0.11 )) .:.-=(&lt;*&gt;)=-</example>
361
361
  <example service.version="1.0.11">=(&lt;*&gt;)=-.:. (( Welcome to Pure-FTPd 1.0.11 )) .:.-=(&lt;*&gt;)=-&#13;
362
362
  more stuff</example>
363
- <param pos="0" name="service.fvendor" value="PureFTPd"/>
363
+ <param pos="0" name="service.vendor" value="PureFTPd"/>
364
364
  <param pos="0" name="service.family" value="Pure-FTPd"/>
365
365
  <param pos="0" name="service.product" value="Pure-FTPd"/>
366
366
  <param pos="1" name="service.version"/>
367
+ <param pos="0" name="service.cpe23" value="cpe:/a:pureftpd:pure-ftpd:{service.version}"/>
367
368
  </fingerprint>
368
369
 
369
370
  <fingerprint pattern="^-{9,10}(?:.*)\s+Pure-FTPd\s+(.*)-{9,10}">
@@ -403,8 +404,6 @@ more text</example>
403
404
  <param pos="0" name="service.cpe23" value="cpe:/a:pureftpd:pure-ftpd:{service.version}"/>
404
405
  </fingerprint>
405
406
 
406
- <!-- CPEs for Serv-U 15.x and above changed to SolarWinds -->
407
-
408
407
  <fingerprint pattern="^Serv-U FTP Server v(15\.\S+) ready\.\.\.$">
409
408
  <description>SolarWinds Serv-U with version </description>
410
409
  <example service.version="15.1.3.25">Serv-U FTP Server v15.1.3.25 ready...</example>
@@ -415,35 +414,38 @@ more text</example>
415
414
  <param pos="0" name="service.cpe23" value="cpe:/a:solarwinds:serv-u_ftp_server:{service.version}"/>
416
415
  </fingerprint>
417
416
 
418
- <fingerprint pattern="^Serv-U FTP[ -]Server v(\d+\.\S+) for WinSock ready\.*$">
417
+ <fingerprint pattern="^Serv-U FTP[ -]Server v(\d+\.\S+) for WinSock ready">
419
418
  <description>Serv-U Serv-U with version on Windows</description>
420
419
  <example service.version="2.5n">Serv-U FTP-Server v2.5n for WinSock ready...</example>
421
420
  <example service.version="6.0">Serv-U FTP Server v6.0 for WinSock ready</example>
422
421
  <param pos="0" name="service.vendor" value="Serv-U"/>
423
- <param pos="0" name="service.product" value="Serv-U"/>
422
+ <param pos="0" name="service.product" value="Serv-U FTP Server"/>
424
423
  <param pos="0" name="service.family" value="Serv-U"/>
425
424
  <param pos="1" name="service.version"/>
426
- <param pos="0" name="service.cpe23" value="cpe:/a:serv-u:serv-u:{service.version}"/>
425
+ <param pos="0" name="service.cpe23" value="cpe:/a:solarwinds:serv-u_ftp_server:{service.version}"/>
427
426
  <param pos="0" name="os.vendor" value="Microsoft"/>
428
427
  <param pos="0" name="os.family" value="Windows"/>
429
428
  <param pos="0" name="os.product" value="Windows"/>
430
429
  <param pos="0" name="os.cpe23" value="cpe:/o:microsoft:windows:-"/>
431
430
  </fingerprint>
432
431
 
433
- <fingerprint pattern="^Serv-U FTP[ -]Server v(\d+\.\S+) ready\.*$">
432
+ <fingerprint pattern="^Serv-U FTP[ -]Server v(\d+\.\S+) ready">
434
433
  <description>Serv-U Serv-U with version </description>
435
434
  <example service.version="7.2">Serv-U FTP Server v7.2 ready...</example>
436
435
  <example service.version="14.0">Serv-U FTP Server v14.0 ready...</example>
437
436
  <param pos="0" name="service.vendor" value="Serv-U"/>
438
- <param pos="0" name="service.product" value="Serv-U"/>
437
+ <param pos="0" name="service.product" value="Serv-U FTP Server"/>
439
438
  <param pos="0" name="service.family" value="Serv-U"/>
440
439
  <param pos="1" name="service.version"/>
441
- <param pos="0" name="service.cpe23" value="cpe:/a:serv-u:serv-u:{service.version}"/>
440
+ <param pos="0" name="service.cpe23" value="cpe:/a:solarwinds:serv-u_ftp_server:{service.version}"/>
442
441
  </fingerprint>
443
442
 
444
443
  <fingerprint pattern="^Welcom to Serv-U FTP Server$">
445
444
  <description>Common FTP banner modification to look like Serv-U -- assert nothing.</description>
446
445
  <example>Welcom to Serv-U FTP Server</example>
446
+ <param pos="0" name="hw.certainty" value="0.0"/>
447
+ <param pos="0" name="os.certainty" value="0.0"/>
448
+ <param pos="0" name="service.certainty" value="0.0"/>
447
449
  </fingerprint>
448
450
 
449
451
  <fingerprint pattern="^zFTPServer v?(\S+), .*ready\.$" flags="REG_ICASE">
@@ -489,7 +491,7 @@ more text</example>
489
491
  <param pos="1" name="service.version"/>
490
492
  </fingerprint>
491
493
 
492
- <fingerprint pattern="^OOPS: .*vsftp.*$">
494
+ <fingerprint pattern="^OOPS: .*vsftp">
493
495
  <description>vsFTPd (Very Secure FTP Daemon) error message</description>
494
496
  <example>OOPS: vsftpd: root is not mounted.</example>
495
497
  <example>OOPS: cannot read user list file:/etc/vsftpd.user_list</example>
@@ -499,7 +501,7 @@ more text</example>
499
501
  <param pos="0" name="service.cpe23" value="cpe:/a:vsftpd_project:vsftpd:-"/>
500
502
  </fingerprint>
501
503
 
502
- <fingerprint pattern="^FileZilla Server(?: version)? (?:v)?(\d\.[\w.]+(?: beta)?).*$">
504
+ <fingerprint pattern="^FileZilla Server(?: version)? (?:v)?(\d\.[\w.]+(?: beta)?)">
503
505
  <description>FileZilla FTP Server</description>
504
506
  <example service.version="0.9.2 beta">FileZilla Server version 0.9.2 beta</example>
505
507
  <example service.version="0.9.13a beta">FileZilla Server version 0.9.13a beta</example>
@@ -516,7 +518,7 @@ more text</example>
516
518
  <param pos="0" name="os.cpe23" value="cpe:/o:microsoft:windows:-"/>
517
519
  </fingerprint>
518
520
 
519
- <fingerprint pattern="^\s*APC FTP server ready\.$">
521
+ <fingerprint pattern="^\s{0,1000}APC FTP server ready\.$">
520
522
  <description>APC device</description>
521
523
  <example>APC FTP server ready.</example>
522
524
  <param pos="0" name="service.vendor" value="APC"/>
@@ -527,7 +529,7 @@ more text</example>
527
529
  <param pos="0" name="hw.device" value="Power Device"/>
528
530
  </fingerprint>
529
531
 
530
- <fingerprint pattern="^(\S+) Network Management Card AOS v(\d+\..+) FTP server ready\.$">
532
+ <fingerprint pattern="^(\S{1,64}) Network Management Card AOS v(\d+\..+) FTP server ready\.$">
531
533
  <description>APC power/cooling device</description>
532
534
  <example service.version="3.3.4">AP7932 Network Management Card AOS v3.3.4 FTP server ready.</example>
533
535
  <example os.version="3.6.1">ACRC103 Network Management Card AOS v3.6.1 FTP server ready.</example>
@@ -544,7 +546,7 @@ more text</example>
544
546
  <param pos="0" name="hw.device" value="Power Device"/>
545
547
  </fingerprint>
546
548
 
547
- <fingerprint pattern="^(\S+) FTP server \(EMC-SNAS: ([^\)]+)\)(?: \S+)?$">
549
+ <fingerprint pattern="^(\S{1,512}) FTP server \(EMC-SNAS: ([^\)]+)\)(?: \S+)?$">
548
550
  <description>EMC Celerra</description>
549
551
  <example service.version="5.6.47.11">foo2 FTP server (EMC-SNAS: 5.6.47.11)</example>
550
552
  <example service.version="5.6.50.203">foo2 FTP server (EMC-SNAS: 5.6.50.203) ready.</example>
@@ -563,7 +565,7 @@ more text</example>
563
565
  <param pos="0" name="hw.cpe23" value="cpe:/h:emc:celerra_network_attached_storage:-"/>
564
566
  </fingerprint>
565
567
 
566
- <fingerprint pattern="^JD FTP Server Ready.*$">
568
+ <fingerprint pattern="^JD FTP Server Ready">
567
569
  <description>HP JetDirect printer</description>
568
570
  <example>JD FTP Server Ready</example>
569
571
  <example>JD FTP Server Ready.</example>
@@ -613,7 +615,7 @@ more text</example>
613
615
  <param pos="0" name="service.product" value="Nepenthes"/>
614
616
  </fingerprint>
615
617
 
616
- <fingerprint pattern="^[^ ]+ IBM FTP CS (V1R\d+) at ([^,]*),.*">
618
+ <fingerprint pattern="^[^ ]{1,512} IBM FTP CS (V1R\d+) at ([^,]*),">
617
619
  <description>IBM z/OS FTP Service</description>
618
620
  <example>SFTPD1 IBM FTP CS V1R4 at x.y.z, 21:02:19 on 2007-12-15.</example>
619
621
  <param pos="0" name="service.vendor" value="IBM"/>
@@ -638,7 +640,7 @@ more text</example>
638
640
  <param pos="0" name="os.device" value="Point of Sale"/>
639
641
  </fingerprint>
640
642
 
641
- <fingerprint pattern="^([^ ]+) NcFTPd Server \(licensed copy\) ready\.$">
643
+ <fingerprint pattern="^([^ ]{1,512}) NcFTPd Server \(licensed copy\) ready\.$">
642
644
  <description>NcFTPd Server
643
645
  http://www.ncftp.com/ncftpd/</description>
644
646
  <example>ftp.example.com NcFTPd Server (licensed copy) ready.</example>
@@ -647,7 +649,7 @@ more text</example>
647
649
  <param pos="1" name="host.name"/>
648
650
  </fingerprint>
649
651
 
650
- <fingerprint pattern="^(\S+) DCS-2100 FTP server ready\.$">
652
+ <fingerprint pattern="^(\S{1,512}) DCS-2100 FTP server ready\.$">
651
653
  <description>D-Link DCS-2100 wireless internet camera</description>
652
654
  <example>hostname DCS-2100 FTP server ready.</example>
653
655
  <param pos="0" name="os.vendor" value="D-Link"/>
@@ -674,7 +676,7 @@ more text</example>
674
676
  <param pos="0" name="os.device" value="Storage"/>
675
677
  </fingerprint>
676
678
 
677
- <fingerprint pattern="(?i)^AXIS (\S+) .* Camera(?:\s+version)?\s+(\S+) .*">
679
+ <fingerprint pattern="(?i)^AXIS (\S+) .* Camera(?:\s+version)?\s+(\S+)">
678
680
  <description>Axis Network Camera</description>
679
681
  <example hw.product="2100" hw.version="2.43">Axis 2100 Network Camera 2.43 Nov 04 2008 ready.</example>
680
682
  <example hw.product="216FD" hw.version="4.47">AXIS 216FD Network Fixed Dome Camera 4.47 (Mar 13 2008) ready.</example>
@@ -691,7 +693,7 @@ more text</example>
691
693
  <param pos="0" name="os.device" value="IP Camera"/>
692
694
  </fingerprint>
693
695
 
694
- <fingerprint pattern="(?i)^AXIS (\S+) (?:(?:Mk II )?Video) (?:Encoder|Encoder Blade|Module|Server|Decoder) (\S+) .*">
696
+ <fingerprint pattern="(?i)^AXIS (\S+) (?:(?:Mk II )?Video) (?:Encoder|Encoder Blade|Module|Server|Decoder) (\S+)">
695
697
  <description>Axis Video encoders/servers</description>
696
698
  <example hw.product="Q7406">AXIS Q7406 Video Encoder Blade 5.01 (Aug 01 2008) ready.</example>
697
699
  <example hw.product="241Q">AXIS 241Q Video Server 4.47.2 (Dec 11 2008) ready.</example>
@@ -707,7 +709,7 @@ more text</example>
707
709
  <param pos="0" name="os.family" value="Linux"/>
708
710
  </fingerprint>
709
711
 
710
- <fingerprint pattern="(?i)^AXIS (\S+) (?:(?:Mk II )?IO Audio) (?:Encoder|Encoder Blade|Module|Server|Decoder) (\S+) .*">
712
+ <fingerprint pattern="(?i)^AXIS (\S+) (?:(?:Mk II )?IO Audio) (?:Encoder|Encoder Blade|Module|Server|Decoder) (\S+)">
711
713
  <description>Axis Audio encoders/servers</description>
712
714
  <example hw.product="P8221" hw.version="5.10.2">AXIS P8221 IO Audio Module 5.10.2 (Nov 07 2011) ready.</example>
713
715
  <param pos="0" name="hw.vendor" value="Axis"/>
@@ -773,7 +775,7 @@ more text</example>
773
775
  <param pos="1" name="hw.product"/>
774
776
  </fingerprint>
775
777
 
776
- <fingerprint pattern="^Xerox WorkCentre ([A-Za-z0-9]+).*$" certainty="1.0">
778
+ <fingerprint pattern="^Xerox WorkCentre ([A-Za-z0-9]+)" certainty="1.0">
777
779
  <description>Xerox WorkCentre</description>
778
780
  <example hw.product="6605DN">Xerox WorkCentre 6605DN</example>
779
781
  <example hw.product="3615">Xerox WorkCentre 3615</example>
@@ -802,7 +804,7 @@ more text</example>
802
804
  <param pos="1" name="hw.product"/>
803
805
  </fingerprint>
804
806
 
805
- <fingerprint pattern="^XEROX (\d+) Wide Format .*$" certainty="1.0">
807
+ <fingerprint pattern="^XEROX (\d+) Wide Format" certainty="1.0">
806
808
  <description>Xerox Wide Format Series of Printers</description>
807
809
  <example>XEROX 6204 Wide Format FTP server ready</example>
808
810
  <param pos="0" name="os.vendor" value="Xerox"/>
@@ -838,7 +840,7 @@ more text</example>
838
840
  <param pos="2" name="hw.product"/>
839
841
  </fingerprint>
840
842
 
841
- <fingerprint pattern="^.*Lexmark (\S+) FTP Server (\S+) ready\.?$" certainty="1.0" flags="REG_ICASE">
843
+ <fingerprint pattern="Lexmark (\S+) FTP Server (\S+) ready\.?$" certainty="1.0" flags="REG_ICASE">
842
844
  <description>Lexmark printer with OS version</description>
843
845
  <example hw.product="T654" os.version="NR.APS.F368">ET0021718 Lexmark T654 FTP Server NR.APS.F368 ready.</example>
844
846
  <param pos="0" name="os.vendor" value="Lexmark"/>
@@ -849,7 +851,7 @@ more text</example>
849
851
  <param pos="1" name="hw.product"/>
850
852
  </fingerprint>
851
853
 
852
- <fingerprint pattern="^.*Lexmark (\S+) FTP Server ready\.?$" certainty="1.0" flags="REG_ICASE">
854
+ <fingerprint pattern="Lexmark (\S+) FTP Server ready\.?$" certainty="1.0" flags="REG_ICASE">
853
855
  <description>Lexmark printer</description>
854
856
  <example hw.product="X500">Lexmark X500 FTP server ready</example>
855
857
  <param pos="0" name="os.vendor" value="Lexmark"/>
@@ -889,7 +891,7 @@ more text</example>
889
891
  <param pos="0" name="os.cpe23" value="cpe:/o:windriver:vxworks:-"/>
890
892
  </fingerprint>
891
893
 
892
- <fingerprint pattern="^[\w\-\.]* FTP server \((?:VxWorks\s?)+([\d\.]+)\) ready.$" flags="REG_ICASE">
894
+ <fingerprint pattern="^[\w\-\.]{0,128} FTP server \((?:VxWorks\s?)+([\d\.]+)\) ready.$" flags="REG_ICASE">
893
895
  <description>VxWorks 6 with version information</description>
894
896
  <example os.version="6.6">NanoDAC FTP server (VxWorks VxWorks 6.6) ready.</example>
895
897
  <example os.version="6.4">BVS-MR-BSC2 FTP server (VxWorks 6.4) ready.</example>
@@ -899,7 +901,7 @@ more text</example>
899
901
  <param pos="0" name="os.cpe23" value="cpe:/o:windriver:vxworks:{os.version}"/>
900
902
  </fingerprint>
901
903
 
902
- <fingerprint pattern="^[\w&lt;&gt;]+\s*Tenor Multipath Switch FTP server \(Version VxWorks([\d\.]+)\) ready\.$" flags="REG_ICASE">
904
+ <fingerprint pattern="^[\w&lt;&gt;]{1,32}\s{1,8}Tenor Multipath Switch FTP server \(Version VxWorks([\d\.]+)\) ready\.$" flags="REG_ICASE">
903
905
  <description>VxWorks on Tenor MultiPath with version information</description>
904
906
  <example os.version="5.4.2">&lt;38785ca0&gt; Tenor Multipath Switch FTP server (Version VxWorks5.4.2) ready.</example>
905
907
  <param pos="0" name="os.vendor" value="Wind River"/>
@@ -1045,7 +1047,7 @@ more text</example>
1045
1047
  <param pos="2" name="os.version"/>
1046
1048
  </fingerprint>
1047
1049
 
1048
- <fingerprint pattern="^ET(\S+) Source Technologies (ST-96\S+) FTP Server (\S+) ready\.?$">
1050
+ <fingerprint pattern="^ET(\S{1,12}) Source Technologies (ST-96\S+) FTP Server (\S+) ready\.?$">
1049
1051
  <description>Source Technologies ST9600 Series Secure Printer</description>
1050
1052
  <example>ET0021B730F70E Source Technologies ST-9620 FTP Server NJ.APS.N254e ready.</example>
1051
1053
  <example>ET0021B7549AF2 Source Technologies ST-9620 FTP Server NR.APS.N447b2 ready.</example>
@@ -1058,7 +1060,7 @@ more text</example>
1058
1060
  <param pos="3" name="os.version"/>
1059
1061
  </fingerprint>
1060
1062
 
1061
- <fingerprint pattern="^ET(\S+) (Pro\d+) Series FTP Server ready\.$" certainty="1.0">
1063
+ <fingerprint pattern="^ET(\S{1,12}) (Pro\d+) Series FTP Server ready\.$" certainty="1.0">
1062
1064
  <description>Lexmark ProXXX Series of Printers</description>
1063
1065
  <example host.mac="0020007E4D2A" hw.product="Pro700">ET0020007E4D2A Pro700 Series FTP Server ready.</example>
1064
1066
  <param pos="0" name="os.vendor" value="Lexmark"/>
@@ -1071,7 +1073,7 @@ more text</example>
1071
1073
  <param pos="2" name="hw.product"/>
1072
1074
  </fingerprint>
1073
1075
 
1074
- <fingerprint pattern="^ET(\S+) Lexmark Forms Printer (\d+) Ethernet FTP Server (\S+) ready\.$" certainty="1.0">
1076
+ <fingerprint pattern="^ET(\S{1,12}) Lexmark Forms Printer (\d+) Ethernet FTP Server (\S+) ready\.$" certainty="1.0">
1075
1077
  <description>Lexmark Forms Printer</description>
1076
1078
  <example os.product="2590">ET0020004F54EE Lexmark Forms Printer 2590 Ethernet FTP Server LCL.CU.P012c ready.</example>
1077
1079
  <param pos="0" name="os.vendor" value="Lexmark"/>
@@ -1086,7 +1088,7 @@ more text</example>
1086
1088
  <param pos="2" name="hw.product"/>
1087
1089
  </fingerprint>
1088
1090
 
1089
- <fingerprint pattern="^ET(\S+) TOSHIBA e-STUDIO500S FTP Server (\S+) ready\.$" certainty="1.0">
1091
+ <fingerprint pattern="^ET(\S{1,12}) TOSHIBA e-STUDIO500S FTP Server (\S+) ready\.$" certainty="1.0">
1090
1092
  <description>Toshiba e-STUDIO Printer with MAC address</description>
1091
1093
  <example os.version="NC2.NPS.N221">ET0004001E9C00 TOSHIBA e-STUDIO500S FTP Server NC2.NPS.N221 ready.</example>
1092
1094
  <example host.mac="00040089BE42">ET00040089BE42 TOSHIBA e-STUDIO500S FTP Server NC2.NPS.N211 ready.</example>
@@ -1100,7 +1102,7 @@ more text</example>
1100
1102
  <param pos="0" name="hw.product" value="e-STUDIO"/>
1101
1103
  </fingerprint>
1102
1104
 
1103
- <fingerprint pattern="^\S+ TOSHIBA e-STUDIO500S FTP Server (\S+) ready\.$" certainty="1.0">
1105
+ <fingerprint pattern="^\S{1,16} TOSHIBA e-STUDIO500S FTP Server (\S+) ready\.$" certainty="1.0">
1104
1106
  <description>Toshiba e-STUDIO Printer</description>
1105
1107
  <example os.version="NC2.NPS.N211">JHBPRN13 TOSHIBA e-STUDIO500S FTP Server NC2.NPS.N211 ready.</example>
1106
1108
  <param pos="0" name="os.vendor" value="Toshiba"/>
@@ -1112,7 +1114,7 @@ more text</example>
1112
1114
  <param pos="0" name="hw.product" value="e-STUDIO"/>
1113
1115
  </fingerprint>
1114
1116
 
1115
- <fingerprint pattern="^.*Lexmark Optra (\S+) FTP Server (\S+) ready\.$" certainty="1.0">
1117
+ <fingerprint pattern="Lexmark Optra (\S+) FTP Server (\S+) ready\.$" certainty="1.0">
1116
1118
  <description>Lexmark Optra Printer</description>
1117
1119
  <example os.product="T612">lex142785470853 Lexmark Optra T612 FTP Server 3.20.30 ready.</example>
1118
1120
  <example os.version="3.20.20">oppr1.s02504.us Lexmark Optra T610 FTP Server 3.20.20 ready.</example>
@@ -1298,7 +1300,7 @@ more text</example>
1298
1300
  <param pos="1" name="hw.product"/>
1299
1301
  </fingerprint>
1300
1302
 
1301
- <fingerprint pattern="^(ET(\S+)) Dell (\S+ Laser Printer) FTP Server">
1303
+ <fingerprint pattern="^(ET(\S{1,32})) Dell (\S+ Laser Printer) FTP Server">
1302
1304
  <description>Dell Laser Printer</description>
1303
1305
  <example host.name="ET0021B71A1111" host.mac="0021B71A1111" hw.product="2350dn Laser Printer">ET0021B71A1111 Dell 2350dn Laser Printer FTP Server NR.APS.N449 ready.</example>
1304
1306
  <param pos="0" name="os.vendor" value="Dell"/>
@@ -1310,11 +1312,14 @@ more text</example>
1310
1312
  <param pos="3" name="hw.product"/>
1311
1313
  </fingerprint>
1312
1314
 
1313
- <fingerprint pattern="^(\S+) FTP server \(Version \S+ \w+ \w+ \d{1,2} \d{1,2}:\d{1,2}:\d{1,2} [A-Z]+ (?:1|2)\d{3}\) ready\.?$">
1315
+ <fingerprint pattern="^(\S{1,512}) FTP server \(Version \S+ \w+ \w+ \d{1,2} \d{1,2}:\d{1,2}:\d{1,2} [A-Z]+ (?:1|2)\d{3}\) ready\.?$">
1314
1316
  <description>Generic/unknown FTP Server found on HP-UX and AIX systems</description>
1315
1317
  <example host.name="host.example.com">host.example.com FTP server (Version 4.1 Sat Sep 7 14:31:53 CDT 2002) ready.</example>
1316
1318
  <example host.name="host.example.com">host.example.com FTP server (Version 5.3 Sat Jan 10 14:01:03 CDT 2012) ready</example>
1317
1319
  <param pos="1" name="host.name"/>
1320
+ <param pos="0" name="hw.certainty" value="0.0"/>
1321
+ <param pos="0" name="os.certainty" value="0.0"/>
1322
+ <param pos="0" name="service.certainty" value="0.0"/>
1318
1323
  </fingerprint>
1319
1324
 
1320
1325
  <fingerprint pattern="^Welcome to the (?:Cisco )?(?:TelePresence) ([a-zA-Z\s]*?) ((?:MSE )?\d+), version (\d+.\d+\(\d+.\d+\)).*?" flags="REG_ICASE">
@@ -1333,7 +1338,7 @@ more text</example>
1333
1338
  <param pos="3" name="os.version"/>
1334
1339
  </fingerprint>
1335
1340
 
1336
- <fingerprint pattern="^(\S+) FTP server \((?:HP|Compaq) Tru64 UNIX Version (\S+)\) ready\.?$">
1341
+ <fingerprint pattern="^(\S{1,512}) FTP server \((?:HP|Compaq) Tru64 UNIX Version (\S+)\) ready\.?$">
1337
1342
  <description>Digital/Compaq/HP Tru64 Unix</description>
1338
1343
  <example host.name="example.com" os.version="5.60">example.com FTP server (Compaq Tru64 UNIX Version 5.60) ready.</example>
1339
1344
  <param pos="0" name="os.vendor" value="HP"/>
@@ -1344,7 +1349,7 @@ more text</example>
1344
1349
  <param pos="0" name="os.cpe23" value="cpe:/o:hp:tru64_unix:{os.version}"/>
1345
1350
  </fingerprint>
1346
1351
 
1347
- <fingerprint pattern="^(\S+) FTP server \(Digital UNIX Version (\S+)\) ready\.?$">
1352
+ <fingerprint pattern="^(\S{1,512}) FTP server \(Digital UNIX Version (\S+)\) ready\.?$">
1348
1353
  <description>Digital/Compaq/HP Tru64 Unix w/o branding</description>
1349
1354
  <example host.name="example.com" os.version="5.60">example.com FTP server (Digital UNIX Version 5.60) ready.</example>
1350
1355
  <param pos="0" name="os.vendor" value="HP"/>
@@ -1354,7 +1359,7 @@ more text</example>
1354
1359
  <param pos="2" name="os.version"/>
1355
1360
  </fingerprint>
1356
1361
 
1357
- <fingerprint pattern="^(\S+) FTP server \(MikroTik ([\d\.]+)\) ready\.?$">
1362
+ <fingerprint pattern="^(\S{1,512}) FTP server \(MikroTik ([\d\.]+)\) ready\.?$">
1358
1363
  <description>MikroTik</description>
1359
1364
  <example host.name="example.com" os.version="6.18">example.com FTP server (MikroTik 6.18) ready</example>
1360
1365
  <param pos="0" name="os.vendor" value="MikroTik"/>
@@ -1364,7 +1369,7 @@ more text</example>
1364
1369
  <param pos="0" name="os.cpe23" value="cpe:/o:mikrotik:routeros:{os.version}"/>
1365
1370
  </fingerprint>
1366
1371
 
1367
- <fingerprint pattern="^.* FTP server \(MikroTik (\d\.[\w\.]+)\) ready\.?$">
1372
+ <fingerprint pattern="^.{0,1000} FTP server \(MikroTik (\d\.[\w\.]+)\) ready\.?$">
1368
1373
  <description>MikroTik with description</description>
1369
1374
  <example os.version="6.43.16">Super Thing_Place- FTP server (MikroTik 6.43.16) ready</example>
1370
1375
  <example os.version="6.43.16beta2">Super Thing_Place- FTP server (MikroTik 6.43.16beta2) ready</example>
@@ -1542,7 +1547,7 @@ more text</example>
1542
1547
  <param pos="0" name="os.cpe23" value="cpe:/o:microsoft:windows:-"/>
1543
1548
  </fingerprint>
1544
1549
 
1545
- <fingerprint pattern="^([\w.-]+) X2 WS_FTP Server ([\d.]{3,6}\s?\(\d+\))$">
1550
+ <fingerprint pattern="^([\w.-]{1,512}) X2 WS_FTP Server ([\d.]{3,6}\s?\(\d+\))$">
1546
1551
  <description>WS_FTP FTP Server on Windows - X2 variant</description>
1547
1552
  <example service.version="7.7(50012467)" host.name="a.host.name.tld">a.host.name.tld X2 WS_FTP Server 7.7(50012467)</example>
1548
1553
  <example service.version="5.0.5 (1989540204)" host.name="a.host.name.tld">a.host.name.tld X2 WS_FTP Server 5.0.5 (1989540204)</example>
@@ -1625,11 +1630,11 @@ more text</example>
1625
1630
 
1626
1631
  <fingerprint pattern="^Sofrel (S5[\w]+) SN ([\d-]+) ready. Time is (\d{2}:\d{2}:\d{2} \d{2}\/\d{2}\/\d{2})\.$">
1627
1632
  <description>Sofrel Remote Terminal Unit</description>
1628
- <example hw.product="S500" host.id="01-499-00427" system.time="00:11:39 01/11/16">Sofrel S500 SN 01-499-00427 ready. Time is 00:11:39 01/11/16.</example>
1633
+ <example hw.product="S500" hw.serial_number="01-499-00427" system.time="00:11:39 01/11/16">Sofrel S500 SN 01-499-00427 ready. Time is 00:11:39 01/11/16.</example>
1629
1634
  <param pos="0" name="hw.vendor" value="Sofrel"/>
1630
1635
  <param pos="0" name="hw.family" value="S500 Range"/>
1631
1636
  <param pos="1" name="hw.product"/>
1632
- <param pos="2" name="host.id"/>
1637
+ <param pos="2" name="hw.serial_number"/>
1633
1638
  <param pos="0" name="system.time.format" value="HH:mm:ss dd/MM/yy"/>
1634
1639
  <param pos="3" name="system.time"/>
1635
1640
  </fingerprint>
@@ -1645,13 +1650,16 @@ more text</example>
1645
1650
  <param pos="2" name="hw.product"/>
1646
1651
  </fingerprint>
1647
1652
 
1648
- <fingerprint pattern="^(\S+) FTP server ready\.?$" flags="REG_ICASE">
1653
+ <fingerprint pattern="^(\S{1,512}) FTP server ready\.?$" flags="REG_ICASE">
1649
1654
  <description>Generic FTP fingerprint with a hostname</description>
1650
1655
  <example host.name="example.com">example.com FTP server ready.</example>
1651
1656
  <param pos="1" name="host.name"/>
1657
+ <param pos="0" name="hw.certainty" value="0.0"/>
1658
+ <param pos="0" name="os.certainty" value="0.0"/>
1659
+ <param pos="0" name="service.certainty" value="0.0"/>
1652
1660
  </fingerprint>
1653
1661
 
1654
- <fingerprint pattern="^(\S+) FTP server \(Version (\d.*)\) ready\.?$" flags="REG_ICASE">
1662
+ <fingerprint pattern="^(\S{1,512}) FTP server \(Version (\d.*)\) ready\.?$" flags="REG_ICASE">
1655
1663
  <description>Generic FTP fingerprint with a hostname and a version for a generic FTP implementation</description>
1656
1664
  <example host.name="example.com" service.version="6.00LS">example.com FTP server (Version 6.00LS) ready.</example>
1657
1665
  <example host.name="example.com" service.version="1.2">example.com FTP server (Version 1.2) ready.</example>
@@ -1667,6 +1675,9 @@ more text</example>
1667
1675
  <example>FTP-Server</example>
1668
1676
  <example>FTP Server</example>
1669
1677
  <example>FTP service ready.</example>
1678
+ <param pos="0" name="hw.certainty" value="0.0"/>
1679
+ <param pos="0" name="os.certainty" value="0.0"/>
1680
+ <param pos="0" name="service.certainty" value="0.0"/>
1670
1681
  </fingerprint>
1671
1682
 
1672
1683
  <fingerprint pattern="^Welcom to ProRat Ftp Server$">
@@ -1676,7 +1687,7 @@ more text</example>
1676
1687
  <param pos="0" name="service.product" value="ProRat"/>
1677
1688
  </fingerprint>
1678
1689
 
1679
- <fingerprint pattern="^(?:(\S+) )?FTP Server \(vftpd ([\d.]+)\) ready\.?$">
1690
+ <fingerprint pattern="^(?:(\S{1,512}) )?FTP Server \(vftpd ([\d.]+)\) ready\.?$">
1680
1691
  <description>Vermillion FTP Daemon</description>
1681
1692
  <example host.name="srv.name" service.version="1.23">srv.name FTP Server (vftpd 1.23) ready.</example>
1682
1693
  <example service.version="1.31">FTP Server (vftpd 1.31) ready.</example>
@@ -1690,7 +1701,7 @@ more text</example>
1690
1701
  <param pos="1" name="host.name"/>
1691
1702
  </fingerprint>
1692
1703
 
1693
- <fingerprint pattern="^(?:(\S+) )?FTP server \(QVT\/Net ([\d.]+)\) ready\.?$">
1704
+ <fingerprint pattern="^(?:(\S{1,512}) )?FTP server \(QVT\/Net ([\d.]+)\) ready\.?$">
1694
1705
  <description>QVT/Net FTP Server</description>
1695
1706
  <example host.name="siren" service.version="5.1">siren FTP server (QVT/Net 5.1) ready.</example>
1696
1707
  <example host.name="qpc-qvtnet" service.version="4.1">qpc-qvtnet FTP server (QVT/Net 4.1) ready.</example>
@@ -1784,4 +1795,18 @@ more text</example>
1784
1795
  <param pos="1" name="host.name"/>
1785
1796
  </fingerprint>
1786
1797
 
1798
+ <fingerprint pattern="^CyberPower Systems FTP Server Ready">
1799
+ <description>CyberPower UPS Device</description>
1800
+ <example>CyberPower Systems FTP Server Ready.</example>
1801
+ <param pos="0" name="hw.vendor" value="CyberPower"/>
1802
+ <param pos="0" name="hw.device" value="Power Device"/>
1803
+ </fingerprint>
1804
+
1805
+ <fingerprint pattern="^Printer's ftp server (?:\d+) Please login with USER and PASS\.$">
1806
+ <description>Weidmüller Printer</description>
1807
+ <example>Printer's ftp server 530 Please login with USER and PASS.</example>
1808
+ <param pos="0" name="hw.vendor" value="Weidmüller"/>
1809
+ <param pos="0" name="hw.device" value="Printer"/>
1810
+ </fingerprint>
1811
+
1787
1812
  </fingerprints>