recog 2.3.21 → 2.3.22

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. checksums.yaml +4 -4
  2. data/.github/dependabot.yml +8 -0
  3. data/.github/workflows/verify.yml +89 -0
  4. data/CONTRIBUTING.md +6 -0
  5. data/README.md +17 -0
  6. data/bin/recog_standardize +28 -13
  7. data/bin/recog_verify +1 -2
  8. data/cpe-remap.yaml +13 -0
  9. data/features/verify.feature +14 -14
  10. data/identifiers/fields.txt +5 -4
  11. data/identifiers/hw_device.txt +6 -0
  12. data/identifiers/hw_family.txt +8 -0
  13. data/identifiers/hw_product.txt +51 -0
  14. data/identifiers/os_family.txt +1 -0
  15. data/identifiers/os_product.txt +10 -0
  16. data/identifiers/service_product.txt +12 -0
  17. data/identifiers/vendor.txt +49 -0
  18. data/lib/recog/db.rb +2 -1
  19. data/lib/recog/fingerprint.rb +18 -5
  20. data/lib/recog/verifier.rb +5 -5
  21. data/lib/recog/verifier_factory.rb +3 -3
  22. data/lib/recog/verify_reporter.rb +14 -4
  23. data/lib/recog/version.rb +1 -1
  24. data/spec/lib/fingerprint_self_test_spec.rb +1 -0
  25. data/spec/lib/recog/verify_reporter_spec.rb +69 -0
  26. data/tools/dev/hooks/pre-commit +21 -0
  27. data/update_cpes.py +1 -1
  28. data/xml/apache_os.xml +38 -38
  29. data/xml/dhcp_vendor_class.xml +206 -0
  30. data/xml/favicons.xml +148 -42
  31. data/xml/ftp_banners.xml +30 -16
  32. data/xml/h323_callresp.xml +99 -99
  33. data/xml/hp_pjl_id.xml +3 -3
  34. data/xml/html_title.xml +502 -25
  35. data/xml/http_cookies.xml +64 -56
  36. data/xml/http_servers.xml +74 -14
  37. data/xml/http_wwwauth.xml +107 -38
  38. data/xml/imap_banners.xml +3 -3
  39. data/xml/mdns_device-info_txt.xml +389 -26
  40. data/xml/mysql_banners.xml +1 -1
  41. data/xml/nntp_banners.xml +3 -3
  42. data/xml/ntp_banners.xml +64 -64
  43. data/xml/operating_system.xml +3 -3
  44. data/xml/pop_banners.xml +7 -7
  45. data/xml/rsh_resp.xml +3 -3
  46. data/xml/sip_banners.xml +27 -0
  47. data/xml/sip_user_agents.xml +54 -1
  48. data/xml/smtp_banners.xml +15 -15
  49. data/xml/smtp_ehlo.xml +1 -1
  50. data/xml/smtp_help.xml +10 -10
  51. data/xml/smtp_noop.xml +2 -2
  52. data/xml/snmp_sysdescr.xml +325 -200
  53. data/xml/snmp_sysobjid.xml +25 -25
  54. data/xml/ssh_banners.xml +7 -5
  55. data/xml/telnet_banners.xml +155 -20
  56. data/xml/tls_jarm.xml +26 -4
  57. data/xml/x509_issuers.xml +36 -0
  58. data/xml/x509_subjects.xml +136 -35
  59. metadata +7 -3
data/xml/favicons.xml CHANGED
@@ -75,7 +75,7 @@
75
75
  <param pos="0" name="service.cpe23" value="cpe:/a:apache:tomcat:-"/>
76
76
  </fingerprint>
77
77
 
78
- <fingerprint pattern="^(?:b6341dfc213100c61db4fb8775878cec|cf2445dcb53a031c02f9b57e2199bc03)$">
78
+ <fingerprint pattern="^b6341dfc213100c61db4fb8775878cec|cf2445dcb53a031c02f9b57e2199bc03$">
79
79
  <description>Drupal CMS</description>
80
80
  <example>b6341dfc213100c61db4fb8775878cec</example>
81
81
  <example>cf2445dcb53a031c02f9b57e2199bc03</example>
@@ -102,7 +102,7 @@
102
102
  <param pos="0" name="service.certainty" value="0.5"/>
103
103
  </fingerprint>
104
104
 
105
- <fingerprint pattern="^(?:268ee26a1219a611828d5fd4bc4d69c0|5a84c349c00d95c8ebd174ded3b50a86|2b37c7f35285c341ec1f2cf7e40a3c22)$">
105
+ <fingerprint pattern="^268ee26a1219a611828d5fd4bc4d69c0|5a84c349c00d95c8ebd174ded3b50a86|2b37c7f35285c341ec1f2cf7e40a3c22$">
106
106
  <description>Jenkins</description>
107
107
  <example>268ee26a1219a611828d5fd4bc4d69c0</example>
108
108
  <example>5a84c349c00d95c8ebd174ded3b50a86</example>
@@ -113,7 +113,7 @@
113
113
  <param pos="0" name="service.cpe23" value="cpe:/a:jenkins:jenkins:-"/>
114
114
  </fingerprint>
115
115
 
116
- <fingerprint pattern="^(?:6eb4a43cb64c97f76562af703893c8fd|3bd2ec61324ad4d27cb7b0f484cd4289)$">
116
+ <fingerprint pattern="^6eb4a43cb64c97f76562af703893c8fd|3bd2ec61324ad4d27cb7b0f484cd4289$">
117
117
  <description>XAMPP Server</description>
118
118
  <example>6eb4a43cb64c97f76562af703893c8fd</example>
119
119
  <example>3bd2ec61324ad4d27cb7b0f484cd4289</example>
@@ -122,7 +122,7 @@
122
122
  <param pos="0" name="service.certainty" value="0.5"/>
123
123
  </fingerprint>
124
124
 
125
- <fingerprint pattern="^(?:1391664373e72311a656c4a5504682af|88717398db158e3330ce94fc1784e4a7|04d89d5b7a290334f5ce37c7e8b6a349|08aa365c2d0863df2735d386f77c22c2)$">
125
+ <fingerprint pattern="^1391664373e72311a656c4a5504682af|88717398db158e3330ce94fc1784e4a7|04d89d5b7a290334f5ce37c7e8b6a349|08aa365c2d0863df2735d386f77c22c2$">
126
126
  <description>Atlassian Jira</description>
127
127
  <example>1391664373e72311a656c4a5504682af</example>
128
128
  <example>88717398db158e3330ce94fc1784e4a7</example>
@@ -168,7 +168,7 @@
168
168
  <param pos="0" name="service.certainty" value="0.5"/>
169
169
  </fingerprint>
170
170
 
171
- <fingerprint pattern="^(?:e467554976ad3162eec9dfbf83e2c324|b338542efc5676d771c21fe94faf12b3)$">
171
+ <fingerprint pattern="^e467554976ad3162eec9dfbf83e2c324|b338542efc5676d771c21fe94faf12b3$">
172
172
  <description>ownCloud</description>
173
173
  <example>e467554976ad3162eec9dfbf83e2c324</example>
174
174
  <example>b338542efc5676d771c21fe94faf12b3</example>
@@ -343,7 +343,7 @@
343
343
  <param pos="0" name="service.vendor" value="Rundeck"/>
344
344
  <param pos="0" name="service.product" value="Rundeck"/>
345
345
  <param pos="0" name="service.certainty" value="0.5"/>
346
- <param pos="0" name="service.cpe23" value="cpe:/a:rundeck:rundeck:-"/>
346
+ <param pos="0" name="service.cpe23" value="cpe:/a:pagerduty:rundeck:-"/>
347
347
  </fingerprint>
348
348
 
349
349
  <fingerprint pattern="^3ef81fad2a3deaeb19f02c9cf67ed8eb$">
@@ -354,7 +354,7 @@
354
354
  <param pos="0" name="service.certainty" value="0.5"/>
355
355
  </fingerprint>
356
356
 
357
- <fingerprint pattern="^(?:c02e22ca67f83a0fb6f2fd265074910a|68e1a9c89026b0efeddf718a48c282a5)$">
357
+ <fingerprint pattern="^c02e22ca67f83a0fb6f2fd265074910a|68e1a9c89026b0efeddf718a48c282a5$">
358
358
  <description>HashiCorp Vault</description>
359
359
  <example>c02e22ca67f83a0fb6f2fd265074910a</example>
360
360
  <example>68e1a9c89026b0efeddf718a48c282a5</example>
@@ -386,7 +386,7 @@
386
386
  <param pos="0" name="service.cpe23" value="cpe:/a:apple:cups:1.x"/>
387
387
  </fingerprint>
388
388
 
389
- <fingerprint pattern="^(?:448fa67ece2a35d57e8d19808d350e9b|0c9183bd23ed47288c733499fce4498c|c4302a71aae96e158c3057c66184abbd)$">
389
+ <fingerprint pattern="^448fa67ece2a35d57e8d19808d350e9b|0c9183bd23ed47288c733499fce4498c|c4302a71aae96e158c3057c66184abbd$">
390
390
  <description>Apple CUPS 2.x</description>
391
391
  <example>448fa67ece2a35d57e8d19808d350e9b</example>
392
392
  <example>0c9183bd23ed47288c733499fce4498c</example>
@@ -416,7 +416,7 @@
416
416
  <param pos="0" name="service.certainty" value="0.5"/>
417
417
  </fingerprint>
418
418
 
419
- <fingerprint pattern="^(?:4f21edb50ae95a99bbd4aa0a956a179e|1531801cb9e3047e72034ed34da9d104)$">
419
+ <fingerprint pattern="^4f21edb50ae95a99bbd4aa0a956a179e|1531801cb9e3047e72034ed34da9d104$">
420
420
  <description>Apache Airflow</description>
421
421
  <example>4f21edb50ae95a99bbd4aa0a956a179e</example>
422
422
  <example>1531801cb9e3047e72034ed34da9d104</example>
@@ -434,7 +434,7 @@
434
434
  <param pos="0" name="service.certainty" value="0.5"/>
435
435
  </fingerprint>
436
436
 
437
- <fingerprint pattern="^(?:9b67ee27ad29bd721c0c1f5e5a1a5211|801164802554cf799c6fc3851f93e0e1)$">
437
+ <fingerprint pattern="^9b67ee27ad29bd721c0c1f5e5a1a5211|801164802554cf799c6fc3851f93e0e1$">
438
438
  <description>Gerrit Code Review</description>
439
439
  <example>9b67ee27ad29bd721c0c1f5e5a1a5211</example>
440
440
  <example>801164802554cf799c6fc3851f93e0e1</example>
@@ -443,7 +443,7 @@
443
443
  <param pos="0" name="service.certainty" value="0.5"/>
444
444
  </fingerprint>
445
445
 
446
- <fingerprint pattern="^(?:9e312675a79186e08436bcc2cf314608|ed9dc05a5dde54b22d2edb16d9b68ab0)$">
446
+ <fingerprint pattern="^9e312675a79186e08436bcc2cf314608|ed9dc05a5dde54b22d2edb16d9b68ab0$">
447
447
  <description>Apache Druid</description>
448
448
  <example>9e312675a79186e08436bcc2cf314608</example>
449
449
  <example>ed9dc05a5dde54b22d2edb16d9b68ab0</example>
@@ -453,7 +453,7 @@
453
453
  <param pos="0" name="service.cpe23" value="cpe:/a:apache:druid:-"/>
454
454
  </fingerprint>
455
455
 
456
- <fingerprint pattern="^(?:ec60d8d2f3b0ded27c5767189882685c|5856edf7bcbea0817312d9e535e5eb2a|f4f3cb900258441d5dbc9105b7ab9b44|c6acedaff906029fc5455d9ec52c7f42)$">
456
+ <fingerprint pattern="^ec60d8d2f3b0ded27c5767189882685c|5856edf7bcbea0817312d9e535e5eb2a|f4f3cb900258441d5dbc9105b7ab9b44|c6acedaff906029fc5455d9ec52c7f42$">
457
457
  <description>VMware Horizon</description>
458
458
  <example>ec60d8d2f3b0ded27c5767189882685c</example>
459
459
  <example>5856edf7bcbea0817312d9e535e5eb2a</example>
@@ -486,9 +486,10 @@
486
486
  <param pos="0" name="os.cpe23" value="cpe:/o:dd-wrt:dd-wrt:-"/>
487
487
  </fingerprint>
488
488
 
489
- <fingerprint pattern="^bad2c1f96cd66e70b4aa119e7270cc62$">
489
+ <fingerprint pattern="^bad2c1f96cd66e70b4aa119e7270cc62|966e60f8eb85b7ea43a7b0095f3e2336$">
490
490
  <description>Atlassian Confluence</description>
491
491
  <example>bad2c1f96cd66e70b4aa119e7270cc62</example>
492
+ <example>966e60f8eb85b7ea43a7b0095f3e2336</example>
492
493
  <param pos="0" name="service.vendor" value="Atlassian"/>
493
494
  <param pos="0" name="service.product" value="Confluence"/>
494
495
  <param pos="0" name="service.certainty" value="0.5"/>
@@ -530,7 +531,7 @@
530
531
  <param pos="0" name="service.cpe23" value="cpe:/a:cpanel:cpanel:-"/>
531
532
  </fingerprint>
532
533
 
533
- <fingerprint pattern="^(?:765835f9b71c7f8405f5776d2a6ce49b|e6942b8d321aee26b514ef5513583d52)$">
534
+ <fingerprint pattern="^765835f9b71c7f8405f5776d2a6ce49b|e6942b8d321aee26b514ef5513583d52$">
534
535
  <description>Spiceworks</description>
535
536
  <example>765835f9b71c7f8405f5776d2a6ce49b</example>
536
537
  <example>e6942b8d321aee26b514ef5513583d52</example>
@@ -539,7 +540,7 @@
539
540
  <param pos="0" name="service.certainty" value="0.5"/>
540
541
  </fingerprint>
541
542
 
542
- <fingerprint pattern="^(?:07ba76de1eb6c4550bfbf627a21cd6f8|9cc719577e8de0abd0d76f43a40c2956|5f09cded07bb864fd9b3d2dd72b5418e)$">
543
+ <fingerprint pattern="^07ba76de1eb6c4550bfbf627a21cd6f8|9cc719577e8de0abd0d76f43a40c2956|5f09cded07bb864fd9b3d2dd72b5418e$">
543
544
  <description>Twonky Server</description>
544
545
  <example>07ba76de1eb6c4550bfbf627a21cd6f8</example>
545
546
  <example>9cc719577e8de0abd0d76f43a40c2956</example>
@@ -618,7 +619,7 @@
618
619
  <param pos="0" name="service.certainty" value="0.5"/>
619
620
  </fingerprint>
620
621
 
621
- <fingerprint pattern="^(?:f7e3d97f404e71d302b3239eef48d5f2|bfac77149bf662238eb92d9b65c88a2a|85c754581e1d4b628be5b7712c042224)$">
622
+ <fingerprint pattern="^f7e3d97f404e71d302b3239eef48d5f2|bfac77149bf662238eb92d9b65c88a2a|85c754581e1d4b628be5b7712c042224$">
622
623
  <description>GitLab</description>
623
624
  <example>f7e3d97f404e71d302b3239eef48d5f2</example>
624
625
  <example>bfac77149bf662238eb92d9b65c88a2a</example>
@@ -653,7 +654,7 @@
653
654
  <param pos="0" name="service.certainty" value="0.5"/>
654
655
  </fingerprint>
655
656
 
656
- <fingerprint pattern="^(?:e43ad9b75957c46a5975ded0f85a95b4|2145225dd4406c274c317f8d80ccf584)$">
657
+ <fingerprint pattern="^e43ad9b75957c46a5975ded0f85a95b4|2145225dd4406c274c317f8d80ccf584$">
657
658
  <description>Elastic Kibana</description>
658
659
  <example>e43ad9b75957c46a5975ded0f85a95b4</example>
659
660
  <example>2145225dd4406c274c317f8d80ccf584</example>
@@ -663,7 +664,7 @@
663
664
  <param pos="0" name="service.cpe23" value="cpe:/a:elastic:kibana:-"/>
664
665
  </fingerprint>
665
666
 
666
- <fingerprint pattern="^(?:ef07026465d7b449a9759132486d1e3b|bcc4933f81eff43e5d9bcc5b2828aa70|b204c198a410e5ee28346c4a2110535e|c00da11c81f9b887eed4123daee89909)$">
667
+ <fingerprint pattern="^ef07026465d7b449a9759132486d1e3b|bcc4933f81eff43e5d9bcc5b2828aa70|b204c198a410e5ee28346c4a2110535e|c00da11c81f9b887eed4123daee89909$">
667
668
  <description>Grafana</description>
668
669
  <example>ef07026465d7b449a9759132486d1e3b</example>
669
670
  <example>bcc4933f81eff43e5d9bcc5b2828aa70</example>
@@ -732,7 +733,7 @@
732
733
  <param pos="0" name="service.cpe23" value="cpe:/a:redhat:wildfly:-"/>
733
734
  </fingerprint>
734
735
 
735
- <fingerprint pattern="^(?:05664fb0c7afcd6436179437e31f3aa6|f45f040baaf5200eb82a54296e6040cd)$">
736
+ <fingerprint pattern="^05664fb0c7afcd6436179437e31f3aa6|f45f040baaf5200eb82a54296e6040cd$">
736
737
  <description>Apache ActiveMQ</description>
737
738
  <example>05664fb0c7afcd6436179437e31f3aa6</example>
738
739
  <example>f45f040baaf5200eb82a54296e6040cd</example>
@@ -743,7 +744,7 @@
743
744
  <param pos="0" name="service.cpe23" value="cpe:/a:apache:activemq:-"/>
744
745
  </fingerprint>
745
746
 
746
- <fingerprint pattern="^(?:8bbf74c036031fd834342ca75e9603d8|09353a60731f33fea28b3379407e20a2)$">
747
+ <fingerprint pattern="^8bbf74c036031fd834342ca75e9603d8|09353a60731f33fea28b3379407e20a2$">
747
748
  <description>OpenStack Director</description>
748
749
  <example>8bbf74c036031fd834342ca75e9603d8</example>
749
750
  <example>09353a60731f33fea28b3379407e20a2</example>
@@ -768,7 +769,7 @@
768
769
  <param pos="0" name="service.certainty" value="0.5"/>
769
770
  </fingerprint>
770
771
 
771
- <fingerprint pattern="^(?:97c6417ed01bdc0ae3ef32ae4894fd03|e2f298e9811cd34a08bf5bb69e2d1d6a)$">
772
+ <fingerprint pattern="^97c6417ed01bdc0ae3ef32ae4894fd03|e2f298e9811cd34a08bf5bb69e2d1d6a$">
772
773
  <description>Jupyter Notebook</description>
773
774
  <example>97c6417ed01bdc0ae3ef32ae4894fd03</example>
774
775
  <example>e2f298e9811cd34a08bf5bb69e2d1d6a</example>
@@ -786,7 +787,7 @@
786
787
  <param pos="0" name="service.certainty" value="0.5"/>
787
788
  </fingerprint>
788
789
 
789
- <fingerprint pattern="^(?:0000eeec59841e6e63dd9f90424cac75|34f1c18ed89e1b514473434351edc181|b4d64bf2e42da188164d2a43cc71b5fb)$">
790
+ <fingerprint pattern="^0000eeec59841e6e63dd9f90424cac75|34f1c18ed89e1b514473434351edc181|b4d64bf2e42da188164d2a43cc71b5fb$">
790
791
  <description>Tenable Nessus</description>
791
792
  <example>0000eeec59841e6e63dd9f90424cac75</example>
792
793
  <example>34f1c18ed89e1b514473434351edc181</example>
@@ -805,7 +806,7 @@
805
806
  <param pos="0" name="service.certainty" value="0.5"/>
806
807
  </fingerprint>
807
808
 
808
- <fingerprint pattern="^(?:78ee71862e89db1b1870197b40d026e5|799f70b71314a7508326d1d2f68f7519)$">
809
+ <fingerprint pattern="^78ee71862e89db1b1870197b40d026e5|799f70b71314a7508326d1d2f68f7519$">
809
810
  <description>Red Hat JBoss AS</description>
810
811
  <example>78ee71862e89db1b1870197b40d026e5</example>
811
812
  <example>799f70b71314a7508326d1d2f68f7519</example>
@@ -832,7 +833,7 @@
832
833
  <param pos="0" name="service.cpe23" value="cpe:/a:redhat:jboss_enterprise_application_platform:-"/>
833
834
  </fingerprint>
834
835
 
835
- <fingerprint pattern="^(?:b4e4785d5852c563b9ae47cbb7af06fe|fa0d535bff80ca916d7d7a782a6b8dc0)$">
836
+ <fingerprint pattern="^b4e4785d5852c563b9ae47cbb7af06fe|fa0d535bff80ca916d7d7a782a6b8dc0$">
836
837
  <description>SonarQube</description>
837
838
  <example>b4e4785d5852c563b9ae47cbb7af06fe</example>
838
839
  <example>fa0d535bff80ca916d7d7a782a6b8dc0</example>
@@ -976,7 +977,7 @@
976
977
  <param pos="0" name="hw.certainty" value="0.5"/>
977
978
  </fingerprint>
978
979
 
979
- <fingerprint pattern="^(?:afbc222b5f04fce3ec3e381d87ebfc55|7a7cf293daa5b528bd49941630684c00)$">
980
+ <fingerprint pattern="^afbc222b5f04fce3ec3e381d87ebfc55|7a7cf293daa5b528bd49941630684c00$">
980
981
  <description>Seagate Storage</description>
981
982
  <example>afbc222b5f04fce3ec3e381d87ebfc55</example>
982
983
  <example>7a7cf293daa5b528bd49941630684c00</example>
@@ -1032,7 +1033,7 @@
1032
1033
  <param pos="0" name="hw.cpe23" value="cpe:/h:ui:edgeswitch:-"/>
1033
1034
  </fingerprint>
1034
1035
 
1035
- <fingerprint pattern="^(?:7da8813873190b6e3d7d8957d798bd1e|31ccf4e22ba33dbec54cc357a43a36d3)$">
1036
+ <fingerprint pattern="^7da8813873190b6e3d7d8957d798bd1e|31ccf4e22ba33dbec54cc357a43a36d3$">
1036
1037
  <description>OpenMediaVault</description>
1037
1038
  <example>7da8813873190b6e3d7d8957d798bd1e</example>
1038
1039
  <example>31ccf4e22ba33dbec54cc357a43a36d3</example>
@@ -1200,7 +1201,7 @@
1200
1201
  <param pos="0" name="hw.cpe23" value="cpe:/h:cisco:adaptive_security_appliance:-"/>
1201
1202
  </fingerprint>
1202
1203
 
1203
- <fingerprint pattern="^(?:af13b379bdb4ae7a5e68d9aa4419b2e4|cd844ad9671131f5464458a2ef58b7bc|c32e2dc4d7caedd5cefc9d44cc4f62ec)$">
1204
+ <fingerprint pattern="^af13b379bdb4ae7a5e68d9aa4419b2e4|cd844ad9671131f5464458a2ef58b7bc|c32e2dc4d7caedd5cefc9d44cc4f62ec$">
1204
1205
  <description>Cisco APIC</description>
1205
1206
  <example>af13b379bdb4ae7a5e68d9aa4419b2e4</example>
1206
1207
  <example>cd844ad9671131f5464458a2ef58b7bc</example>
@@ -1277,7 +1278,7 @@
1277
1278
  <param pos="0" name="hw.certainty" value="0.5"/>
1278
1279
  </fingerprint>
1279
1280
 
1280
- <fingerprint pattern="^(?:c60ea375c39d1ab273c4d1bee717287a|9052ab290483b0bd75c05b857c182bba)$">
1281
+ <fingerprint pattern="^c60ea375c39d1ab273c4d1bee717287a|9052ab290483b0bd75c05b857c182bba$">
1281
1282
  <description>Synology DSM</description>
1282
1283
  <example>c60ea375c39d1ab273c4d1bee717287a</example>
1283
1284
  <example>9052ab290483b0bd75c05b857c182bba</example>
@@ -1312,7 +1313,7 @@
1312
1313
  <param pos="0" name="hw.vendor" value="APC"/>
1313
1314
  </fingerprint>
1314
1315
 
1315
- <fingerprint pattern="^(?:ddc75b0899dbf4f7b15290a77fbeb8ff|7f027d6d3eb672117ba63f246bc10f62|4aef220ab05308e3a3e8e4bec5984b2b)$">
1316
+ <fingerprint pattern="^ddc75b0899dbf4f7b15290a77fbeb8ff|7f027d6d3eb672117ba63f246bc10f62|4aef220ab05308e3a3e8e4bec5984b2b$">
1316
1317
  <description>RabbitMQ</description>
1317
1318
  <example>ddc75b0899dbf4f7b15290a77fbeb8ff</example>
1318
1319
  <example>7f027d6d3eb672117ba63f246bc10f62</example>
@@ -1322,7 +1323,7 @@
1322
1323
  <param pos="0" name="service.certainty" value="0.5"/>
1323
1324
  </fingerprint>
1324
1325
 
1325
- <fingerprint pattern="^(?:5567e9ce23e5549e0fcd7195f3882816|57f187c7a868faeac558007a8eb6cb2e)$">
1326
+ <fingerprint pattern="^5567e9ce23e5549e0fcd7195f3882816|57f187c7a868faeac558007a8eb6cb2e$">
1326
1327
  <description>pfSense Firewall</description>
1327
1328
  <example>5567e9ce23e5549e0fcd7195f3882816</example>
1328
1329
  <example>57f187c7a868faeac558007a8eb6cb2e</example>
@@ -1344,7 +1345,7 @@
1344
1345
  <param pos="0" name="hw.certainty" value="0.5"/>
1345
1346
  </fingerprint>
1346
1347
 
1347
- <fingerprint pattern="^(?:3d79fa32f03540637418f85d19c3ed60|76c6e492cb8cc73a2a50d62176f205c9)$">
1348
+ <fingerprint pattern="^3d79fa32f03540637418f85d19c3ed60|76c6e492cb8cc73a2a50d62176f205c9$">
1348
1349
  <description>HP Printer</description>
1349
1350
  <example>3d79fa32f03540637418f85d19c3ed60</example>
1350
1351
  <example>76c6e492cb8cc73a2a50d62176f205c9</example>
@@ -1401,7 +1402,7 @@
1401
1402
  <param pos="0" name="service.cpe23" value="cpe:/a:citrix:netscaler:-"/>
1402
1403
  </fingerprint>
1403
1404
 
1404
- <fingerprint pattern="^(?:953e0d0190e50d247f4ece5620569ef1|52794c5e8a69a8b03ba891e24c39da65)$">
1405
+ <fingerprint pattern="^953e0d0190e50d247f4ece5620569ef1|52794c5e8a69a8b03ba891e24c39da65$">
1405
1406
  <description>Citrix NetScaler SDX Gateway</description>
1406
1407
  <example>953e0d0190e50d247f4ece5620569ef1</example>
1407
1408
  <example>52794c5e8a69a8b03ba891e24c39da65</example>
@@ -1418,7 +1419,7 @@
1418
1419
  <param pos="0" name="service.cpe23" value="cpe:/a:citrix:netscaler:-"/>
1419
1420
  </fingerprint>
1420
1421
 
1421
- <fingerprint pattern="^(?:35c390dade9419b4d6e9b83a8fc361c7|3a7de0a4ee1ee78de3f06bfce823dc44)$">
1422
+ <fingerprint pattern="^35c390dade9419b4d6e9b83a8fc361c7|3a7de0a4ee1ee78de3f06bfce823dc44$">
1422
1423
  <description>Crestron Video Conferencing</description>
1423
1424
  <example>35c390dade9419b4d6e9b83a8fc361c7</example>
1424
1425
  <example>3a7de0a4ee1ee78de3f06bfce823dc44</example>
@@ -1431,7 +1432,7 @@
1431
1432
  <param pos="0" name="os.certainty" value="0.5"/>
1432
1433
  </fingerprint>
1433
1434
 
1434
- <fingerprint pattern="^(?:89b932fcc47cf4ca3faadb0cfdef89cf|efca7d9aeaad122133c65cdf628ac574)$">
1435
+ <fingerprint pattern="^89b932fcc47cf4ca3faadb0cfdef89cf|efca7d9aeaad122133c65cdf628ac574$">
1435
1436
  <description>Hikvision DVR</description>
1436
1437
  <example>89b932fcc47cf4ca3faadb0cfdef89cf</example>
1437
1438
  <example>efca7d9aeaad122133c65cdf628ac574</example>
@@ -1539,7 +1540,7 @@
1539
1540
  <param pos="0" name="hw.certainty" value="0.5"/>
1540
1541
  </fingerprint>
1541
1542
 
1542
- <fingerprint pattern="^(?:9c845f917bb1720d80df603f26878d42|9baf402c0fccb225c134eb9bdf9678c7|5e760a3842c5c2a0278545c2ad5d88b0|bf5c71bad91e3bb1fb0029ff1bf6ea06)$">
1543
+ <fingerprint pattern="^9c845f917bb1720d80df603f26878d42|9baf402c0fccb225c134eb9bdf9678c7|5e760a3842c5c2a0278545c2ad5d88b0|bf5c71bad91e3bb1fb0029ff1bf6ea06$">
1543
1544
  <description>Mersive SolsticePod</description>
1544
1545
  <example>9c845f917bb1720d80df603f26878d42</example>
1545
1546
  <example>9baf402c0fccb225c134eb9bdf9678c7</example>
@@ -1551,7 +1552,7 @@
1551
1552
  <param pos="0" name="hw.certainty" value="0.5"/>
1552
1553
  </fingerprint>
1553
1554
 
1554
- <fingerprint pattern="^(?:6dcab71e60f0242907940f0fcda69ea5|255b6fcbcb463e11ed763b2b892a2965)$">
1555
+ <fingerprint pattern="^6dcab71e60f0242907940f0fcda69ea5|255b6fcbcb463e11ed763b2b892a2965$">
1555
1556
  <description>Ubiquiti WAP (Vague)</description>
1556
1557
  <example>6dcab71e60f0242907940f0fcda69ea5</example>
1557
1558
  <example>255b6fcbcb463e11ed763b2b892a2965</example>
@@ -1560,7 +1561,7 @@
1560
1561
  <param pos="0" name="hw.certainty" value="0.25"/>
1561
1562
  </fingerprint>
1562
1563
 
1563
- <fingerprint pattern="^(?:f98bced327f13a45ad681829905db891)$">
1564
+ <fingerprint pattern="^f98bced327f13a45ad681829905db891$">
1564
1565
  <description>Ubiquiti EdgeOS Router/Switch</description>
1565
1566
  <example>f98bced327f13a45ad681829905db891</example>
1566
1567
  <param pos="0" name="os.vendor" value="Ubiquiti"/>
@@ -1588,7 +1589,7 @@
1588
1589
  <param pos="0" name="os.cpe23" value="cpe:/o:hp:integrated_lights-out_3_firmware:-"/>
1589
1590
  </fingerprint>
1590
1591
 
1591
- <fingerprint pattern="^(?:ad93b3973782b03ea62a43bd6602ba8b|d521487f45fa7657450edfd6c16e4a63)$">
1592
+ <fingerprint pattern="^ad93b3973782b03ea62a43bd6602ba8b|d521487f45fa7657450edfd6c16e4a63$">
1592
1593
  <description>HP Integrated Lights-Out</description>
1593
1594
  <example>ad93b3973782b03ea62a43bd6602ba8b</example>
1594
1595
  <example>d521487f45fa7657450edfd6c16e4a63</example>
@@ -1613,7 +1614,7 @@
1613
1614
  <param pos="0" name="hw.product" value="GigaVUE"/>
1614
1615
  </fingerprint>
1615
1616
 
1616
- <fingerprint pattern="^(?:04d9541338e525258daf47cc844d59f3|486373b021971d0a95af04c811799e21)$">
1617
+ <fingerprint pattern="^04d9541338e525258daf47cc844d59f3|486373b021971d0a95af04c811799e21$">
1617
1618
  <description>F5 BIG-IP Load Balancer</description>
1618
1619
  <example>04d9541338e525258daf47cc844d59f3</example>
1619
1620
  <example>486373b021971d0a95af04c811799e21</example>
@@ -1637,7 +1638,7 @@
1637
1638
  <param pos="0" name="hw.certainty" value="0.5"/>
1638
1639
  </fingerprint>
1639
1640
 
1640
- <fingerprint pattern="^(?:df56ab6e924269e77945a0299716e679|faeab99d83cdd05b875382a690bc60f3)$">
1641
+ <fingerprint pattern="^df56ab6e924269e77945a0299716e679|faeab99d83cdd05b875382a690bc60f3$">
1641
1642
  <description>S2 Access Control Appliances</description>
1642
1643
  <example>df56ab6e924269e77945a0299716e679</example>
1643
1644
  <example>faeab99d83cdd05b875382a690bc60f3</example>
@@ -1709,7 +1710,7 @@
1709
1710
  <param pos="0" name="hw.certainty" value="0.5"/>
1710
1711
  </fingerprint>
1711
1712
 
1712
- <fingerprint pattern="^(?:1437920c973b2b7c03d075028440a656|9422fe1eb162eb5329788a6cb6d408cb)$">
1713
+ <fingerprint pattern="^1437920c973b2b7c03d075028440a656|9422fe1eb162eb5329788a6cb6d408cb$">
1713
1714
  <description>BrightSign Digital Signage Player</description>
1714
1715
  <example>1437920c973b2b7c03d075028440a656</example>
1715
1716
  <example>9422fe1eb162eb5329788a6cb6d408cb</example>
@@ -1829,7 +1830,7 @@
1829
1830
  <description>Pure Storage Appliance</description>
1830
1831
  <example>7b73744799150c888a172daf3d7093bf</example>
1831
1832
  <param pos="0" name="hw.vendor" value="Pure Storage"/>
1832
- <param pos="0" name="hw.device" value="NAS"/>
1833
+ <param pos="0" name="hw.device" value="Storage Appliance"/>
1833
1834
  <param pos="0" name="hw.product" value="Appliance"/>
1834
1835
  <param pos="0" name="hw.certainty" value="0.5"/>
1835
1836
  </fingerprint>
@@ -1842,4 +1843,109 @@
1842
1843
  <param pos="0" name="service.certainty" value="0.5"/>
1843
1844
  </fingerprint>
1844
1845
 
1846
+ <fingerprint pattern="^4f52bd9a74742b08b0a152559da4d32a$">
1847
+ <description>Grandstream</description>
1848
+ <example>4f52bd9a74742b08b0a152559da4d32a</example>
1849
+ <param pos="0" name="hw.vendor" value="Grandstream"/>
1850
+ <param pos="0" name="hw.device" value="Device"/>
1851
+ </fingerprint>
1852
+
1853
+ <fingerprint pattern="^c7f62c79333a43b6cd3f24d9e9c69526$">
1854
+ <description>iSTAR Ultra</description>
1855
+ <example>c7f62c79333a43b6cd3f24d9e9c69526</example>
1856
+ <param pos="0" name="os.vendor" value="Software House"/>
1857
+ <param pos="0" name="os.family" value="Linux"/>
1858
+ <param pos="0" name="os.product" value="{hw.product} Firmware"/>
1859
+ <param pos="0" name="hw.vendor" value="Software House"/>
1860
+ <param pos="0" name="hw.device" value="Access Control"/>
1861
+ <param pos="0" name="hw.family" value="iSTAR Door Controllers"/>
1862
+ <param pos="0" name="hw.product" value="iSTAR Ultra"/>
1863
+ <param pos="0" name="hw.cpe23" value="cpe:/h:swhouse:istar_ultra:-"/>
1864
+ </fingerprint>
1865
+
1866
+ <fingerprint pattern="^fc83221e4a9e57f2e0b10416de541ca3|e518c347f94a594de49e3f3948b8e6e5$">
1867
+ <description>SpotterRF</description>
1868
+ <example>fc83221e4a9e57f2e0b10416de541ca3</example>
1869
+ <example>e518c347f94a594de49e3f3948b8e6e5</example>
1870
+ <param pos="0" name="os.vendor" value="SpotterRF"/>
1871
+ <param pos="0" name="os.family" value="Linux"/>
1872
+ <param pos="0" name="os.certainty" value="0.90"/>
1873
+ <param pos="0" name="hw.vendor" value="SpotterRF"/>
1874
+ <param pos="0" name="hw.device" value="Sensor"/>
1875
+ <param pos="0" name="hw.product" value="Drone Detector"/>
1876
+ <param pos="0" name="hw.certainty" value="0.5"/>
1877
+ </fingerprint>
1878
+
1879
+ <fingerprint pattern="^95db983278a0c04695b2e6775a65a8da$">
1880
+ <description>Schneider Electric PowerLogic Meter</description>
1881
+ <example>95db983278a0c04695b2e6775a65a8da</example>
1882
+ <param pos="0" name="hw.vendor" value="Schneider Electric"/>
1883
+ <param pos="0" name="hw.device" value="Power Meter"/>
1884
+ <param pos="0" name="hw.product" value="PowerLogic Power Meter"/>
1885
+ </fingerprint>
1886
+
1887
+ <fingerprint pattern="^6211ad748f77d07a0bccc40cf227ec4e$">
1888
+ <description>Alpha Technologies Novus UPS</description>
1889
+ <example>6211ad748f77d07a0bccc40cf227ec4e</example>
1890
+ <param pos="0" name="hw.vendor" value="Alpha Technologies"/>
1891
+ <param pos="0" name="hw.device" value="Power Device"/>
1892
+ <param pos="0" name="hw.product" value="Novus UPS"/>
1893
+ </fingerprint>
1894
+
1895
+ <fingerprint pattern="^34a1514e6ab88611178ef9bda6e1c752$">
1896
+ <description>ProSoft RadioLinx</description>
1897
+ <example>34a1514e6ab88611178ef9bda6e1c752</example>
1898
+ <param pos="0" name="hw.vendor" value="ProSoft Technology"/>
1899
+ <param pos="0" name="hw.device" value="WAP"/>
1900
+ <param pos="0" name="hw.product" value="RadioLinx"/>
1901
+ <param pos="0" name="hw.certainty" value="0.5"/>
1902
+ </fingerprint>
1903
+
1904
+ <fingerprint pattern="^78d86dadf923f20c09c89f883047c985$">
1905
+ <description>Redis Commander</description>
1906
+ <example>78d86dadf923f20c09c89f883047c985</example>
1907
+ <param pos="0" name="service.vendor" value="Ferner"/>
1908
+ <param pos="0" name="service.product" value="Redis Commander"/>
1909
+ <param pos="0" name="service.certainty" value="0.5"/>
1910
+ </fingerprint>
1911
+
1912
+ <fingerprint pattern="^595591dc3d5e9bc47b2af8f12602ba19$">
1913
+ <description>CBT Nuggets Learning Server</description>
1914
+ <example>595591dc3d5e9bc47b2af8f12602ba19</example>
1915
+ <param pos="0" name="service.vendor" value="CBT"/>
1916
+ <param pos="0" name="service.product" value="Nuggets Learning Server"/>
1917
+ <param pos="0" name="service.certainty" value="0.5"/>
1918
+ </fingerprint>
1919
+
1920
+ <fingerprint pattern="^bd1b5fef10a0846b2db322b90a57b746$">
1921
+ <description>Teledyne FLIR IP Camera</description>
1922
+ <example>bd1b5fef10a0846b2db322b90a57b746</example>
1923
+ <param pos="0" name="hw.vendor" value="Teledyne FLIR"/>
1924
+ <param pos="0" name="hw.device" value="IP Camera"/>
1925
+ <param pos="0" name="hw.certainty" value="0.5"/>
1926
+ </fingerprint>
1927
+
1928
+ <fingerprint pattern="^908db8e56aeee8bb7a911b5df4eaf90e|02f4db63a9cfb650c05ffd82956cbfd6$">
1929
+ <description>Proxmox</description>
1930
+ <example>908db8e56aeee8bb7a911b5df4eaf90e</example>
1931
+ <example>02f4db63a9cfb650c05ffd82956cbfd6</example>
1932
+ <param pos="0" name="service.vendor" value="Proxmox"/>
1933
+ <param pos="0" name="service.product" value="Virtual Environment"/>
1934
+ <param pos="0" name="service.cpe23" value="cpe:/a:proxmox:virtual_environment:-"/>
1935
+ <param pos="0" name="os.vendor" value="Proxmox"/>
1936
+ <param pos="0" name="os.family" value="Linux"/>
1937
+ <param pos="0" name="os.product" value="Proxmox"/>
1938
+ </fingerprint>
1939
+
1940
+ <fingerprint pattern="^716417a84b643460167d84e251579491$">
1941
+ <description>LG Smart TV</description>
1942
+ <example>716417a84b643460167d84e251579491</example>
1943
+ <param pos="0" name="os.vendor" value="LG"/>
1944
+ <param pos="0" name="os.product" value="webOS"/>
1945
+ <param pos="0" name="os.certainty" value="0.5"/>
1946
+ <param pos="0" name="hw.vendor" value="LG"/>
1947
+ <param pos="0" name="hw.device" value="Smart TV"/>
1948
+ <param pos="0" name="hw.certainty" value="0.5"/>
1949
+ </fingerprint>
1950
+
1845
1951
  </fingerprints>
data/xml/ftp_banners.xml CHANGED
@@ -414,7 +414,7 @@ more text</example>
414
414
  <param pos="0" name="service.cpe23" value="cpe:/a:solarwinds:serv-u_ftp_server:{service.version}"/>
415
415
  </fingerprint>
416
416
 
417
- <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">
418
418
  <description>Serv-U Serv-U with version on Windows</description>
419
419
  <example service.version="2.5n">Serv-U FTP-Server v2.5n for WinSock ready...</example>
420
420
  <example service.version="6.0">Serv-U FTP Server v6.0 for WinSock ready</example>
@@ -429,7 +429,7 @@ more text</example>
429
429
  <param pos="0" name="os.cpe23" value="cpe:/o:microsoft:windows:-"/>
430
430
  </fingerprint>
431
431
 
432
- <fingerprint pattern="^Serv-U FTP[ -]Server v(\d+\.\S+) ready\.*$">
432
+ <fingerprint pattern="^Serv-U FTP[ -]Server v(\d+\.\S+) ready">
433
433
  <description>Serv-U Serv-U with version </description>
434
434
  <example service.version="7.2">Serv-U FTP Server v7.2 ready...</example>
435
435
  <example service.version="14.0">Serv-U FTP Server v14.0 ready...</example>
@@ -491,7 +491,7 @@ more text</example>
491
491
  <param pos="1" name="service.version"/>
492
492
  </fingerprint>
493
493
 
494
- <fingerprint pattern="^OOPS: .*vsftp.*$">
494
+ <fingerprint pattern="^OOPS: .*vsftp">
495
495
  <description>vsFTPd (Very Secure FTP Daemon) error message</description>
496
496
  <example>OOPS: vsftpd: root is not mounted.</example>
497
497
  <example>OOPS: cannot read user list file:/etc/vsftpd.user_list</example>
@@ -501,7 +501,7 @@ more text</example>
501
501
  <param pos="0" name="service.cpe23" value="cpe:/a:vsftpd_project:vsftpd:-"/>
502
502
  </fingerprint>
503
503
 
504
- <fingerprint pattern="^FileZilla Server(?: version)? (?:v)?(\d\.[\w.]+(?: beta)?).*$">
504
+ <fingerprint pattern="^FileZilla Server(?: version)? (?:v)?(\d\.[\w.]+(?: beta)?)">
505
505
  <description>FileZilla FTP Server</description>
506
506
  <example service.version="0.9.2 beta">FileZilla Server version 0.9.2 beta</example>
507
507
  <example service.version="0.9.13a beta">FileZilla Server version 0.9.13a beta</example>
@@ -518,7 +518,7 @@ more text</example>
518
518
  <param pos="0" name="os.cpe23" value="cpe:/o:microsoft:windows:-"/>
519
519
  </fingerprint>
520
520
 
521
- <fingerprint pattern="^\s{0,1024}APC FTP server ready\.$">
521
+ <fingerprint pattern="^\s{0,1000}APC FTP server ready\.$">
522
522
  <description>APC device</description>
523
523
  <example>APC FTP server ready.</example>
524
524
  <param pos="0" name="service.vendor" value="APC"/>
@@ -565,7 +565,7 @@ more text</example>
565
565
  <param pos="0" name="hw.cpe23" value="cpe:/h:emc:celerra_network_attached_storage:-"/>
566
566
  </fingerprint>
567
567
 
568
- <fingerprint pattern="^JD FTP Server Ready.*$">
568
+ <fingerprint pattern="^JD FTP Server Ready">
569
569
  <description>HP JetDirect printer</description>
570
570
  <example>JD FTP Server Ready</example>
571
571
  <example>JD FTP Server Ready.</example>
@@ -615,7 +615,7 @@ more text</example>
615
615
  <param pos="0" name="service.product" value="Nepenthes"/>
616
616
  </fingerprint>
617
617
 
618
- <fingerprint pattern="^[^ ]{1,512} IBM FTP CS (V1R\d+) at ([^,]*),.*">
618
+ <fingerprint pattern="^[^ ]{1,512} IBM FTP CS (V1R\d+) at ([^,]*),">
619
619
  <description>IBM z/OS FTP Service</description>
620
620
  <example>SFTPD1 IBM FTP CS V1R4 at x.y.z, 21:02:19 on 2007-12-15.</example>
621
621
  <param pos="0" name="service.vendor" value="IBM"/>
@@ -676,7 +676,7 @@ more text</example>
676
676
  <param pos="0" name="os.device" value="Storage"/>
677
677
  </fingerprint>
678
678
 
679
- <fingerprint pattern="(?i)^AXIS (\S+) .* Camera(?:\s+version)?\s+(\S+) .*">
679
+ <fingerprint pattern="(?i)^AXIS (\S+) .* Camera(?:\s+version)?\s+(\S+)">
680
680
  <description>Axis Network Camera</description>
681
681
  <example hw.product="2100" hw.version="2.43">Axis 2100 Network Camera 2.43 Nov 04 2008 ready.</example>
682
682
  <example hw.product="216FD" hw.version="4.47">AXIS 216FD Network Fixed Dome Camera 4.47 (Mar 13 2008) ready.</example>
@@ -693,7 +693,7 @@ more text</example>
693
693
  <param pos="0" name="os.device" value="IP Camera"/>
694
694
  </fingerprint>
695
695
 
696
- <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+)">
697
697
  <description>Axis Video encoders/servers</description>
698
698
  <example hw.product="Q7406">AXIS Q7406 Video Encoder Blade 5.01 (Aug 01 2008) ready.</example>
699
699
  <example hw.product="241Q">AXIS 241Q Video Server 4.47.2 (Dec 11 2008) ready.</example>
@@ -709,7 +709,7 @@ more text</example>
709
709
  <param pos="0" name="os.family" value="Linux"/>
710
710
  </fingerprint>
711
711
 
712
- <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+)">
713
713
  <description>Axis Audio encoders/servers</description>
714
714
  <example hw.product="P8221" hw.version="5.10.2">AXIS P8221 IO Audio Module 5.10.2 (Nov 07 2011) ready.</example>
715
715
  <param pos="0" name="hw.vendor" value="Axis"/>
@@ -775,7 +775,7 @@ more text</example>
775
775
  <param pos="1" name="hw.product"/>
776
776
  </fingerprint>
777
777
 
778
- <fingerprint pattern="^Xerox WorkCentre ([A-Za-z0-9]+).*$" certainty="1.0">
778
+ <fingerprint pattern="^Xerox WorkCentre ([A-Za-z0-9]+)" certainty="1.0">
779
779
  <description>Xerox WorkCentre</description>
780
780
  <example hw.product="6605DN">Xerox WorkCentre 6605DN</example>
781
781
  <example hw.product="3615">Xerox WorkCentre 3615</example>
@@ -804,7 +804,7 @@ more text</example>
804
804
  <param pos="1" name="hw.product"/>
805
805
  </fingerprint>
806
806
 
807
- <fingerprint pattern="^XEROX (\d+) Wide Format .*$" certainty="1.0">
807
+ <fingerprint pattern="^XEROX (\d+) Wide Format" certainty="1.0">
808
808
  <description>Xerox Wide Format Series of Printers</description>
809
809
  <example>XEROX 6204 Wide Format FTP server ready</example>
810
810
  <param pos="0" name="os.vendor" value="Xerox"/>
@@ -840,7 +840,7 @@ more text</example>
840
840
  <param pos="2" name="hw.product"/>
841
841
  </fingerprint>
842
842
 
843
- <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">
844
844
  <description>Lexmark printer with OS version</description>
845
845
  <example hw.product="T654" os.version="NR.APS.F368">ET0021718 Lexmark T654 FTP Server NR.APS.F368 ready.</example>
846
846
  <param pos="0" name="os.vendor" value="Lexmark"/>
@@ -851,7 +851,7 @@ more text</example>
851
851
  <param pos="1" name="hw.product"/>
852
852
  </fingerprint>
853
853
 
854
- <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">
855
855
  <description>Lexmark printer</description>
856
856
  <example hw.product="X500">Lexmark X500 FTP server ready</example>
857
857
  <param pos="0" name="os.vendor" value="Lexmark"/>
@@ -1114,7 +1114,7 @@ more text</example>
1114
1114
  <param pos="0" name="hw.product" value="e-STUDIO"/>
1115
1115
  </fingerprint>
1116
1116
 
1117
- <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">
1118
1118
  <description>Lexmark Optra Printer</description>
1119
1119
  <example os.product="T612">lex142785470853 Lexmark Optra T612 FTP Server 3.20.30 ready.</example>
1120
1120
  <example os.version="3.20.20">oppr1.s02504.us Lexmark Optra T610 FTP Server 3.20.20 ready.</example>
@@ -1369,7 +1369,7 @@ more text</example>
1369
1369
  <param pos="0" name="os.cpe23" value="cpe:/o:mikrotik:routeros:{os.version}"/>
1370
1370
  </fingerprint>
1371
1371
 
1372
- <fingerprint pattern="^.{0,1024} FTP server \(MikroTik (\d\.[\w\.]+)\) ready\.?$">
1372
+ <fingerprint pattern="^.{0,1000} FTP server \(MikroTik (\d\.[\w\.]+)\) ready\.?$">
1373
1373
  <description>MikroTik with description</description>
1374
1374
  <example os.version="6.43.16">Super Thing_Place- FTP server (MikroTik 6.43.16) ready</example>
1375
1375
  <example os.version="6.43.16beta2">Super Thing_Place- FTP server (MikroTik 6.43.16beta2) ready</example>
@@ -1795,4 +1795,18 @@ more text</example>
1795
1795
  <param pos="1" name="host.name"/>
1796
1796
  </fingerprint>
1797
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
+
1798
1812
  </fingerprints>