recog 2.0.13 → 2.0.14

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