recog 2.0.13 → 2.0.14

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 (52) hide show
  1. checksums.yaml +4 -4
  2. data/CONTRIBUTING.md +19 -6
  3. data/features/{xml → data}/failing_banners_fingerprints.xml +0 -0
  4. data/features/{xml → data}/matching_banners_fingerprints.xml +0 -0
  5. data/features/{xml → data}/no_tests.xml +0 -0
  6. data/features/{xml/banners.xml → data/sample_banner.txt} +0 -0
  7. data/features/{xml → data}/successful_tests.xml +0 -0
  8. data/features/{xml → data}/tests_with_failures.xml +0 -0
  9. data/features/{xml → data}/tests_with_warnings.xml +0 -0
  10. data/features/match.feature +2 -2
  11. data/features/support/env.rb +1 -1
  12. data/lib/recog/version.rb +1 -1
  13. data/misc/order.xsl +17 -0
  14. data/spec/lib/fingerprint_self_test_spec.rb +8 -0
  15. data/xml/apache_os.xml +270 -334
  16. data/xml/architecture.xml +28 -41
  17. data/xml/fingerprints.xsd +37 -0
  18. data/xml/ftp_banners.xml +52 -58
  19. data/xml/h323_callresp.xml +597 -695
  20. data/xml/hp_pjl_id.xml +370 -409
  21. data/xml/http_cookies.xml +304 -348
  22. data/xml/http_servers.xml +3202 -3483
  23. data/xml/http_wwwauth.xml +342 -409
  24. data/xml/imap_banners.xml +149 -190
  25. data/xml/mdns_device-info_txt.xml +97 -111
  26. data/xml/mdns_workstation_txt.xml +6 -6
  27. data/xml/mysql_banners.xml +99 -198
  28. data/xml/mysql_error.xml +4 -11
  29. data/xml/nntp_banners.xml +42 -45
  30. data/xml/ntp_banners.xml +2 -3
  31. data/xml/pop_banners.xml +214 -247
  32. data/xml/rsh_resp.xml +68 -76
  33. data/xml/sip_banners.xml +19 -19
  34. data/xml/sip_user_agents.xml +63 -74
  35. data/xml/smb_native_os.xml +387 -433
  36. data/xml/smtp_banners.xml +1318 -1460
  37. data/xml/smtp_debug.xml +24 -27
  38. data/xml/smtp_ehlo.xml +19 -22
  39. data/xml/smtp_expn.xml +61 -70
  40. data/xml/smtp_help.xml +139 -160
  41. data/xml/smtp_mailfrom.xml +14 -16
  42. data/xml/smtp_noop.xml +28 -31
  43. data/xml/smtp_quit.xml +16 -18
  44. data/xml/smtp_rcptto.xml +8 -10
  45. data/xml/smtp_rset.xml +12 -13
  46. data/xml/smtp_turn.xml +12 -13
  47. data/xml/smtp_vrfy.xml +66 -76
  48. data/xml/snmp_sysdescr.xml +7257 -8016
  49. data/xml/snmp_sysobjid.xml +392 -434
  50. data/xml/ssh_banners.xml +783 -867
  51. data/xml/upnp_banners.xml +594 -628
  52. metadata +11 -9
@@ -1,90 +1,82 @@
1
- <?xml version="1.0"?>
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
2
  <!--
3
3
  Rservices responses to requests are matched against these patterns to fingerprint the OSes of servers.
4
4
  -->
5
-
6
5
  <fingerprints>
7
- <fingerprint pattern="^.Permission denied: Error 0$">
8
- <example>xPermission denied: Error 0</example>
9
- <description>Digital Unix rlogind</description>
10
- <param pos="0" name="os.vendor" value="HP"/>
11
- <param pos="0" name="os.device" value="General"/>
12
- <param pos="0" name="os.family" value="Digital Unix"/>
13
- <param pos="0" name="os.product" value="Unknown"/>
14
- </fingerprint>
15
-
16
- <fingerprint pattern="^.Winsock RSHD/NT: Protocol negotiation error\..+$|^.in\.rlogind: Permission denied\..+$" flags="REG_DOT_NEWLINE">
17
- <example>xWinsock RSHD/NT: Protocol negotiation error.
6
+ <fingerprint pattern="^.Permission denied: Error 0$">
7
+ <description>Digital Unix rlogind</description>
8
+ <example>xPermission denied: Error 0</example>
9
+ <param pos="0" name="os.vendor" value="HP"/>
10
+ <param pos="0" name="os.device" value="General"/>
11
+ <param pos="0" name="os.family" value="Digital Unix"/>
12
+ <param pos="0" name="os.product" value="Unknown"/>
13
+ </fingerprint>
14
+ <fingerprint pattern="^.Winsock RSHD/NT: Protocol negotiation error\..+$|^.in\.rlogind: Permission denied\..+$" flags="REG_DOT_NEWLINE">
15
+ <description>Windows rlogind</description>
16
+ <example>xWinsock RSHD/NT: Protocol negotiation error.
18
17
  0</example>
19
- <example>xin.rlogind: Permission denied.
18
+ <example>xin.rlogind: Permission denied.
20
19
  </example>
21
- <description>Windows rlogind</description>
22
- <param pos="0" name="os.vendor" value="Microsoft"/>
23
- <param pos="0" name="os.device" value="General"/>
24
- <param pos="0" name="os.family" value="Windows"/>
25
- <param pos="0" name="os.product" value="Unknown"/>
26
- </fingerprint>
27
-
28
- <fingerprint pattern="^.permission denied\..+$" flags="REG_DOT_NEWLINE">
29
- <example>xpermission denied.
20
+ <param pos="0" name="os.vendor" value="Microsoft"/>
21
+ <param pos="0" name="os.device" value="General"/>
22
+ <param pos="0" name="os.family" value="Windows"/>
23
+ <param pos="0" name="os.product" value="Unknown"/>
24
+ </fingerprint>
25
+ <fingerprint pattern="^.permission denied\..+$" flags="REG_DOT_NEWLINE">
26
+ <description>Solaris rlogind</description>
27
+ <example>xpermission denied.
30
28
  </example>
31
- <description>Solaris rlogind</description>
32
- <param pos="0" name="os.vendor" value="Sun"/>
33
- <param pos="0" name="os.device" value="General"/>
34
- <param pos="0" name="os.family" value="Solaris"/>
35
- <param pos="0" name="os.product" value="Solaris"/>
36
- </fingerprint>
37
-
38
- <fingerprint pattern="^.rlogind: Acc.s refus.\..+$" flags="REG_DOT_NEWLINE">
39
- <example>xrlogind: Accxs refusx.
29
+ <param pos="0" name="os.vendor" value="Sun"/>
30
+ <param pos="0" name="os.device" value="General"/>
31
+ <param pos="0" name="os.family" value="Solaris"/>
32
+ <param pos="0" name="os.product" value="Solaris"/>
33
+ </fingerprint>
34
+ <fingerprint pattern="^.rlogind: Acc.s refus.\..+$" flags="REG_DOT_NEWLINE">
35
+ <description>AIX rlogind</description>
36
+ <example>xrlogind: Accxs refusx.
40
37
  </example>
41
- <description>AIX rlogind</description>
42
- <param pos="0" name="os.vendor" value="IBM"/>
43
- <param pos="0" name="os.device" value="General"/>
44
- <param pos="0" name="os.family" value="AIX"/>
45
- <param pos="0" name="os.product" value="AIX"/>
46
- </fingerprint>
47
-
48
- <fingerprint pattern="^.rlogind: Host name for your address \([\d.]+\) unknown\..*$" flags="REG_DOT_NEWLINE">
49
- <example>xrlogind: Host name for your address (127.0.0.1) unknown.
38
+ <param pos="0" name="os.vendor" value="IBM"/>
39
+ <param pos="0" name="os.device" value="General"/>
40
+ <param pos="0" name="os.family" value="AIX"/>
41
+ <param pos="0" name="os.product" value="AIX"/>
42
+ </fingerprint>
43
+ <fingerprint pattern="^.rlogind: Host name for your address \([\d.]+\) unknown\..*$" flags="REG_DOT_NEWLINE">
44
+ <description>A/UX rlogind</description>
45
+ <example>xrlogind: Host name for your address (127.0.0.1) unknown.
50
46
  </example>
51
- <description>A/UX rlogind</description>
52
- <param pos="0" name="os.vendor" value="Apple"/>
53
- <param pos="0" name="os.device" value="General"/>
54
- <param pos="0" name="os.family" value="A/UX"/>
55
- <param pos="0" name="os.product" value="Unknown"/>
56
- </fingerprint>
57
-
58
- <fingerprint pattern="^.rexecd: Login incorrect\..*$" flags="REG_DOT_NEWLINE">
59
- <example>xrexecd: Login incorrect.
47
+ <param pos="0" name="os.vendor" value="Apple"/>
48
+ <param pos="0" name="os.device" value="General"/>
49
+ <param pos="0" name="os.family" value="A/UX"/>
50
+ <param pos="0" name="os.product" value="Unknown"/>
51
+ </fingerprint>
52
+ <fingerprint pattern="^.rexecd: Login incorrect\..*$" flags="REG_DOT_NEWLINE">
53
+ <description>HP-UX rexecd</description>
54
+ <example>xrexecd: Login incorrect.
60
55
  </example>
61
- <description>HP-UX rexecd</description>
62
- <param pos="0" name="os.vendor" value="HP"/>
63
- <param pos="0" name="os.device" value="General"/>
64
- <param pos="0" name="os.family" value="HP-UX"/>
65
- <param pos="0" name="os.product" value="HP-UX"/>
66
- </fingerprint>
67
-
68
- <fingerprint pattern="^.rexecd: [-\d]+.*$" flags="REG_DOT_NEWLINE">
69
- <example>xrexecd: 0-1 The login is not correct.
56
+ <param pos="0" name="os.vendor" value="HP"/>
57
+ <param pos="0" name="os.device" value="General"/>
58
+ <param pos="0" name="os.family" value="HP-UX"/>
59
+ <param pos="0" name="os.product" value="HP-UX"/>
60
+ </fingerprint>
61
+ <fingerprint pattern="^.rexecd: [-\d]+.*$" flags="REG_DOT_NEWLINE">
62
+ <description>AIX rexecd</description>
63
+ <example>xrexecd: 0-1 The login is not correct.
70
64
  </example>
71
- <description>AIX rexecd</description>
72
- <param pos="0" name="os.vendor" value="IBM"/>
73
- <param pos="0" name="os.device" value="General"/>
74
- <param pos="0" name="os.family" value="AIX"/>
75
- <param pos="0" name="os.product" value="AIX"/>
76
- </fingerprint>
77
-
78
- <fingerprint pattern="^.remshd: (?:getservbyname.+|Kerberos Authentication not enabled\..+|Error! Kerberos authentication failed)$" flags="REG_DOT_NEWLINE">
79
- <example>xremshd: getservbyname
65
+ <param pos="0" name="os.vendor" value="IBM"/>
66
+ <param pos="0" name="os.device" value="General"/>
67
+ <param pos="0" name="os.family" value="AIX"/>
68
+ <param pos="0" name="os.product" value="AIX"/>
69
+ </fingerprint>
70
+ <fingerprint pattern="^.remshd: (?:getservbyname.+|Kerberos Authentication not enabled\..+|Error! Kerberos authentication failed)$" flags="REG_DOT_NEWLINE">
71
+ <description>HP-UX rshd</description>
72
+ <example>xremshd: getservbyname
80
73
  </example>
81
- <example>xremshd: Kerberos Authentication not enabled.
74
+ <example>xremshd: Kerberos Authentication not enabled.
82
75
  </example>
83
- <example>xremshd: Error! Kerberos authentication failed</example>
84
- <description>HP-UX rshd</description>
85
- <param pos="0" name="os.vendor" value="HP"/>
86
- <param pos="0" name="os.device" value="General"/>
87
- <param pos="0" name="os.family" value="HP-UX"/>
88
- <param pos="0" name="os.product" value="HP-UX"/>
89
- </fingerprint>
76
+ <example>xremshd: Error! Kerberos authentication failed</example>
77
+ <param pos="0" name="os.vendor" value="HP"/>
78
+ <param pos="0" name="os.device" value="General"/>
79
+ <param pos="0" name="os.family" value="HP-UX"/>
80
+ <param pos="0" name="os.product" value="HP-UX"/>
81
+ </fingerprint>
90
82
  </fingerprints>
@@ -1,24 +1,24 @@
1
- <?xml version="1.0"?>
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
2
  <!--
3
3
  SIP Server header values are matched against these patterns to fingerprint SIP devices.
4
4
  -->
5
5
  <fingerprints matches="sip_header.server">
6
- <fingerprint pattern="^Cisco-SIPGateway/IOS-([\d\.x]+)$">
7
- <description>Cisco SIPGateway</description>
8
- <example>Cisco-SIPGateway/IOS-12.x</example>
9
- <param pos="0" name="os.vendor" value="Cisco"/>
10
- <param pos="0" name="os.product" value="IOS"/>
11
- <param pos="1" name="os.version"/>
12
- </fingerprint>
13
- <fingerprint pattern="^TANDBERG/\d+ \(([a-zA-Z]+\d+(?:\.\d+)+).*\)">
14
- <description>Cisco TelePresence</description>
15
- <example os.version="X8.2.1">TANDBERG/4130 (X8.2.1)</example>
16
- <example os.version="XC2.2.1">TANDBERG/4353 (XC2.2.1-b2bua-1.0)</example>
17
- <example os.version="TC5.1.4.295090">TANDBERG/516 (TC5.1.4.295090)</example>
18
- <example os.version="TCNC5.1.4.295090">TANDBERG/517 (TCNC5.1.4.295090)</example>
19
- <example os.version="S5.30">TANDBERG/80 (S5.30)</example>
20
- <param pos="0" name="os.vendor" value="Cisco"/>
21
- <param pos="0" name="os.product" value="TelePresence"/>
22
- <param pos="1" name="os.version"/>
23
- </fingerprint>
6
+ <fingerprint pattern="^Cisco-SIPGateway/IOS-([\d\.x]+)$">
7
+ <description>Cisco SIPGateway</description>
8
+ <example>Cisco-SIPGateway/IOS-12.x</example>
9
+ <param pos="0" name="os.vendor" value="Cisco"/>
10
+ <param pos="0" name="os.product" value="IOS"/>
11
+ <param pos="1" name="os.version"/>
12
+ </fingerprint>
13
+ <fingerprint pattern="^TANDBERG/\d+ \(([a-zA-Z]+\d+(?:\.\d+)+).*\)">
14
+ <description>Cisco TelePresence</description>
15
+ <example os.version="X8.2.1">TANDBERG/4130 (X8.2.1)</example>
16
+ <example os.version="XC2.2.1">TANDBERG/4353 (XC2.2.1-b2bua-1.0)</example>
17
+ <example os.version="TC5.1.4.295090">TANDBERG/516 (TC5.1.4.295090)</example>
18
+ <example os.version="TCNC5.1.4.295090">TANDBERG/517 (TCNC5.1.4.295090)</example>
19
+ <example os.version="S5.30">TANDBERG/80 (S5.30)</example>
20
+ <param pos="0" name="os.vendor" value="Cisco"/>
21
+ <param pos="0" name="os.product" value="TelePresence"/>
22
+ <param pos="1" name="os.version"/>
23
+ </fingerprint>
24
24
  </fingerprints>
@@ -1,79 +1,68 @@
1
- <?xml version="1.0"?>
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
2
  <!--
3
3
  SIP User Agent header values are matched against these patterns to fingerprint SIP devices.
4
4
  -->
5
-
6
5
  <fingerprints matches="sip_header.user_agent">
7
-
8
- <!-- Cisco Devices -->
9
-
10
- <fingerprint pattern="^Cisco-SIPGateway/IOS-([\d\.x]+)$">
11
- <description>Cisco SIPGateway</description>
12
- <example>Cisco-SIPGateway/IOS-12.x</example>
13
- <param pos="0" name="os.vendor" value="Cisco"/>
14
- <param pos="0" name="os.product" value="IOS"/>
15
- <param pos="1" name="os.version"/>
16
- </fingerprint>
17
-
18
-
19
- <!-- AVM.DE Devices -->
20
-
21
- <fingerprint pattern="^FRITZ!OS$">
22
- <description>AVM FritzOS Device</description>
23
- <example>FRITZ!OS</example>
24
- <param pos="0" name="os.vendor" value="AVM"/>
25
- <param pos="0" name="os.product" value="FRITZ!BOX"/>
26
- </fingerprint>
27
-
28
- <fingerprint pattern="^(?:AVM )?(FRITZ!Box .*) +(\d+\.\d+\.\d+)">
29
- <description>AVM FritzBox</description>
30
- <example>AVM FRITZ!Box Fon 06.03.13</example>
31
- <example>AVM FRITZ!Box Fon 06.03.65 (Jun 7 2005)</example>
32
- <example>AVM FRITZ!Box Fon 06.03.89 (3.01.03 tested by accredited T-Com test lab) (Oct 28 2005)</example>
33
- <example>AVM FRITZ!Box Fon 5010 23.04.01 (Jan 25 2006)</example>
34
- <example>AVM FRITZ!Box Fon 5010 Annex A 48.04.55 TAL (Mar 12 2008)</example>
35
- <example>AVM FRITZ!Box Fon 5010 Annex A (ITA) 48.04.46 (Sep 14 2007)</example>
36
- <example>AVM FRITZ!Box Fon 5012 (UI) 25.03.90 (3.01.03 tested by accredited T-Com test lab) (Oct 28 2005)</example>
37
- <example>AVM FRITZ!Box Fon 5113 Annex A 83.04.69 (Dec 2 2008)</example>
38
- <example>AVM FRITZ!Box Fon 5124 56.04.77 (Feb 14 2014)</example>
39
- <example>AVM FRITZ!Box Fon 7170 Annex A.B ML Speedport W701V 58.04.67 (Dec 18 2008)</example>
40
- <example>AVM FRITZ!Box 3272 126.05.50 (Feb 27 2013)</example>
41
- <example>AVM FRITZ!Box 5050 (UI) 12.04.50 (Jan 30 2008)</example>
42
- <example>AVM FRITZ!Box 6320 Cable 104.05.25 TAL (Jun 8 2012)</example>
43
- <example>AVM FRITZ!Box 6320 v2 Cable 110.05.50 (Jan 31 2013)</example>
44
- <example>AVM FRITZ!Box 6340 Cable (kbw) 115.05.50 (Jan 31 2013)</example>
45
- <example>AVM FRITZ!Box 6810 LTE 108.05.50 (Feb 15 2013)</example>
46
- <example>AVM FRITZ!Box 7170 Annex A 58.04.85 (Apr 4 2011)</example>
47
- <example>AVM FRITZ!Box 7312 117.05.23 TAL (Jun 1 2012)</example>
48
- <example>AVM FRITZ!Box Fon WLAN 7150 by TemTec EDV-Service 29.04.67 TAL (Nov 21 2008)</example>
49
- <example>AVM FRITZ!Box Fon WLAN 7170 28.04.43 (Sep 14 2007)</example>
50
- <example>AVM FRITZ!Box WLAN 3270 v3 Edition Italia 125.05.23 (Jul 6 2012)</example>
51
- <example>AVM FRITZ!Box WLAN 3270 v3 Edition Italia 125.05.52 (Feb 7 2014)</example>
52
- <example>AVM FRITZ!Box Speedport W701V Annex A 58.04.82 (May 12 2010)</example>
53
- <param pos="0" name="os.vendor" value="AVM"/>
54
- <param pos="0" name="os.family" value="FRITZ!Box"/>
55
- <param pos="1" name="os.product"/>
56
- <param pos="2" name="os.version"/>
57
- </fingerprint>
58
-
59
- <fingerprint pattern="^(?:AVM )?(FRITZ!Fon .*) +(\d+\.\d+\.\d+)">
60
- <description>AVM FritzFon</description>
61
- <example>AVM FRITZ!Fon 7150 (fs) 38.04.56 (Mar 31 2008)</example>
62
- <example>AVM FRITZ!Fon WLAN 7150 Annex A 58.04.84 (Apr 4 2011)</example>
63
- <param pos="0" name="os.vendor" value="AVM"/>
64
- <param pos="0" name="os.family" value="FRITZ!Fon"/>
65
- <param pos="1" name="os.product"/>
66
- <param pos="2" name="os.version"/>
67
- </fingerprint>
68
-
69
- <fingerprint pattern="^(?:AVM )?(Multibox .*) +(\d+\.\d+\.\d+)">
70
- <description>AVM Multibox</description>
71
- <example>AVM Multibox 7390 NGN 84.05.09 (Jan 13 2012)</example>
72
- <param pos="0" name="os.vendor" value="AVM"/>
73
- <param pos="0" name="os.family" value="Multibox"/>
74
- <param pos="1" name="os.product"/>
75
- <param pos="2" name="os.version"/>
76
- </fingerprint>
77
-
78
-
6
+ <!-- Cisco Devices -->
7
+ <fingerprint pattern="^Cisco-SIPGateway/IOS-([\d\.x]+)$">
8
+ <description>Cisco SIPGateway</description>
9
+ <example>Cisco-SIPGateway/IOS-12.x</example>
10
+ <param pos="0" name="os.vendor" value="Cisco"/>
11
+ <param pos="0" name="os.product" value="IOS"/>
12
+ <param pos="1" name="os.version"/>
13
+ </fingerprint>
14
+ <!-- AVM.DE Devices -->
15
+ <fingerprint pattern="^FRITZ!OS$">
16
+ <description>AVM FritzOS Device</description>
17
+ <example>FRITZ!OS</example>
18
+ <param pos="0" name="os.vendor" value="AVM"/>
19
+ <param pos="0" name="os.product" value="FRITZ!BOX"/>
20
+ </fingerprint>
21
+ <fingerprint pattern="^(?:AVM )?(FRITZ!Box .*) +(\d+\.\d+\.\d+)">
22
+ <description>AVM FritzBox</description>
23
+ <example>AVM FRITZ!Box Fon 06.03.13</example>
24
+ <example>AVM FRITZ!Box Fon 06.03.65 (Jun 7 2005)</example>
25
+ <example>AVM FRITZ!Box Fon 06.03.89 (3.01.03 tested by accredited T-Com test lab) (Oct 28 2005)</example>
26
+ <example>AVM FRITZ!Box Fon 5010 23.04.01 (Jan 25 2006)</example>
27
+ <example>AVM FRITZ!Box Fon 5010 Annex A 48.04.55 TAL (Mar 12 2008)</example>
28
+ <example>AVM FRITZ!Box Fon 5010 Annex A (ITA) 48.04.46 (Sep 14 2007)</example>
29
+ <example>AVM FRITZ!Box Fon 5012 (UI) 25.03.90 (3.01.03 tested by accredited T-Com test lab) (Oct 28 2005)</example>
30
+ <example>AVM FRITZ!Box Fon 5113 Annex A 83.04.69 (Dec 2 2008)</example>
31
+ <example>AVM FRITZ!Box Fon 5124 56.04.77 (Feb 14 2014)</example>
32
+ <example>AVM FRITZ!Box Fon 7170 Annex A.B ML Speedport W701V 58.04.67 (Dec 18 2008)</example>
33
+ <example>AVM FRITZ!Box 3272 126.05.50 (Feb 27 2013)</example>
34
+ <example>AVM FRITZ!Box 5050 (UI) 12.04.50 (Jan 30 2008)</example>
35
+ <example>AVM FRITZ!Box 6320 Cable 104.05.25 TAL (Jun 8 2012)</example>
36
+ <example>AVM FRITZ!Box 6320 v2 Cable 110.05.50 (Jan 31 2013)</example>
37
+ <example>AVM FRITZ!Box 6340 Cable (kbw) 115.05.50 (Jan 31 2013)</example>
38
+ <example>AVM FRITZ!Box 6810 LTE 108.05.50 (Feb 15 2013)</example>
39
+ <example>AVM FRITZ!Box 7170 Annex A 58.04.85 (Apr 4 2011)</example>
40
+ <example>AVM FRITZ!Box 7312 117.05.23 TAL (Jun 1 2012)</example>
41
+ <example>AVM FRITZ!Box Fon WLAN 7150 by TemTec EDV-Service 29.04.67 TAL (Nov 21 2008)</example>
42
+ <example>AVM FRITZ!Box Fon WLAN 7170 28.04.43 (Sep 14 2007)</example>
43
+ <example>AVM FRITZ!Box WLAN 3270 v3 Edition Italia 125.05.23 (Jul 6 2012)</example>
44
+ <example>AVM FRITZ!Box WLAN 3270 v3 Edition Italia 125.05.52 (Feb 7 2014)</example>
45
+ <example>AVM FRITZ!Box Speedport W701V Annex A 58.04.82 (May 12 2010)</example>
46
+ <param pos="0" name="os.vendor" value="AVM"/>
47
+ <param pos="0" name="os.family" value="FRITZ!Box"/>
48
+ <param pos="1" name="os.product"/>
49
+ <param pos="2" name="os.version"/>
50
+ </fingerprint>
51
+ <fingerprint pattern="^(?:AVM )?(FRITZ!Fon .*) +(\d+\.\d+\.\d+)">
52
+ <description>AVM FritzFon</description>
53
+ <example>AVM FRITZ!Fon 7150 (fs) 38.04.56 (Mar 31 2008)</example>
54
+ <example>AVM FRITZ!Fon WLAN 7150 Annex A 58.04.84 (Apr 4 2011)</example>
55
+ <param pos="0" name="os.vendor" value="AVM"/>
56
+ <param pos="0" name="os.family" value="FRITZ!Fon"/>
57
+ <param pos="1" name="os.product"/>
58
+ <param pos="2" name="os.version"/>
59
+ </fingerprint>
60
+ <fingerprint pattern="^(?:AVM )?(Multibox .*) +(\d+\.\d+\.\d+)">
61
+ <description>AVM Multibox</description>
62
+ <example>AVM Multibox 7390 NGN 84.05.09 (Jan 13 2012)</example>
63
+ <param pos="0" name="os.vendor" value="AVM"/>
64
+ <param pos="0" name="os.family" value="Multibox"/>
65
+ <param pos="1" name="os.product"/>
66
+ <param pos="2" name="os.version"/>
67
+ </fingerprint>
79
68
  </fingerprints>
@@ -1,438 +1,392 @@
1
- <?xml version="1.0"?>
2
-
1
+ <?xml version="1.0" encoding="UTF-8"?>
3
2
  <!--
4
3
  SMB Native OS Fingerprints
5
4
  -->
6
-
7
5
  <fingerprints matches="smb.native_os">
8
-
9
- <fingerprint pattern="^(Windows NT \d\.\d+)$">
10
- <description>Windows NT</description>
11
- <example os.product="Windows NT 4.0">Windows NT 4.0</example>
12
- <param pos="0" name="os.certainty" value="1.0"/>
13
- <param pos="0" name="os.vendor" value="Microsoft"/>
14
- <param pos="1" name="os.product"/>
15
- </fingerprint>
16
-
17
- <fingerprint pattern="^(Windows (?:95|98|ME))$">
18
- <description>Windows 95/98/ME</description>
19
- <example os.product="Windows 95">Windows 95</example>
20
- <example os.product="Windows 98">Windows 98</example>
21
- <param pos="0" name="os.certainty" value="1.0"/>
22
- <param pos="0" name="os.vendor" value="Microsoft"/>
23
- <param pos="1" name="os.product"/>
24
- </fingerprint>
25
-
26
- <fingerprint pattern="^Windows 5\.0$">
27
- <description>Windows 2000</description>
28
- <example>Windows 5.0</example>
29
- <param pos="0" name="os.certainty" value="1.0"/>
30
- <param pos="0" name="os.vendor" value="Microsoft"/>
31
- <param pos="0" name="os.product" value="Windows 2000"/>
32
- </fingerprint>
33
-
34
- <fingerprint pattern="^Windows 5\.1$">
35
- <description>Windows XP</description>
36
- <example>Windows 5.1</example>
37
- <param pos="0" name="os.certainty" value="1.0"/>
38
- <param pos="0" name="os.vendor" value="Microsoft"/>
39
- <param pos="0" name="os.product" value="Windows XP"/>
40
- </fingerprint>
41
-
42
- <fingerprint pattern="^Windows XP (\d+) (Service Pack \d+)$">
43
- <description>Windows XP</description>
44
- <example os.build="2600" os.version="Service Pack 1">Windows XP 2600 Service Pack 1</example>
45
- <param pos="0" name="os.certainty" value="1.0"/>
46
- <param pos="0" name="os.vendor" value="Microsoft"/>
47
- <param pos="0" name="os.product" value="Windows XP"/>
48
- <param pos="1" name="os.build"/>
49
- <param pos="2" name="os.version"/>
50
- </fingerprint>
51
-
52
- <fingerprint pattern="^Windows XP (\d+)$">
53
- <description>Windows XP</description>
54
- <example os.build="2600">Windows XP 2600</example>
55
- <param pos="0" name="os.certainty" value="1.0"/>
56
- <param pos="0" name="os.vendor" value="Microsoft"/>
57
- <param pos="0" name="os.product" value="Windows XP"/>
58
- <param pos="1" name="os.build"/>
59
- </fingerprint>
60
-
61
- <fingerprint pattern="^Windows \.NET">
62
- <description>Windows Server 2003 Beta</description>
63
- <param pos="0" name="os.certainty" value="1.0"/>
64
- <param pos="0" name="os.vendor" value="Microsoft"/>
65
- <param pos="0" name="os.product" value="Windows Server 2003"/>
66
- <param pos="0" name="os.version" value="Beta"/>
67
- </fingerprint>
68
-
69
- <fingerprint pattern="^Windows Server 2003 R2 (\d+)$">
70
- <description>Windows Server 2003 R2</description>
71
- <param pos="0" name="os.certainty" value="1.0"/>
72
- <param pos="0" name="os.vendor" value="Microsoft"/>
73
- <param pos="0" name="os.product" value="Windows Server 2003 R2"/>
74
- <param pos="1" name="os.build"/>
75
- </fingerprint>
76
-
77
- <fingerprint pattern="^Windows Server 2003 R2 (\d+) (Service Pack \d+)$">
78
- <description>Windows Server 2003 R2 (SP)</description>
79
- <example os.build="3790" os.version="Service Pack 2">Windows Server 2003 R2 3790 Service Pack 2</example>
80
- <param pos="0" name="os.certainty" value="1.0"/>
81
- <param pos="0" name="os.vendor" value="Microsoft"/>
82
- <param pos="0" name="os.product" value="Windows Server 2003 R2"/>
83
- <param pos="1" name="os.build"/>
84
- <param pos="2" name="os.version"/>
85
- </fingerprint>
86
-
87
- <fingerprint pattern="^Windows Server 2003 (\d+)$">
88
- <description>Windows Server 2003</description>
89
- <example os.build="3790">Windows Server 2003 3790</example>
90
- <param pos="0" name="os.certainty" value="1.0"/>
91
- <param pos="0" name="os.vendor" value="Microsoft"/>
92
- <param pos="0" name="os.product" value="Windows Server 2003"/>
93
- <param pos="1" name="os.build"/>
94
- </fingerprint>
95
-
96
- <fingerprint pattern="^Windows Server 2003 (\d+) (Service Pack \d+)$">
97
- <description>Windows Server 2003 (SP)</description>
98
- <example os.build="3790" os.version="Service Pack 1">Windows Server 2003 3790 Service Pack 1</example>
99
- <example os.build="3790" os.version="Service Pack 2">Windows Server 2003 3790 Service Pack 2</example>
100
- <param pos="0" name="os.certainty" value="1.0"/>
101
- <param pos="0" name="os.vendor" value="Microsoft"/>
102
- <param pos="0" name="os.product" value="Windows Server 2003"/>
103
- <param pos="1" name="os.build"/>
104
- <param pos="2" name="os.version"/>
105
- </fingerprint>
106
-
107
- <!-- Note that 2008 SP1 is technically "2008 Gold" according to Microsoft -->
108
- <fingerprint pattern="^Windows Server \(R\) 2008 (\w+|\w+ \w+|\w+ \w+ \w+)(?: (?:with|without) Hyper-V|) (\d+) (Service Pack \d+)$">
109
- <description>Windows Server 2008</description>
110
- <example os.edition="Enterprise" os.version="Service Pack 1">Windows Server (R) 2008 Enterprise without Hyper-V 6001 Service Pack 1</example>
111
- <example os.edition="Enterprise" os.version="Service Pack 2">Windows Server (R) 2008 Enterprise 6002 Service Pack 2</example>
112
- <param pos="0" name="os.certainty" value="1.0"/>
113
- <param pos="0" name="os.vendor" value="Microsoft"/>
114
- <param pos="0" name="os.product" value="Windows Server 2008"/>
115
- <param pos="1" name="os.edition"/>
116
- <param pos="2" name="os.build"/>
117
- <param pos="3" name="os.version"/>
118
- </fingerprint>
119
-
120
- <fingerprint pattern="^Windows \(R\) Web Server 2008 (\d+) (Service Pack \d+)$">
121
- <description>Windows Web Server 2008 (SP)</description>
122
- <example os.edition="Web" os.version="Service Pack 2">Windows (R) Web Server 2008 6002 Service Pack 2</example>
123
- <param pos="0" name="os.certainty" value="1.0"/>
124
- <param pos="0" name="os.vendor" value="Microsoft"/>
125
- <param pos="0" name="os.product" value="Windows Server 2008"/>
126
- <param pos="0" name="os.edition" value="Web"/>
127
- <param pos="1" name="os.build"/>
128
- <param pos="2" name="os.version"/>
129
- </fingerprint>
130
-
131
- <fingerprint pattern="^Windows \(R\) Web Server 2008 (\d+)$">
132
- <description>Windows Web Server 2008</description>
133
- <example>Windows (R) Web Server 2008 6002</example>
134
- <param pos="0" name="os.certainty" value="1.0"/>
135
- <param pos="0" name="os.vendor" value="Microsoft"/>
136
- <param pos="0" name="os.product" value="Windows Server 2008"/>
137
- <param pos="0" name="os.edition" value="Web"/>
138
- <param pos="1" name="os.build"/>
139
- </fingerprint>
140
-
141
- <!-- TODO: Need an example string -->
142
- <fingerprint pattern="^Windows \(R\) Storage Server 2008 (?:\w+|\w+ \w+|\w+ \w+ \w+) (\d+) (Service Pack \d+)$">
143
- <description>Windows Server 2008 Storage (SP)</description>
144
- <param pos="0" name="os.certainty" value="1.0"/>
145
- <param pos="0" name="os.vendor" value="Microsoft"/>
146
- <param pos="0" name="os.product" value="Windows Server 2008"/>
147
- <param pos="0" name="os.edition" value="Storage"/>
148
- <param pos="1" name="os.build"/>
149
- <param pos="2" name="os.version"/>
150
- </fingerprint>
151
-
152
- <!-- TODO: Need an example string -->
153
- <fingerprint pattern="^Windows \(R\) Storage Server 2008 (?:\w+|\w+ \w+|\w+ \w+ \w+) (\d+)$">
154
- <description>Windows Web Server 2008 Storage</description>
155
- <param pos="0" name="os.certainty" value="1.0"/>
156
- <param pos="0" name="os.vendor" value="Microsoft"/>
157
- <param pos="0" name="os.product" value="Windows Server 2008"/>
158
- <param pos="0" name="os.edition" value="Storage"/>
159
- <param pos="1" name="os.build"/>
160
- </fingerprint>
161
-
162
- <fingerprint pattern="^Windows Server 2008 HPC Edition (\d+) (Service Pack \d+)$">
163
- <description>Windows Server 2008 HPC</description>
164
- <example>Windows Server 2008 HPC Edition 7601 Service Pack 1</example>
165
- <param pos="0" name="os.certainty" value="1.0"/>
166
- <param pos="0" name="os.vendor" value="Microsoft"/>
167
- <param pos="0" name="os.product" value="Windows Server 2008"/>
168
- <param pos="0" name="os.edition" value="HPC"/>
169
- <param pos="1" name="os.build"/>
170
- <param pos="2" name="os.version"/>
171
- </fingerprint>
172
-
173
- <!-- TODO: Need an example string -->
174
- <fingerprint pattern="^Windows Server 2008 HPC Edition (\d+)$">
175
- <description>Windows Web Server 2008 HPC</description>
176
- <example>Windows Server 2008 HPC Edition 7600</example>
177
- <param pos="0" name="os.certainty" value="1.0"/>
178
- <param pos="0" name="os.vendor" value="Microsoft"/>
179
- <param pos="0" name="os.product" value="Windows Server 2008"/>
180
- <param pos="0" name="os.edition" value="HPC"/>
181
- <param pos="1" name="os.build"/>
182
- </fingerprint>
183
-
184
- <!-- 2008 R2 -->
185
-
186
- <fingerprint pattern="^Windows Server 2008 R2 (\w+|\w+ \w+|\w+ \w+ \w+) (\d+) (Service Pack \d+)$">
187
- <description>Windows Server 2008</description>
188
- <example>Windows Server 2008 R2 Enterprise 7601 Service Pack 1</example>
189
- <example>Windows Server 2008 R2 Standard 7601 Service Pack 1</example>
190
- <param pos="0" name="os.certainty" value="1.0"/>
191
- <param pos="0" name="os.vendor" value="Microsoft"/>
192
- <param pos="0" name="os.product" value="Windows Server 2008 R2"/>
193
- <param pos="1" name="os.edition"/>
194
- <param pos="2" name="os.build"/>
195
- <param pos="3" name="os.version"/>
196
- </fingerprint>
197
-
198
- <fingerprint pattern="^Windows Server 2008 R2 (\w+|\w+ \w+|\w+ \w+ \w+) (\d+)$">
199
- <description>Windows Server 2008 R2</description>
200
- <example os.edition="Enterprise">Windows Server 2008 R2 Enterprise 7600</example>
201
- <example os.edition="Standard">Windows Server 2008 R2 Standard 7600</example>
202
- <example os.edition="Datacenter">Windows Server 2008 R2 Datacenter 7600</example>
203
- <param pos="0" name="os.certainty" value="1.0"/>
204
- <param pos="0" name="os.vendor" value="Microsoft"/>
205
- <param pos="0" name="os.product" value="Windows Server 2008 R2"/>
206
- <param pos="1" name="os.edition"/>
207
- <param pos="2" name="os.build"/>
208
- </fingerprint>
209
-
210
- <fingerprint pattern="^Windows Web Server 2008 R2 (\d+) (Service Pack \d+)$">
211
- <description>Windows Server 2008 R2 Web</description>
212
- <example os.version="Service Pack 1">Windows Web Server 2008 R2 7601 Service Pack 1</example>
213
- <param pos="0" name="os.certainty" value="1.0"/>
214
- <param pos="0" name="os.vendor" value="Microsoft"/>
215
- <param pos="0" name="os.product" value="Windows Server 2008 R2"/>
216
- <param pos="0" name="os.edition" value="Web"/>
217
- <param pos="1" name="os.build"/>
218
- <param pos="2" name="os.version"/>
219
- </fingerprint>
220
-
221
- <fingerprint pattern="^Windows Web Server 2008 R2 (\d+)$">
222
- <description>Windows Web Server 2008 R2 Web</description>
223
- <example>Windows Web Server 2008 R2 7600</example>
224
- <param pos="0" name="os.certainty" value="1.0"/>
225
- <param pos="0" name="os.vendor" value="Microsoft"/>
226
- <param pos="0" name="os.product" value="Windows Server 2008 R2"/>
227
- <param pos="0" name="os.edition" value="Web"/>
228
- <param pos="1" name="os.build"/>
229
- </fingerprint>
230
-
231
- <fingerprint pattern="^Windows Vista \(TM\) (\w+|\w+ \w+|\w+ \w+ \w+) (\d+) (Service Pack \d+)$">
232
- <description>Windows Vista (SP)</description>
233
- <example os.edition="Home Premium" os.version="Service Pack 2">Windows Vista (TM) Home Premium 6002 Service Pack 2</example>
234
- <param pos="0" name="os.certainty" value="1.0"/>
235
- <param pos="0" name="os.vendor" value="Microsoft"/>
236
- <param pos="0" name="os.product" value="Windows Vista"/>
237
- <param pos="1" name="os.edition"/>
238
- <param pos="2" name="os.build"/>
239
- <param pos="3" name="os.version"/>
240
- </fingerprint>
241
-
242
- <fingerprint pattern="^Windows Vista \(TM\) (\w+|\w+ \w+|\w+ \w+ \w+) (\d+)$">
243
- <description>Windows Vista</description>
244
- <example os.edition="Home Premium">Windows Vista (TM) Home Premium 6000</example>
245
- <param pos="0" name="os.certainty" value="1.0"/>
246
- <param pos="0" name="os.vendor" value="Microsoft"/>
247
- <param pos="0" name="os.product" value="Windows Vista"/>
248
- <param pos="1" name="os.edition"/>
249
- <param pos="2" name="os.build"/>
250
- </fingerprint>
251
-
252
-
253
- <fingerprint pattern="^(Windows (?:7|8|8\.1)(?:| RT)) (\w+|\w+ \w+|\w+ \w+ \w+) (\d+) (Service Pack \d+)$">
254
- <description>Windows 7/8 (SP + Edition)</description>
255
- <example os.edition="Enterprise" os.version="Service Pack 1">Windows 7 Enterprise 7601 Service Pack 1</example>
256
- <example os.edition="Starter" os.version="Service Pack 1">Windows 7 Starter 7601 Service Pack 1</example>
257
- <param pos="0" name="os.certainty" value="1.0"/>
258
- <param pos="0" name="os.vendor" value="Microsoft"/>
259
- <param pos="1" name="os.product"/>
260
- <param pos="2" name="os.edition"/>
261
- <param pos="3" name="os.build"/>
262
- <param pos="4" name="os.version"/>
263
- </fingerprint>
264
-
265
- <fingerprint pattern="^(Windows (?:7|8|8\.1)(?:| RT)) (\d+) (Service Pack \d+)$">
266
- <description>Windows 7/8 (SP)</description>
267
- <example os.version="Service Pack 1">Windows 7 7601 Service Pack 1</example>
268
- <param pos="0" name="os.certainty" value="1.0"/>
269
- <param pos="0" name="os.vendor" value="Microsoft"/>
270
- <param pos="1" name="os.product"/>
271
- <param pos="2" name="os.build"/>
272
- <param pos="3" name="os.version"/>
273
- </fingerprint>
274
-
275
- <fingerprint pattern="^(Windows (?:7|8|8\.1)(?:| RT)) (\w+|\w+ \w+|\w+ \w+ \w+) (\d+)$">
276
- <description>Windows 7/8 (Edition)</description>
277
- <example os.edition="Enterprise">Windows 7 Enterprise 7600</example>
278
- <example os.edition="Enterprise">Windows 8.1 Enterprise 9600</example>
279
- <example os.edition="Enterprise">Windows 8 Enterprise 9200</example>
280
- <param pos="0" name="os.certainty" value="1.0"/>
281
- <param pos="0" name="os.vendor" value="Microsoft"/>
282
- <param pos="1" name="os.product"/>
283
- <param pos="2" name="os.edition"/>
284
- <param pos="3" name="os.build"/>
285
- </fingerprint>
286
-
287
- <fingerprint pattern="^(Windows (?:7|8|8\.1)(?:| RT)) (\d+)$">
288
- <description>Windows 7/8</description>
289
- <example>Windows 8 9200</example>
290
- <param pos="0" name="os.certainty" value="1.0"/>
291
- <param pos="0" name="os.vendor" value="Microsoft"/>
292
- <param pos="1" name="os.product"/>
293
- <param pos="2" name="os.build"/>
294
- </fingerprint>
295
-
296
- <!-- Windows 2012 R2 matches go first to simplify the regular expressions -->
297
-
298
- <!-- TODO: Need an example string -->
299
- <fingerprint pattern="^Windows Server 2012 R2 (\w+|\w+ \w+|\w+ \w+ \w+) (\d+) (Service Pack \d+)$">
300
- <description>Windows Server 2012 R2 (SP)</description>
301
- <param pos="0" name="os.certainty" value="1.0"/>
302
- <param pos="0" name="os.vendor" value="Microsoft"/>
303
- <param pos="0" name="os.product" value="Windows Server 2012 R2"/>
304
- <param pos="1" name="os.edition"/>
305
- <param pos="2" name="os.build"/>
306
- <param pos="3" name="os.version"/>
307
- </fingerprint>
308
-
309
- <fingerprint pattern="^Windows Server 2012 R2 (\w+|\w+ \w+|\w+ \w+ \w+) (\d+)$">
310
- <description>Windows Server 2012 R2</description>
311
- <example os.edition="Standard">Windows Server 2012 R2 Standard 9600</example>
312
- <param pos="0" name="os.certainty" value="1.0"/>
313
- <param pos="0" name="os.vendor" value="Microsoft"/>
314
- <param pos="0" name="os.product" value="Windows Server 2012 R2"/>
315
- <param pos="1" name="os.edition"/>
316
- <param pos="2" name="os.build"/>
317
- </fingerprint>
318
-
319
- <!-- TODO: Need an example string -->
320
- <fingerprint pattern="^Windows Server 2012 (\w+|\w+ \w+|\w+ \w+ \w+) (\d+) (Service Pack \d+)$">
321
- <description>Windows Server 2012 (SP)</description>
322
- <param pos="0" name="os.certainty" value="1.0"/>
323
- <param pos="0" name="os.vendor" value="Microsoft"/>
324
- <param pos="0" name="os.product" value="Windows Server 2012"/>
325
- <param pos="1" name="os.edition"/>
326
- <param pos="2" name="os.build"/>
327
- <param pos="3" name="os.version"/>
328
- </fingerprint>
329
-
330
- <fingerprint pattern="^Windows Server 2012 (\w+|\w+ \w+|\w+ \w+ \w+) (\d+)$">
331
- <description>Windows Server 2012</description>
332
- <example>Windows Server 2012 Standard 9200</example>
333
- <param pos="0" name="os.certainty" value="1.0"/>
334
- <param pos="0" name="os.vendor" value="Microsoft"/>
335
- <param pos="0" name="os.product" value="Windows Server 2012"/>
336
- <param pos="1" name="os.edition"/>
337
- <param pos="2" name="os.build"/>
338
- </fingerprint>
339
-
340
- <fingerprint pattern="^Windows MultiPoint Server 2012 (?:\w+|\w+ \w+|\w+ \w+ \w+) (\d+) (Service Pack \d+)$">
341
- <description>Windows MultiPoint Server 2012 (SP)</description>
342
- <example os.build="9201" os.version="Service Pack 1">Windows MultiPoint Server 2012 Premium 9201 Service Pack 1</example>
343
- <param pos="0" name="os.certainty" value="1.0"/>
344
- <param pos="0" name="os.vendor" value="Microsoft"/>
345
- <param pos="0" name="os.product" value="Windows Server 2012"/>
346
- <param pos="0" name="os.edition" value="MultiPoint"/>
347
- <param pos="1" name="os.build"/>
348
- <param pos="2" name="os.version"/>
349
- </fingerprint>
350
-
351
- <fingerprint pattern="^Windows MultiPoint Server 2012 (?:\w+|\w+ \w+|\w+ \w+ \w+) (\d+)$">
352
- <description>Windows MultiPoint Server 2012</description>
353
- <example os.build="9200">Windows MultiPoint Server 2012 Premium 9200</example>
354
- <param pos="0" name="os.certainty" value="1.0"/>
355
- <param pos="0" name="os.vendor" value="Microsoft"/>
356
- <param pos="0" name="os.product" value="Windows Server 2012"/>
357
- <param pos="0" name="os.edition" value="MultiPoint"/>
358
- <param pos="1" name="os.build"/>
359
- </fingerprint>
360
-
361
- <!-- Windows 10 Preview -->
362
- <fingerprint pattern="^Windows 10 (\w+|\w+ \w+|\w+ \w+ \w+) Insider Preview (\d+)$">
363
- <description>Windows 10 Enterprise Insider Preview</description>
364
- <example os.build="10130" os.edition="Enterprise">Windows 10 Enterprise Insider Preview 10130</example>
365
- <param pos="0" name="os.certainty" value="1.0"/>
366
- <param pos="0" name="os.vendor" value="Microsoft"/>
367
- <param pos="0" name="os.product" value="Windows 10"/>
368
- <param pos="1" name="os.edition"/>
369
- <param pos="2" name="os.build"/>
370
- </fingerprint>
371
-
372
- <fingerprint pattern="^Windows 10 (\w+|\w+ \w+|\w+ \w+ \w+) (\d+)$">
373
- <description>Windows 10</description>
374
- <example os.build="10130" os.edition="Enterprise">Windows 10 Enterprise 10130</example>
375
- <example os.build="10130" os.edition="Mobile Enterprise">Windows 10 Mobile Enterprise 10130</example>
376
- <example os.build="10130" os.edition="Mobile">Windows 10 Mobile 10130</example>
377
- <example os.build="10130" os.edition="Home">Windows 10 Home 10130</example>
378
- <example os.build="10130" os.edition="Education">Windows 10 Education 10130</example>
379
- <example os.build="10130" os.edition="Professional">Windows 10 Professional 10130</example>
380
- <param pos="0" name="os.certainty" value="1.0"/>
381
- <param pos="0" name="os.vendor" value="Microsoft"/>
382
- <param pos="0" name="os.product" value="Windows 10"/>
383
- <param pos="1" name="os.edition"/>
384
- <param pos="2" name="os.build"/>
385
- </fingerprint>
386
-
387
- <!-- Mac OS X -->
388
- <fingerprint pattern="^Samba (3\.0\.28a-apple)$">
389
- <description>Samba on OS X 10.6</description>
390
- <example service.version="3.0.28a-apple">Samba 3.0.28a-apple</example>
391
- <param pos="0" name="os.vendor" value="Apple"/>
392
- <param pos="0" name="os.family" value="Mac OS X"/>
393
- <param pos="0" name="os.product" value="Mac OS X"/>
394
- <param pos="0" name="os.device" value="General"/>
395
- <param pos="0" name="os.version" value="10.6"/>
396
- <param pos="0" name="service.vendor" value="Samba"/>
397
- <param pos="0" name="service.product" value="Samba"/>
398
- <param pos="1" name="service.version"/>
399
- </fingerprint>
400
-
401
- <fingerprint pattern="^Samba (3\.0\.25b-apple)$">
402
- <description>Samba on OS X 10.5</description>
403
- <example service.version="3.0.25b-apple">Samba 3.0.25b-apple</example>
404
- <param pos="0" name="os.vendor" value="Apple"/>
405
- <param pos="0" name="os.family" value="Mac OS X"/>
406
- <param pos="0" name="os.product" value="Mac OS X"/>
407
- <param pos="0" name="os.device" value="General"/>
408
- <param pos="0" name="os.version" value="10.5"/>
409
- <param pos="0" name="service.vendor" value="Samba"/>
410
- <param pos="0" name="service.product" value="Samba"/>
411
- <param pos="1" name="service.version"/>
412
- </fingerprint>
413
-
414
- <!-- TODO: Detect vendor, distribution, and package versions -->
415
- <fingerprint pattern="^Samba (\d\.\d+.\d+\w*)">
416
- <description>Samba</description>
417
- <example>Samba 3.0.24</example>
418
- <example>Samba 3.0.28a</example>
419
- <example>Samba 3.0.32-0.2-2210-SUSE-SL10.3</example>
420
- <example>Samba 3.6.3</example>
421
- <example>Samba 3.6.6</example>
422
- <example>Samba 3.6.9-151.el6_4.1</example>
423
- <param pos="0" name="service.vendor" value="Samba"/>
424
- <param pos="0" name="service.product" value="Samba"/>
425
- <param pos="1" name="service.version" />
426
- </fingerprint>
427
-
428
- <fingerprint pattern="^VxWorks">
429
- <description>VxWorks</description>
430
- <example>VxWorks</example>
431
- <param pos="0" name="os.certainty" value="0.5"/>
432
- <param pos="0" name="os.vendor" value="Wind River"/>
433
- <param pos="0" name="os.product" value="VxWorks"/>
434
- <param pos="0" name="service.vendor" value="Wind River"/>
435
- <param pos="0" name="service.product" value="VxWorks CIFS"/>
436
- </fingerprint>
437
-
6
+ <fingerprint pattern="^(Windows NT \d\.\d+)$">
7
+ <description>Windows NT</description>
8
+ <example os.product="Windows NT 4.0">Windows NT 4.0</example>
9
+ <param pos="0" name="os.certainty" value="1.0"/>
10
+ <param pos="0" name="os.vendor" value="Microsoft"/>
11
+ <param pos="1" name="os.product"/>
12
+ </fingerprint>
13
+ <fingerprint pattern="^(Windows (?:95|98|ME))$">
14
+ <description>Windows 95/98/ME</description>
15
+ <example os.product="Windows 95">Windows 95</example>
16
+ <example os.product="Windows 98">Windows 98</example>
17
+ <param pos="0" name="os.certainty" value="1.0"/>
18
+ <param pos="0" name="os.vendor" value="Microsoft"/>
19
+ <param pos="1" name="os.product"/>
20
+ </fingerprint>
21
+ <fingerprint pattern="^Windows 5\.0$">
22
+ <description>Windows 2000</description>
23
+ <example>Windows 5.0</example>
24
+ <param pos="0" name="os.certainty" value="1.0"/>
25
+ <param pos="0" name="os.vendor" value="Microsoft"/>
26
+ <param pos="0" name="os.product" value="Windows 2000"/>
27
+ </fingerprint>
28
+ <fingerprint pattern="^Windows 5\.1$">
29
+ <description>Windows XP</description>
30
+ <example>Windows 5.1</example>
31
+ <param pos="0" name="os.certainty" value="1.0"/>
32
+ <param pos="0" name="os.vendor" value="Microsoft"/>
33
+ <param pos="0" name="os.product" value="Windows XP"/>
34
+ </fingerprint>
35
+ <fingerprint pattern="^Windows XP (\d+) (Service Pack \d+)$">
36
+ <description>Windows XP</description>
37
+ <example os.build="2600" os.version="Service Pack 1">Windows XP 2600 Service Pack 1</example>
38
+ <param pos="0" name="os.certainty" value="1.0"/>
39
+ <param pos="0" name="os.vendor" value="Microsoft"/>
40
+ <param pos="0" name="os.product" value="Windows XP"/>
41
+ <param pos="1" name="os.build"/>
42
+ <param pos="2" name="os.version"/>
43
+ </fingerprint>
44
+ <fingerprint pattern="^Windows XP (\d+)$">
45
+ <description>Windows XP</description>
46
+ <example os.build="2600">Windows XP 2600</example>
47
+ <param pos="0" name="os.certainty" value="1.0"/>
48
+ <param pos="0" name="os.vendor" value="Microsoft"/>
49
+ <param pos="0" name="os.product" value="Windows XP"/>
50
+ <param pos="1" name="os.build"/>
51
+ </fingerprint>
52
+ <fingerprint pattern="^Windows \.NET">
53
+ <description>Windows Server 2003 Beta</description>
54
+ <param pos="0" name="os.certainty" value="1.0"/>
55
+ <param pos="0" name="os.vendor" value="Microsoft"/>
56
+ <param pos="0" name="os.product" value="Windows Server 2003"/>
57
+ <param pos="0" name="os.version" value="Beta"/>
58
+ </fingerprint>
59
+ <fingerprint pattern="^Windows Server 2003 R2 (\d+)$">
60
+ <description>Windows Server 2003 R2</description>
61
+ <param pos="0" name="os.certainty" value="1.0"/>
62
+ <param pos="0" name="os.vendor" value="Microsoft"/>
63
+ <param pos="0" name="os.product" value="Windows Server 2003 R2"/>
64
+ <param pos="1" name="os.build"/>
65
+ </fingerprint>
66
+ <fingerprint pattern="^Windows Server 2003 R2 (\d+) (Service Pack \d+)$">
67
+ <description>Windows Server 2003 R2 (SP)</description>
68
+ <example os.build="3790" os.version="Service Pack 2">Windows Server 2003 R2 3790 Service Pack 2</example>
69
+ <param pos="0" name="os.certainty" value="1.0"/>
70
+ <param pos="0" name="os.vendor" value="Microsoft"/>
71
+ <param pos="0" name="os.product" value="Windows Server 2003 R2"/>
72
+ <param pos="1" name="os.build"/>
73
+ <param pos="2" name="os.version"/>
74
+ </fingerprint>
75
+ <fingerprint pattern="^Windows Server 2003 (\d+)$">
76
+ <description>Windows Server 2003</description>
77
+ <example os.build="3790">Windows Server 2003 3790</example>
78
+ <param pos="0" name="os.certainty" value="1.0"/>
79
+ <param pos="0" name="os.vendor" value="Microsoft"/>
80
+ <param pos="0" name="os.product" value="Windows Server 2003"/>
81
+ <param pos="1" name="os.build"/>
82
+ </fingerprint>
83
+ <fingerprint pattern="^Windows Server 2003 (\d+) (Service Pack \d+)$">
84
+ <description>Windows Server 2003 (SP)</description>
85
+ <example os.build="3790" os.version="Service Pack 1">Windows Server 2003 3790 Service Pack 1</example>
86
+ <example os.build="3790" os.version="Service Pack 2">Windows Server 2003 3790 Service Pack 2</example>
87
+ <param pos="0" name="os.certainty" value="1.0"/>
88
+ <param pos="0" name="os.vendor" value="Microsoft"/>
89
+ <param pos="0" name="os.product" value="Windows Server 2003"/>
90
+ <param pos="1" name="os.build"/>
91
+ <param pos="2" name="os.version"/>
92
+ </fingerprint>
93
+ <!-- Note that 2008 SP1 is technically "2008 Gold" according to Microsoft -->
94
+ <fingerprint pattern="^Windows Server \(R\) 2008 (\w+|\w+ \w+|\w+ \w+ \w+)(?: (?:with|without) Hyper-V|) (\d+) (Service Pack \d+)$">
95
+ <description>Windows Server 2008</description>
96
+ <example os.edition="Enterprise" os.version="Service Pack 1">Windows Server (R) 2008 Enterprise without Hyper-V 6001 Service Pack 1</example>
97
+ <example os.edition="Enterprise" os.version="Service Pack 2">Windows Server (R) 2008 Enterprise 6002 Service Pack 2</example>
98
+ <param pos="0" name="os.certainty" value="1.0"/>
99
+ <param pos="0" name="os.vendor" value="Microsoft"/>
100
+ <param pos="0" name="os.product" value="Windows Server 2008"/>
101
+ <param pos="1" name="os.edition"/>
102
+ <param pos="2" name="os.build"/>
103
+ <param pos="3" name="os.version"/>
104
+ </fingerprint>
105
+ <fingerprint pattern="^Windows \(R\) Web Server 2008 (\d+) (Service Pack \d+)$">
106
+ <description>Windows Web Server 2008 (SP)</description>
107
+ <example os.edition="Web" os.version="Service Pack 2">Windows (R) Web Server 2008 6002 Service Pack 2</example>
108
+ <param pos="0" name="os.certainty" value="1.0"/>
109
+ <param pos="0" name="os.vendor" value="Microsoft"/>
110
+ <param pos="0" name="os.product" value="Windows Server 2008"/>
111
+ <param pos="0" name="os.edition" value="Web"/>
112
+ <param pos="1" name="os.build"/>
113
+ <param pos="2" name="os.version"/>
114
+ </fingerprint>
115
+ <fingerprint pattern="^Windows \(R\) Web Server 2008 (\d+)$">
116
+ <description>Windows Web Server 2008</description>
117
+ <example>Windows (R) Web Server 2008 6002</example>
118
+ <param pos="0" name="os.certainty" value="1.0"/>
119
+ <param pos="0" name="os.vendor" value="Microsoft"/>
120
+ <param pos="0" name="os.product" value="Windows Server 2008"/>
121
+ <param pos="0" name="os.edition" value="Web"/>
122
+ <param pos="1" name="os.build"/>
123
+ </fingerprint>
124
+ <!-- TODO: Need an example string -->
125
+ <fingerprint pattern="^Windows \(R\) Storage Server 2008 (?:\w+|\w+ \w+|\w+ \w+ \w+) (\d+) (Service Pack \d+)$">
126
+ <description>Windows Server 2008 Storage (SP)</description>
127
+ <param pos="0" name="os.certainty" value="1.0"/>
128
+ <param pos="0" name="os.vendor" value="Microsoft"/>
129
+ <param pos="0" name="os.product" value="Windows Server 2008"/>
130
+ <param pos="0" name="os.edition" value="Storage"/>
131
+ <param pos="1" name="os.build"/>
132
+ <param pos="2" name="os.version"/>
133
+ </fingerprint>
134
+ <!-- TODO: Need an example string -->
135
+ <fingerprint pattern="^Windows \(R\) Storage Server 2008 (?:\w+|\w+ \w+|\w+ \w+ \w+) (\d+)$">
136
+ <description>Windows Web Server 2008 Storage</description>
137
+ <param pos="0" name="os.certainty" value="1.0"/>
138
+ <param pos="0" name="os.vendor" value="Microsoft"/>
139
+ <param pos="0" name="os.product" value="Windows Server 2008"/>
140
+ <param pos="0" name="os.edition" value="Storage"/>
141
+ <param pos="1" name="os.build"/>
142
+ </fingerprint>
143
+ <fingerprint pattern="^Windows Server 2008 HPC Edition (\d+) (Service Pack \d+)$">
144
+ <description>Windows Server 2008 HPC</description>
145
+ <example>Windows Server 2008 HPC Edition 7601 Service Pack 1</example>
146
+ <param pos="0" name="os.certainty" value="1.0"/>
147
+ <param pos="0" name="os.vendor" value="Microsoft"/>
148
+ <param pos="0" name="os.product" value="Windows Server 2008"/>
149
+ <param pos="0" name="os.edition" value="HPC"/>
150
+ <param pos="1" name="os.build"/>
151
+ <param pos="2" name="os.version"/>
152
+ </fingerprint>
153
+ <!-- TODO: Need an example string -->
154
+ <fingerprint pattern="^Windows Server 2008 HPC Edition (\d+)$">
155
+ <description>Windows Web Server 2008 HPC</description>
156
+ <example>Windows Server 2008 HPC Edition 7600</example>
157
+ <param pos="0" name="os.certainty" value="1.0"/>
158
+ <param pos="0" name="os.vendor" value="Microsoft"/>
159
+ <param pos="0" name="os.product" value="Windows Server 2008"/>
160
+ <param pos="0" name="os.edition" value="HPC"/>
161
+ <param pos="1" name="os.build"/>
162
+ </fingerprint>
163
+ <!-- 2008 R2 -->
164
+ <fingerprint pattern="^Windows Server 2008 R2 (\w+|\w+ \w+|\w+ \w+ \w+) (\d+) (Service Pack \d+)$">
165
+ <description>Windows Server 2008</description>
166
+ <example>Windows Server 2008 R2 Enterprise 7601 Service Pack 1</example>
167
+ <example>Windows Server 2008 R2 Standard 7601 Service Pack 1</example>
168
+ <param pos="0" name="os.certainty" value="1.0"/>
169
+ <param pos="0" name="os.vendor" value="Microsoft"/>
170
+ <param pos="0" name="os.product" value="Windows Server 2008 R2"/>
171
+ <param pos="1" name="os.edition"/>
172
+ <param pos="2" name="os.build"/>
173
+ <param pos="3" name="os.version"/>
174
+ </fingerprint>
175
+ <fingerprint pattern="^Windows Server 2008 R2 (\w+|\w+ \w+|\w+ \w+ \w+) (\d+)$">
176
+ <description>Windows Server 2008 R2</description>
177
+ <example os.edition="Enterprise">Windows Server 2008 R2 Enterprise 7600</example>
178
+ <example os.edition="Standard">Windows Server 2008 R2 Standard 7600</example>
179
+ <example os.edition="Datacenter">Windows Server 2008 R2 Datacenter 7600</example>
180
+ <param pos="0" name="os.certainty" value="1.0"/>
181
+ <param pos="0" name="os.vendor" value="Microsoft"/>
182
+ <param pos="0" name="os.product" value="Windows Server 2008 R2"/>
183
+ <param pos="1" name="os.edition"/>
184
+ <param pos="2" name="os.build"/>
185
+ </fingerprint>
186
+ <fingerprint pattern="^Windows Web Server 2008 R2 (\d+) (Service Pack \d+)$">
187
+ <description>Windows Server 2008 R2 Web</description>
188
+ <example os.version="Service Pack 1">Windows Web Server 2008 R2 7601 Service Pack 1</example>
189
+ <param pos="0" name="os.certainty" value="1.0"/>
190
+ <param pos="0" name="os.vendor" value="Microsoft"/>
191
+ <param pos="0" name="os.product" value="Windows Server 2008 R2"/>
192
+ <param pos="0" name="os.edition" value="Web"/>
193
+ <param pos="1" name="os.build"/>
194
+ <param pos="2" name="os.version"/>
195
+ </fingerprint>
196
+ <fingerprint pattern="^Windows Web Server 2008 R2 (\d+)$">
197
+ <description>Windows Web Server 2008 R2 Web</description>
198
+ <example>Windows Web Server 2008 R2 7600</example>
199
+ <param pos="0" name="os.certainty" value="1.0"/>
200
+ <param pos="0" name="os.vendor" value="Microsoft"/>
201
+ <param pos="0" name="os.product" value="Windows Server 2008 R2"/>
202
+ <param pos="0" name="os.edition" value="Web"/>
203
+ <param pos="1" name="os.build"/>
204
+ </fingerprint>
205
+ <fingerprint pattern="^Windows Vista \(TM\) (\w+|\w+ \w+|\w+ \w+ \w+) (\d+) (Service Pack \d+)$">
206
+ <description>Windows Vista (SP)</description>
207
+ <example os.edition="Home Premium" os.version="Service Pack 2">Windows Vista (TM) Home Premium 6002 Service Pack 2</example>
208
+ <param pos="0" name="os.certainty" value="1.0"/>
209
+ <param pos="0" name="os.vendor" value="Microsoft"/>
210
+ <param pos="0" name="os.product" value="Windows Vista"/>
211
+ <param pos="1" name="os.edition"/>
212
+ <param pos="2" name="os.build"/>
213
+ <param pos="3" name="os.version"/>
214
+ </fingerprint>
215
+ <fingerprint pattern="^Windows Vista \(TM\) (\w+|\w+ \w+|\w+ \w+ \w+) (\d+)$">
216
+ <description>Windows Vista</description>
217
+ <example os.edition="Home Premium">Windows Vista (TM) Home Premium 6000</example>
218
+ <param pos="0" name="os.certainty" value="1.0"/>
219
+ <param pos="0" name="os.vendor" value="Microsoft"/>
220
+ <param pos="0" name="os.product" value="Windows Vista"/>
221
+ <param pos="1" name="os.edition"/>
222
+ <param pos="2" name="os.build"/>
223
+ </fingerprint>
224
+ <fingerprint pattern="^(Windows (?:7|8|8\.1)(?:| RT)) (\w+|\w+ \w+|\w+ \w+ \w+) (\d+) (Service Pack \d+)$">
225
+ <description>Windows 7/8 (SP + Edition)</description>
226
+ <example os.edition="Enterprise" os.version="Service Pack 1">Windows 7 Enterprise 7601 Service Pack 1</example>
227
+ <example os.edition="Starter" os.version="Service Pack 1">Windows 7 Starter 7601 Service Pack 1</example>
228
+ <param pos="0" name="os.certainty" value="1.0"/>
229
+ <param pos="0" name="os.vendor" value="Microsoft"/>
230
+ <param pos="1" name="os.product"/>
231
+ <param pos="2" name="os.edition"/>
232
+ <param pos="3" name="os.build"/>
233
+ <param pos="4" name="os.version"/>
234
+ </fingerprint>
235
+ <fingerprint pattern="^(Windows (?:7|8|8\.1)(?:| RT)) (\d+) (Service Pack \d+)$">
236
+ <description>Windows 7/8 (SP)</description>
237
+ <example os.version="Service Pack 1">Windows 7 7601 Service Pack 1</example>
238
+ <param pos="0" name="os.certainty" value="1.0"/>
239
+ <param pos="0" name="os.vendor" value="Microsoft"/>
240
+ <param pos="1" name="os.product"/>
241
+ <param pos="2" name="os.build"/>
242
+ <param pos="3" name="os.version"/>
243
+ </fingerprint>
244
+ <fingerprint pattern="^(Windows (?:7|8|8\.1)(?:| RT)) (\w+|\w+ \w+|\w+ \w+ \w+) (\d+)$">
245
+ <description>Windows 7/8 (Edition)</description>
246
+ <example os.edition="Enterprise">Windows 7 Enterprise 7600</example>
247
+ <example os.edition="Enterprise">Windows 8.1 Enterprise 9600</example>
248
+ <example os.edition="Enterprise">Windows 8 Enterprise 9200</example>
249
+ <param pos="0" name="os.certainty" value="1.0"/>
250
+ <param pos="0" name="os.vendor" value="Microsoft"/>
251
+ <param pos="1" name="os.product"/>
252
+ <param pos="2" name="os.edition"/>
253
+ <param pos="3" name="os.build"/>
254
+ </fingerprint>
255
+ <fingerprint pattern="^(Windows (?:7|8|8\.1)(?:| RT)) (\d+)$">
256
+ <description>Windows 7/8</description>
257
+ <example>Windows 8 9200</example>
258
+ <param pos="0" name="os.certainty" value="1.0"/>
259
+ <param pos="0" name="os.vendor" value="Microsoft"/>
260
+ <param pos="1" name="os.product"/>
261
+ <param pos="2" name="os.build"/>
262
+ </fingerprint>
263
+ <!-- Windows 2012 R2 matches go first to simplify the regular expressions -->
264
+ <!-- TODO: Need an example string -->
265
+ <fingerprint pattern="^Windows Server 2012 R2 (\w+|\w+ \w+|\w+ \w+ \w+) (\d+) (Service Pack \d+)$">
266
+ <description>Windows Server 2012 R2 (SP)</description>
267
+ <param pos="0" name="os.certainty" value="1.0"/>
268
+ <param pos="0" name="os.vendor" value="Microsoft"/>
269
+ <param pos="0" name="os.product" value="Windows Server 2012 R2"/>
270
+ <param pos="1" name="os.edition"/>
271
+ <param pos="2" name="os.build"/>
272
+ <param pos="3" name="os.version"/>
273
+ </fingerprint>
274
+ <fingerprint pattern="^Windows Server 2012 R2 (\w+|\w+ \w+|\w+ \w+ \w+) (\d+)$">
275
+ <description>Windows Server 2012 R2</description>
276
+ <example os.edition="Standard">Windows Server 2012 R2 Standard 9600</example>
277
+ <param pos="0" name="os.certainty" value="1.0"/>
278
+ <param pos="0" name="os.vendor" value="Microsoft"/>
279
+ <param pos="0" name="os.product" value="Windows Server 2012 R2"/>
280
+ <param pos="1" name="os.edition"/>
281
+ <param pos="2" name="os.build"/>
282
+ </fingerprint>
283
+ <!-- TODO: Need an example string -->
284
+ <fingerprint pattern="^Windows Server 2012 (\w+|\w+ \w+|\w+ \w+ \w+) (\d+) (Service Pack \d+)$">
285
+ <description>Windows Server 2012 (SP)</description>
286
+ <param pos="0" name="os.certainty" value="1.0"/>
287
+ <param pos="0" name="os.vendor" value="Microsoft"/>
288
+ <param pos="0" name="os.product" value="Windows Server 2012"/>
289
+ <param pos="1" name="os.edition"/>
290
+ <param pos="2" name="os.build"/>
291
+ <param pos="3" name="os.version"/>
292
+ </fingerprint>
293
+ <fingerprint pattern="^Windows Server 2012 (\w+|\w+ \w+|\w+ \w+ \w+) (\d+)$">
294
+ <description>Windows Server 2012</description>
295
+ <example>Windows Server 2012 Standard 9200</example>
296
+ <param pos="0" name="os.certainty" value="1.0"/>
297
+ <param pos="0" name="os.vendor" value="Microsoft"/>
298
+ <param pos="0" name="os.product" value="Windows Server 2012"/>
299
+ <param pos="1" name="os.edition"/>
300
+ <param pos="2" name="os.build"/>
301
+ </fingerprint>
302
+ <fingerprint pattern="^Windows MultiPoint Server 2012 (?:\w+|\w+ \w+|\w+ \w+ \w+) (\d+) (Service Pack \d+)$">
303
+ <description>Windows MultiPoint Server 2012 (SP)</description>
304
+ <example os.build="9201" os.version="Service Pack 1">Windows MultiPoint Server 2012 Premium 9201 Service Pack 1</example>
305
+ <param pos="0" name="os.certainty" value="1.0"/>
306
+ <param pos="0" name="os.vendor" value="Microsoft"/>
307
+ <param pos="0" name="os.product" value="Windows Server 2012"/>
308
+ <param pos="0" name="os.edition" value="MultiPoint"/>
309
+ <param pos="1" name="os.build"/>
310
+ <param pos="2" name="os.version"/>
311
+ </fingerprint>
312
+ <fingerprint pattern="^Windows MultiPoint Server 2012 (?:\w+|\w+ \w+|\w+ \w+ \w+) (\d+)$">
313
+ <description>Windows MultiPoint Server 2012</description>
314
+ <example os.build="9200">Windows MultiPoint Server 2012 Premium 9200</example>
315
+ <param pos="0" name="os.certainty" value="1.0"/>
316
+ <param pos="0" name="os.vendor" value="Microsoft"/>
317
+ <param pos="0" name="os.product" value="Windows Server 2012"/>
318
+ <param pos="0" name="os.edition" value="MultiPoint"/>
319
+ <param pos="1" name="os.build"/>
320
+ </fingerprint>
321
+ <!-- Windows 10 Preview -->
322
+ <fingerprint pattern="^Windows 10 (\w+|\w+ \w+|\w+ \w+ \w+) Insider Preview (\d+)$">
323
+ <description>Windows 10 Enterprise Insider Preview</description>
324
+ <example os.build="10130" os.edition="Enterprise">Windows 10 Enterprise Insider Preview 10130</example>
325
+ <param pos="0" name="os.certainty" value="1.0"/>
326
+ <param pos="0" name="os.vendor" value="Microsoft"/>
327
+ <param pos="0" name="os.product" value="Windows 10"/>
328
+ <param pos="1" name="os.edition"/>
329
+ <param pos="2" name="os.build"/>
330
+ </fingerprint>
331
+ <fingerprint pattern="^Windows 10 (\w+|\w+ \w+|\w+ \w+ \w+) (\d+)$">
332
+ <description>Windows 10</description>
333
+ <example os.build="10130" os.edition="Enterprise">Windows 10 Enterprise 10130</example>
334
+ <example os.build="10130" os.edition="Mobile Enterprise">Windows 10 Mobile Enterprise 10130</example>
335
+ <example os.build="10130" os.edition="Mobile">Windows 10 Mobile 10130</example>
336
+ <example os.build="10130" os.edition="Home">Windows 10 Home 10130</example>
337
+ <example os.build="10130" os.edition="Education">Windows 10 Education 10130</example>
338
+ <example os.build="10130" os.edition="Professional">Windows 10 Professional 10130</example>
339
+ <param pos="0" name="os.certainty" value="1.0"/>
340
+ <param pos="0" name="os.vendor" value="Microsoft"/>
341
+ <param pos="0" name="os.product" value="Windows 10"/>
342
+ <param pos="1" name="os.edition"/>
343
+ <param pos="2" name="os.build"/>
344
+ </fingerprint>
345
+ <!-- Mac OS X -->
346
+ <fingerprint pattern="^Samba (3\.0\.28a-apple)$">
347
+ <description>Samba on OS X 10.6</description>
348
+ <example service.version="3.0.28a-apple">Samba 3.0.28a-apple</example>
349
+ <param pos="0" name="os.vendor" value="Apple"/>
350
+ <param pos="0" name="os.family" value="Mac OS X"/>
351
+ <param pos="0" name="os.product" value="Mac OS X"/>
352
+ <param pos="0" name="os.device" value="General"/>
353
+ <param pos="0" name="os.version" value="10.6"/>
354
+ <param pos="0" name="service.vendor" value="Samba"/>
355
+ <param pos="0" name="service.product" value="Samba"/>
356
+ <param pos="1" name="service.version"/>
357
+ </fingerprint>
358
+ <fingerprint pattern="^Samba (3\.0\.25b-apple)$">
359
+ <description>Samba on OS X 10.5</description>
360
+ <example service.version="3.0.25b-apple">Samba 3.0.25b-apple</example>
361
+ <param pos="0" name="os.vendor" value="Apple"/>
362
+ <param pos="0" name="os.family" value="Mac OS X"/>
363
+ <param pos="0" name="os.product" value="Mac OS X"/>
364
+ <param pos="0" name="os.device" value="General"/>
365
+ <param pos="0" name="os.version" value="10.5"/>
366
+ <param pos="0" name="service.vendor" value="Samba"/>
367
+ <param pos="0" name="service.product" value="Samba"/>
368
+ <param pos="1" name="service.version"/>
369
+ </fingerprint>
370
+ <!-- TODO: Detect vendor, distribution, and package versions -->
371
+ <fingerprint pattern="^Samba (\d\.\d+.\d+\w*)">
372
+ <description>Samba</description>
373
+ <example>Samba 3.0.24</example>
374
+ <example>Samba 3.0.28a</example>
375
+ <example>Samba 3.0.32-0.2-2210-SUSE-SL10.3</example>
376
+ <example>Samba 3.6.3</example>
377
+ <example>Samba 3.6.6</example>
378
+ <example>Samba 3.6.9-151.el6_4.1</example>
379
+ <param pos="0" name="service.vendor" value="Samba"/>
380
+ <param pos="0" name="service.product" value="Samba"/>
381
+ <param pos="1" name="service.version"/>
382
+ </fingerprint>
383
+ <fingerprint pattern="^VxWorks">
384
+ <description>VxWorks</description>
385
+ <example>VxWorks</example>
386
+ <param pos="0" name="os.certainty" value="0.5"/>
387
+ <param pos="0" name="os.vendor" value="Wind River"/>
388
+ <param pos="0" name="os.product" value="VxWorks"/>
389
+ <param pos="0" name="service.vendor" value="Wind River"/>
390
+ <param pos="0" name="service.product" value="VxWorks CIFS"/>
391
+ </fingerprint>
438
392
  </fingerprints>