2 # $OpenBSD
: pf.os
,v
1.21 2006/07/28 21:51:12 david Exp $
3 # passive OS fingerprinting
4 #
-------------------------
6 # SYN signatures. Those signatures work
for SYN packets only
(duh
!).
8 #
(C
) Copyright
2000-2003 by Michal Zalewski
<lcamtuf@coredump.cx
>
9 #
(C
) Copyright
2003 by Mike Frantzen
<frantzen@w4g.org
>
11 # Permission to use
, copy
, modify
, and distribute
this software
for any
12 # purpose with or without fee is hereby granted
, provided that the above
13 # copyright notice and
this permission notice appear in all copies.
15 # THE SOFTWARE IS PROVIDED
"AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
16 # WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
17 # MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR
18 # ANY SPECIAL
, DIRECT
, INDIRECT
, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
19 # WHATSOEVER RESULTING FROM LOSS OF USE
, DATA OR PROFITS
, WHETHER IN AN
20 # ACTION OF CONTRACT
, NEGLIGENCE OR OTHER TORTIOUS ACTION
, ARISING OUT OF
21 # OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
24 # This fingerprint database is adapted from Michal Zalewski's p0f passive
25 # operating system package. The last database sync was from a Nov
3 2003
29 # Each line in
this file specifies a single fingerprint. Please read the
30 # information below carefully before attempting to append any signatures
31 # reported as UNKNOWN to
this file to avoid mistakes.
33 # We use the following set metrics
for fingerprinting
:
35 #
- Window size
(WSS
) - a highly OS dependent setting used
for TCP
/IP
36 # performance control
(max. amount of data to be sent without ACK
).
37 # Some systems use a fixed value
for initial packets. On other
38 # systems
, it is a multiple of MSS or MTU
(MSS
+40). In some rare
39 # cases
, the value is just arbitrary.
41 # NEW SIGNATURE
: if p0f reported a special value of 'Snn'
, the number
42 # appears to be a multiple of MSS
(MSS
*nn
); a special value of 'Tnn'
43 # means it is a multiple of MTU
((MSS
+40)*nn
). Unless you notice the
44 # value of nn is not fixed
(unlikely
), just copy the Snn or Tnn token
45 # literally. If you know
this device has a simple stack and a fixed
46 # MTU
, you can however multiply S value by MSS
, or T value by MSS
+40,
47 # and put it instead of Snn or Tnn.
49 # If WSS otherwise looks like a fixed value
(for example a multiple
50 # of two
), or
if you can confirm the value is fixed
, please quote
51 # it literally. If there's no apparent pattern in WSS chosen
, you
52 # should consider wildcarding
this value.
54 #
- Overall packet size
- a
function of all IP and TCP options and bugs.
56 # NEW SIGNATURE
: Copy
this value literally.
58 #
- Initial TTL
- We check the actual TTL of a received packet. It can't
59 # be higher than the initial TTL
, and also shouldn't be dramatically
60 # lower
(maximum distance is defined as
40 hops
).
62 # NEW SIGNATURE
: *Never
* copy TTL from a p0f
-reported signature literally.
63 # You need to determine the initial TTL. The best way to do it is to
64 # check the documentation
for a remote system
, or check its settings.
65 # A fairly good method is to simply round the observed TTL up to
66 #
32, 64, 128, or
255, but it should be noted that some obscure devices
67 # might not use round TTLs
(in particular
, some shoddy appliances use
68 #
"original" initial TTL settings
). If not sure
, you can see how many
69 # hops you're away from the remote party with traceroute or mtr.
71 #
- Don't fragment flag
(DF
) - some modern OSes set
this to implement PMTU
72 # discovery. Others do not bother.
74 # NEW SIGNATURE
: Copy
this value literally.
76 #
- Maximum segment size
(MSS
) - this setting is usually link
-dependent. P0f
77 # uses it to determine link type of the remote host.
79 # NEW SIGNATURE
: Always wildcard
this value
, except
for rare cases when
80 # you have an appliance with a fixed value
, know the system supports only
81 # a very limited number of network interface types
, or know the system
82 # is using a value it pulled out of nowhere. Specific unique MSS
83 # can be used to tell Google crawlbots from the rest of the population.
85 #
- Window scaling
(WSCALE
) - this feature is used to scale WSS.
86 # It
extends the size of a TCP
/IP window to
32 bits. Some modern
87 # systems implement
this feature.
89 # NEW SIGNATURE
: Observe several signatures. Initial WSCALE is often set
90 # to zero or other low value. There's usually no need to wildcard
this
93 #
- Timestamp
- some systems that implement timestamps set them to
94 # zero in the initial SYN. This case is detected and handled appropriately.
96 #
- Selective ACK permitted
- a flag set by systems that implement
97 # selective ACK functionality.
99 #
- The sequence of TCP all options
(MSS
, window scaling
, selective ACK
100 # permitted
, timestamp
, NOP
). Other than the options previously
101 # discussed
, p0f also checks
for timestamp option
(a silly
102 # extension to broadcast your uptime
;-), NOP options
(used
for
103 # header padding
) and sackOK option
(selective ACK feature
).
105 # NEW SIGNATURE
: Copy the sequence literally.
107 # To wildcard any value
(except
for initial TTL or TCP options
), replace
108 # it with '
*'. You can also use a modulo operator to match any values
109 # that divide by nnn
- '
%nnn'.
111 # Fingerprint entry format
:
113 # wwww
:ttt
:D
:ss
:OOO...
:OS
:Version
:Subtype
:Details
115 # wwww
- window size
(can be
*, %nnn
, Snn or Tnn
). The special values
116 #
"S" and
"T" which are a multiple of MSS or a multiple of MTU
119 # D
- don't fragment bit
(0 - not set
, 1 - set
)
120 # ss
- overall SYN packet size
121 # OOO
- option value and order specification
(see below
)
122 # OS
- OS genre
(Linux
, Solaris
, Windows
)
123 # Version
- OS Version
(2.0.27 on x86
, etc
)
124 # Subtype
- OS subtype or patchlevel
(SP3
, lo0
)
125 # details
- Generic OS details
127 # If OS genre starts with '
*'
, p0f will not show distance
, link type
128 # and timestamp data. It is useful
for userland TCP
/IP stacks of
129 # network scanners and so on
, where many settings are randomized or
132 # If OS genre starts with @
, it denotes an approximate hit
for a group
133 # of operating systems
(signature reporting still enabled in
this case
).
134 # Use
this feature at the end of
this file to
catch cases
for which
135 # you don't have a precise match
, but can tell it's Windows or FreeBSD
136 # or whatnot by looking at
, say
, flag layout alone.
138 # Option block description is a list of comma or space separated
139 # options in the order they appear in the packet
:
142 # Wnnn
- window scaling option
, value nnn
(or
* or
%nnn
)
143 # Mnnn
- maximum segment size option
, value nnn
(or
* or
%nnn
)
144 # S
- selective ACK OK
146 # T0
- timestamp with a zero value
148 # To denote no TCP options
, use a single '.'.
150 # Please report any additions to
this file
, or any inaccuracies or
151 # problems spotted
, to the maintainers
: lcamtuf@coredump.cx
,
152 # frantzen@openbsd.org and bugs@openbsd.org with a tcpdump packet
153 # capture of the relevant SYN packet
(s
)
155 # A test and submission page is available at
156 # http
://lcamtuf.coredump.cx/p0f-help/
159 # WARNING WARNING WARNING
160 #
-----------------------
162 # Do not add a system X as OS Y just because NMAP says so. It is often
163 # the case that X is a NAT firewall. While nmap is talking to the
164 # device itself
, p0f is fingerprinting the guy behind the firewall
167 # When in doubt
, use common sense
, don't add something that looks like
168 # a completely different system as Linux or FreeBSD or LinkSys router.
169 # Check DNS name
, establish a connection to the remote host and look
170 # at SYN
+ACK
- does it look similar?
172 # Some users tweak their TCP
/IP settings
- enable or disable RFC1323
173 # functionality
, enable or disable timestamps or selective ACK
,
174 # disable PMTU discovery
, change MTU and so on. Always compare a
new rule
175 # to other fingerprints
for this system
, and verify the system isn't
176 #
"customized" before adding it. It is OK to add signature variants
177 # caused by a commonly used software
(personal firewalls
, security
178 # packages
, etc
), but it makes no sense to
try to add every single
179 # possible
/proc
/sys
/net
/ipv4 tweak on Linux or so.
181 # KEEP IN MIND
: Some packet firewalls configured to normalize outgoing
182 # traffic
(OpenBSD pf with
"scrub" enabled
, for example
) will
, well
,
183 # normalize packets. Signatures will not correspond to the originating
184 # system
(and probably not quite to the firewall either
).
186 # NOTE
: Try to keep
this file in some reasonable order
, from most to
187 # least likely systems. This will speed up operation. Also keep most
188 # generic and broad rules near the end.
191 ##########################
192 # Standard OS signatures #
193 ##########################
195 #
----------------- AIX
---------------------
197 # AIX is first because its signatures are close to NetBSD
, MacOS X and
198 # Linux
2.0, but it uses a fairly rare MSSes
, at least sometimes...
199 # This is a shoddy hack
, though.
201 45046:64:0:44:M
*: AIX
:4.3::AIX
4.3
202 16384:64:0:44:M512
: AIX
:4.3:2-3:AIX
4.3.2 and earlier
204 16384:64:0:60:M512
,N
,W
%2,N
,N
,T
: AIX
:4.3:3:AIX
4.3.3-5.2
205 16384:64:0:60:M512
,N
,W
%2,N
,N
,T
: AIX
:5.1-5.2::AIX
4.3.3-5.2
206 32768:64:0:60:M512
,N
,W
%2,N
,N
,T
: AIX
:4.3:3:AIX
4.3.3-5.2
207 32768:64:0:60:M512
,N
,W
%2,N
,N
,T
: AIX
:5.1-5.2::AIX
4.3.3-5.2
208 65535:64:0:60:M512
,N
,W
%2,N
,N
,T
: AIX
:4.3:3:AIX
4.3.3-5.2
209 65535:64:0:60:M512
,N
,W
%2,N
,N
,T
: AIX
:5.1-5.2::AIX
4.3.3-5.2
210 65535:64:0:64:M
*,N
,W1
,N
,N
,T
,N
,N
,S
: AIX
:5.3:ML1
:AIX
5.3 ML1
212 #
----------------- Linux
-------------------
214 # S1
:64:0:44:M
*:A
: Linux
:1.2::Linux
1.2.x
(XXX quirks support
)
215 512:64:0:44:M
*: Linux
:2.0:3x
:Linux
2.0.3x
216 16384:64:0:44:M
*: Linux
:2.0:3x
:Linux
2.0.3x
218 # Endian snafu
! Nelson says
"ha-ha":
219 2:64:0:44:M
*: Linux
:2.0:3x
:Linux
2.0.3x
(MkLinux
) on Mac
220 64:64:0:44:M
*: Linux
:2.0:3x
:Linux
2.0.3x
(MkLinux
) on Mac
223 S4
:64:1:60:M1360
,S
,T
,N
,W0
: Linux
:google
::Linux
(Google crawlbot
)
225 S2
:64:1:60:M
*,S
,T
,N
,W0
: Linux
:2.4::Linux
2.4 (big boy
)
226 S3
:64:1:60:M
*,S
,T
,N
,W0
: Linux
:2.4:.18-21:Linux
2.4.18 and newer
227 S4
:64:1:60:M
*,S
,T
,N
,W0
: Linux
:2.4::Linux
2.4/2.6 <= 2.6.7
228 S4
:64:1:60:M
*,S
,T
,N
,W0
: Linux
:2.6:.1-7:Linux
2.4/2.6 <= 2.6.7
229 S4
:64:1:60:M
*,S
,T
,N
,W7
: Linux
:2.6:8:Linux
2.6.8 and newer
(?
)
231 S3
:64:1:60:M
*,S
,T
,N
,W1
: Linux
:2.5::Linux
2.5 (sometimes
2.4)
232 S4
:64:1:60:M
*,S
,T
,N
,W1
: Linux
:2.5-2.6::Linux
2.5/2.6
233 S3
:64:1:60:M
*,S
,T
,N
,W2
: Linux
:2.5::Linux
2.5 (sometimes
2.4)
234 S4
:64:1:60:M
*,S
,T
,N
,W2
: Linux
:2.5::Linux
2.5 (sometimes
2.4)
236 S20
:64:1:60:M
*,S
,T
,N
,W0
: Linux
:2.2:20-25:Linux
2.2.20 and newer
237 S22
:64:1:60:M
*,S
,T
,N
,W0
: Linux
:2.2::Linux
2.2
238 S11
:64:1:60:M
*,S
,T
,N
,W0
: Linux
:2.2::Linux
2.2
240 # Popular cluster config scripts disable timestamps and
242 S4
:64:1:48:M1460
,N
,W0
: Linux
:2.4:cluster
:Linux
2.4 in cluster
244 # This needs to be investigated. On some systems
, WSS
245 # is selected as a multiple of MTU instead of MSS. I got
246 # many submissions
for this for many late versions of
2.4:
247 T4
:64:1:60:M1412
,S
,T
,N
,W0
: Linux
:2.4::Linux
2.4 (late
, uncommon
)
249 # This happens only over loopback
, but let's make folks happy
:
250 32767:64:1:60:M16396
,S
,T
,N
,W0
: Linux
:2.4:lo0
:Linux
2.4 (local
)
251 S8
:64:1:60:M3884
,S
,T
,N
,W0
: Linux
:2.2:lo0
:Linux
2.2 (local
)
254 16384:64:1:60:M
*,S
,T
,N
,W0
: Linux
:2.2:Opera
:Linux
2.2 (Opera?
)
255 32767:64:1:60:M
*,S
,T
,N
,W0
: Linux
:2.4:Opera
:Linux
2.4 (Opera?
)
257 # Some fairly common mods
:
258 S4
:64:1:52:M
*,N
,N
,S
,N
,W0
: Linux
:2.4:ts
:Linux
2.4 w
/o timestamps
259 S22
:64:1:52:M
*,N
,N
,S
,N
,W0
: Linux
:2.2:ts
:Linux
2.2 w
/o timestamps
262 #
----------------- FreeBSD
-----------------
264 16384:64:1:44:M
*: FreeBSD
:2.0-2.2::FreeBSD
2.0-4.2
265 16384:64:1:44:M
*: FreeBSD
:3.0-3.5::FreeBSD
2.0-4.2
266 16384:64:1:44:M
*: FreeBSD
:4.0-4.2::FreeBSD
2.0-4.2
267 16384:64:1:60:M
*,N
,W0
,N
,N
,T
: FreeBSD
:4.4::FreeBSD
4.4
269 1024:64:1:60:M
*,N
,W0
,N
,N
,T
: FreeBSD
:4.4::FreeBSD
4.4
271 57344:64:1:44:M
*: FreeBSD
:4.6-4.8:noRFC1323
:FreeBSD
4.6-4.8 (no RFC1323
)
272 57344:64:1:60:M
*,N
,W0
,N
,N
,T
: FreeBSD
:4.6-4.9::FreeBSD
4.6-4.9
274 32768:64:1:60:M
*,N
,W0
,N
,N
,T
: FreeBSD
:4.8-4.11::FreeBSD
4.8-5.1 (or MacOS X
)
275 32768:64:1:60:M
*,N
,W0
,N
,N
,T
: FreeBSD
:5.0-5.1::FreeBSD
4.8-5.1 (or MacOS X
)
276 65535:64:1:60:M
*,N
,W0
,N
,N
,T
: FreeBSD
:4.8-4.11::FreeBSD
4.8-5.2 (or MacOS X
)
277 65535:64:1:60:M
*,N
,W0
,N
,N
,T
: FreeBSD
:5.0-5.2::FreeBSD
4.8-5.2 (or MacOS X
)
278 65535:64:1:60:M
*,N
,W1
,N
,N
,T
: FreeBSD
:4.7-4.11::FreeBSD
4.7-5.2
279 65535:64:1:60:M
*,N
,W1
,N
,N
,T
: FreeBSD
:5.0-5.2::FreeBSD
4.7-5.2
281 # XXX need quirks support
282 #
65535:64:1:60:M
*,N
,W0
,N
,N
,T
:Z
:FreeBSD
:5.1-5.4::5.1-current
(1)
283 #
65535:64:1:60:M
*,N
,W1
,N
,N
,T
:Z
:FreeBSD
:5.1-5.4::5.1-current
(2)
284 #
65535:64:1:60:M
*,N
,W2
,N
,N
,T
:Z
:FreeBSD
:5.1-5.4::5.1-current
(3)
285 #
65535:64:1:44:M
*:Z
:FreeBSD
:5.2::FreeBSD
5.2 (no RFC1323
)
287 #
16384:64:1:60:M
*,N
,N
,N
,N
,N
,N
,T
:FreeBSD
:4.4:noTS
:FreeBSD
4.4 (w
/o timestamps
)
289 #
----------------- NetBSD
------------------
291 16384:64:0:60:M
*,N
,W0
,N
,N
,T
: NetBSD
:1.3::NetBSD
1.3
292 65535:64:0:60:M
*,N
,W0
,N
,N
,T0
: NetBSD
:1.6:opera
:NetBSD
1.6 (Opera
)
293 16384:64:0:60:M
*,N
,W0
,N
,N
,T0
: NetBSD
:1.6::NetBSD
1.6
294 16384:64:1:60:M
*,N
,W0
,N
,N
,T0
: NetBSD
:1.6:df
:NetBSD
1.6 (DF
)
295 65535:64:1:60:M
*,N
,W1
,N
,N
,T0
: NetBSD
:1.6::NetBSD
1.6W
-current
(DF
)
296 65535:64:1:60:M
*,N
,W0
,N
,N
,T0
: NetBSD
:1.6::NetBSD
1.6X
(DF
)
297 32768:64:1:60:M
*,N
,W0
,N
,N
,T0
: NetBSD
:1.6:randomization
:NetBSD
1.6ZH
-current
(w
/ ip_id randomization
)
299 #
----------------- OpenBSD
-----------------
301 16384:64:0:60:M
*,N
,W0
,N
,N
,T
: OpenBSD
:2.6::NetBSD
1.3 (or OpenBSD
2.6)
302 16384:64:1:64:M
*,N
,N
,S
,N
,W0
,N
,N
,T
: OpenBSD
:3.0-4.0::OpenBSD
3.0-4.0
303 16384:64:0:64:M
*,N
,N
,S
,N
,W0
,N
,N
,T
: OpenBSD
:3.0-4.0:no
-df
:OpenBSD
3.0-4.0 (scrub no
-df
)
304 57344:64:1:64:M
*,N
,N
,S
,N
,W0
,N
,N
,T
: OpenBSD
:3.3-4.0::OpenBSD
3.3-4.0
305 57344:64:0:64:M
*,N
,N
,S
,N
,W0
,N
,N
,T
: OpenBSD
:3.3-4.0:no
-df
:OpenBSD
3.3-4.0 (scrub no
-df
)
307 65535:64:1:64:M
*,N
,N
,S
,N
,W0
,N
,N
,T
: OpenBSD
:3.0-4.0:opera
:OpenBSD
3.0-4.0 (Opera
)
309 #
----------------- Solaris
-----------------
311 S17
:64:1:64:N
,W3
,N
,N
,T0
,N
,N
,S
,M
*: Solaris
:8:RFC1323
:Solaris
8 RFC1323
312 S17
:64:1:48:N
,N
,S
,M
*: Solaris
:8::Solaris
8
313 S17
:255:1:44:M
*: Solaris
:2.5-2.7::Solaris
2.5 to
7
315 S6
:255:1:44:M
*: Solaris
:2.6-2.7::Solaris
2.6 to
7
316 S23
:255:1:44:M
*: Solaris
:2.5:1:Solaris
2.5.1
317 S34
:64:1:48:M
*,N
,N
,S
: Solaris
:2.9::Solaris
9
318 S44
:255:1:44:M
*: Solaris
:2.7::Solaris
7
320 4096:64:0:44:M1460
: SunOS
:4.1::SunOS
4.1.x
322 S34
:64:1:52:M
*,N
,W0
,N
,N
,S
: Solaris
:10:beta
:Solaris
10 (beta
)
323 32850:64:1:64:M
*,N
,N
,T
,N
,W1
,N
,N
,S
: Solaris
:10::Solaris
10 1203
325 #
----------------- IRIX
--------------------
327 49152:64:0:44:M
*: IRIX
:6.4::IRIX
6.4
328 61440:64:0:44:M
*: IRIX
:6.2-6.5::IRIX
6.2-6.5
329 49152:64:0:52:M
*,N
,W2
,N
,N
,S
: IRIX
:6.5:RFC1323
:IRIX
6.5 (RFC1323
)
330 49152:64:0:52:M
*,N
,W3
,N
,N
,S
: IRIX
:6.5:RFC1323
:IRIX
6.5 (RFC1323
)
332 61440:64:0:48:M
*,N
,N
,S
: IRIX
:6.5:12-21:IRIX
6.5.12 - 6.5.21
333 49152:64:0:48:M
*,N
,N
,S
: IRIX
:6.5:15-21:IRIX
6.5.15 - 6.5.21
335 49152:60:0:64:M
*,N
,W2
,N
,N
,T
,N
,N
,S
: IRIX
:6.5:IP27
:IRIX
6.5 IP27
338 #
----------------- Tru64
-------------------
340 32768:64:1:48:M
*,N
,W0
: Tru64
:4.0::Tru64
4.0 (or OS
/2 Warp
4)
341 32768:64:0:48:M
*,N
,W0
: Tru64
:5.0::Tru64
5.0
342 8192:64:0:44:M1460
: Tru64
:5.1:noRFC1323
:Tru64
6.1 (no RFC1323
) (or QNX
6)
343 61440:64:0:48:M
*,N
,W0
: Tru64
:5.1a
:JP4
:Tru64 v5.1a JP4
(or OpenVMS
7.x on Compaq
5.x stack
)
345 #
----------------- OpenVMS
-----------------
347 6144:64:1:60:M
*,N
,W0
,N
,N
,T
: OpenVMS
:7.2::OpenVMS
7.2 (Multinet
4.4 stack
)
349 #
----------------- MacOS
-------------------
351 # XXX Need EOL tcp opt support
352 # S2
:255:1:48:M
*,W0
,E
:.
:MacOS
:8.6 classic
354 # XXX some of these use EOL too
355 16616:255:1:48:M
*,W0
: MacOS
:7.3-7.6:OTTCP
:MacOS
7.3-8.6 (OTTCP
)
356 16616:255:1:48:M
*,W0
: MacOS
:8.0-8.6:OTTCP
:MacOS
7.3-8.6 (OTTCP
)
357 16616:255:1:48:M
*,N
,N
,N
: MacOS
:8.1-8.6:OTTCP
:MacOS
8.1-8.6 (OTTCP
)
358 32768:255:1:48:M
*,W0
,N
: MacOS
:9.0-9.2::MacOS
9.0-9.2
359 65535:255:1:48:M
*,N
,N
,N
,N
: MacOS
:9.1::MacOS
9.1 (OT
2.7.4)
362 #
----------------- Windows
-----------------
364 # Windows TCP
/IP stack is a mess. For most recent XP
, 2000 and
365 # even
98, the pathlevel
, not the actual OS version
, is more
366 # relevant to the signature. They share the same code
, so it would
367 # seem. Luckily
for us
, almost all Windows
9x boxes have an
368 # awkward MSS of
536, which I use to tell one from another
369 # in most difficult cases.
371 8192:32:1:44:M
*: Windows
:3.11::Windows
3.11 (Tucows
)
372 S44
:64:1:64:M
*,N
,W0
,N
,N
,T0
,N
,N
,S
: Windows
:95::Windows
95
373 8192:128:1:64:M
*,N
,W0
,N
,N
,T0
,N
,N
,S
: Windows
:95:b
:Windows
95b
375 # There were so many tweaking tools and so many stack versions
for
376 # Windows
98 it is no longer possible to tell them from each other
377 # without some very serious research. Until then
, there's an insane
378 # number of signatures
, for your amusement
:
380 S44
:32:1:48:M
*,N
,N
,S
: Windows
:98:lowTTL
:Windows
98 (low TTL
)
381 8192:32:1:48:M
*,N
,N
,S
: Windows
:98:lowTTL
:Windows
98 (low TTL
)
382 %8192:64:1:48:M536
,N
,N
,S
: Windows
:98::Windows
98
383 %8192:128:1:48:M536
,N
,N
,S
: Windows
:98::Windows
98
384 S4
:64:1:48:M
*,N
,N
,S
: Windows
:98::Windows
98
385 S6
:64:1:48:M
*,N
,N
,S
: Windows
:98::Windows
98
386 S12
:64:1:48:M
*,N
,N
,S
: Windows
:98::Windows
98
387 T30
:64:1:64:M1460
,N
,W0
,N
,N
,T0
,N
,N
,S
: Windows
:98::Windows
98
388 32767:64:1:48:M
*,N
,N
,S
: Windows
:98::Windows
98
389 37300:64:1:48:M
*,N
,N
,S
: Windows
:98::Windows
98
390 46080:64:1:52:M
*,N
,W3
,N
,N
,S
: Windows
:98:RFC1323
:Windows
98 (RFC1323
)
391 65535:64:1:44:M
*: Windows
:98:noSack
:Windows
98 (no sack
)
392 S16
:128:1:48:M
*,N
,N
,S
: Windows
:98::Windows
98
393 S16
:128:1:64:M
*,N
,W0
,N
,N
,T0
,N
,N
,S
: Windows
:98::Windows
98
394 S26
:128:1:48:M
*,N
,N
,S
: Windows
:98::Windows
98
395 T30
:128:1:48:M
*,N
,N
,S
: Windows
:98::Windows
98
396 32767:128:1:52:M
*,N
,W0
,N
,N
,S
: Windows
:98::Windows
98
397 60352:128:1:48:M
*,N
,N
,S
: Windows
:98::Windows
98
398 60352:128:1:64:M
*,N
,W2
,N
,N
,T0
,N
,N
,S
: Windows
:98::Windows
98
400 # What's with
1414 on NT?
401 T31
:128:1:44:M1414
: Windows
:NT
:4.0:Windows NT
4.0 SP6a
402 64512:128:1:44:M1414
: Windows
:NT
:4.0:Windows NT
4.0 SP6a
403 8192:128:1:44:M
*: Windows
:NT
:4.0:Windows NT
4.0 (older
)
405 # Windows XP and
2000. Most of the signatures that were
406 # either dubious or non
-specific
(no service pack data
)
407 # were deleted and replaced with generics at the end.
409 65535:128:1:48:M
*,N
,N
,S
: Windows
:2000:SP4
:Windows
2000 SP4
, XP SP1
410 65535:128:1:48:M
*,N
,N
,S
: Windows
:XP
:SP1
:Windows
2000 SP4
, XP SP1
411 %8192:128:1:48:M
*,N
,N
,S
: Windows
:2000:SP2
+:Windows
2000 SP2
, XP SP1
(seldom
98 4.10.2222)
412 %8192:128:1:48:M
*,N
,N
,S
: Windows
:XP
:SP1
:Windows
2000 SP2
, XP SP1
(seldom
98 4.10.2222)
413 S20
:128:1:48:M
*,N
,N
,S
: Windows
:2000::Windows
2000/XP SP3
414 S20
:128:1:48:M
*,N
,N
,S
: Windows
:XP
:SP3
:Windows
2000/XP SP3
415 S45
:128:1:48:M
*,N
,N
,S
: Windows
:2000:SP4
:Windows
2000 SP4
, XP SP
1
416 S45
:128:1:48:M
*,N
,N
,S
: Windows
:XP
:SP1
:Windows
2000 SP4
, XP SP
1
417 40320:128:1:48:M
*,N
,N
,S
: Windows
:2000:SP4
:Windows
2000 SP4
419 S6
:128:1:48:M
*,N
,N
,S
: Windows
:2000:SP2
:Windows XP
, 2000 SP2
+
420 S6
:128:1:48:M
*,N
,N
,S
: Windows
:XP
::Windows XP
, 2000 SP2
+
421 S12
:128:1:48:M
*,N
,N
,S
: Windows
:XP
:SP1
:Windows XP SP1
422 S44
:128:1:48:M
*,N
,N
,S
: Windows
:2000:SP3
:Windows Pro SP1
, 2000 SP3
423 S44
:128:1:48:M
*,N
,N
,S
: Windows
:XP
:SP1
:Windows Pro SP1
, 2000 SP3
424 64512:128:1:48:M
*,N
,N
,S
: Windows
:2000:SP3
:Windows SP1
, 2000 SP3
425 64512:128:1:48:M
*,N
,N
,S
: Windows
:XP
:SP1
:Windows SP1
, 2000 SP3
426 32767:128:1:48:M
*,N
,N
,S
: Windows
:2000:SP4
:Windows SP1
, 2000 SP4
427 32767:128:1:48:M
*,N
,N
,S
: Windows
:XP
:SP1
:Windows SP1
, 2000 SP4
431 S52
:128:1:48:M1260
,N
,N
,S
: Windows
:2000:cisco
:Windows XP
/2000 via Cisco
432 S52
:128:1:48:M1260
,N
,N
,S
: Windows
:XP
:cisco
:Windows XP
/2000 via Cisco
433 65520:128:1:48:M
*,N
,N
,S
: Windows
:XP
::Windows XP bare
-bone
434 16384:128:1:52:M536
,N
,W0
,N
,N
,S
: Windows
:2000:ZoneAlarm
:Windows
2000 w
/ZoneAlarm?
435 2048:255:0:40:.
: Windows
:.NET
::Windows .NET Enterprise Server
437 44620:64:0:48:M
*,N
,N
,S
: Windows
:ME
::Windows ME no SP
(?
)
438 S6
:255:1:48:M536
,N
,N
,S
: Windows
:95:winsock2
:Windows
95 winsock
2
439 32768:32:1:52:M1460
,N
,W0
,N
,N
,S
: Windows
:2003:AS
:Windows
2003 AS
442 # No need to be more specific
, it passes
:
443 #
*:128:1:48:M
*,N
,N
,S
:U
:-Windows
:XP
/2000 while downloading
(leak
!) XXX quirk
444 # there is an equiv similar generic sig w
/o the quirk
446 #
----------------- HP
/UX
-------------------
448 32768:64:1:44:M
*: HP
-UX
:B
.10.20::HP
-UX B
.10.20
449 32768:64:0:48:M
*,W0
,N
: HP
-UX
:11.0::HP
-UX
11.0
450 32768:64:1:48:M
*,W0
,N
: HP
-UX
:11.10::HP
-UX
11.0 or
11.11
451 32768:64:1:48:M
*,W0
,N
: HP
-UX
:11.11::HP
-UX
11.0 or
11.11
453 # Whoa. Hardcore WSS.
454 0:64:0:48:M
*,W0
,N
: HP
-UX
:B
.11.00:A
:HP
-UX B
.11.00 A
(RFC1323
)
456 #
----------------- RiscOS
------------------
458 # We don't yet support the ?
12 TCP option
459 #
16384:64:1:68:M1460
,N
,W0
,N
,N
,T
,N
,N
,?
12: RISCOS
:3.70-4.36::RISC OS
3.70-4.36
460 12288:32:0:44:M536
: RISC OS
:3.70:4.10:RISC OS
3.70 inet
4.10
463 #
4096:64:1:56:M1460
,N
,N
,T
:T
: RISC OS
:3.70:freenet
:RISC OS
3.70 freenet
2.00
467 #
----------------- BSD
/OS
------------------
469 # Once again
, power of two WSS is also shared by MacOS X with DF set
470 8192:64:1:60:M1460
,N
,W0
,N
,N
,T
: BSD
/OS
:3.1::BSD
/OS
3.1-4.3 (or MacOS X
10.2 w
/DF
)
471 8192:64:1:60:M1460
,N
,W0
,N
,N
,T
: BSD
/OS
:4.0-4.3::BSD
/OS
3.1-4.3 (or MacOS X
10.2)
474 #
---------------- NewtonOS
-----------------
476 4096:64:0:44:M1420
: NewtonOS
:2.1::NewtonOS
2.1
478 #
---------------- NeXTSTEP
-----------------
480 S4
:64:0:44:M1024
: NeXTSTEP
:3.3::NeXTSTEP
3.3
481 S8
:64:0:44:M512
: NeXTSTEP
:3.3::NeXTSTEP
3.3
483 #
------------------ BeOS
-------------------
485 1024:255:0:48:M
*,N
,W0
: BeOS
:5.0-5.1::BeOS
5.0-5.1
486 12288:255:0:44:M1402
: BeOS
:5.0::BeOS
5.0.x
488 #
------------------ OS
/400 -----------------
490 8192:64:1:60:M1440
,N
,W0
,N
,N
,T
: OS
/400:VR4
::OS
/400 VR4
/R5
491 8192:64:1:60:M1440
,N
,W0
,N
,N
,T
: OS
/400:VR5
::OS
/400 VR4
/R5
492 4096:64:1:60:M1440
,N
,W0
,N
,N
,T
: OS
/400:V4R5
:CF67032
:OS
/400 V4R5
+ CF67032
495 #
28672:64:0:44:M1460
:A
:OS
/390:?
497 #
------------------ ULTRIX
-----------------
499 16384:64:0:40:.
: ULTRIX
:4.5::ULTRIX
4.5
501 #
------------------- QNX
-------------------
503 S16
:64:0:44:M512
: QNX
:::QNX demodisk
505 #
------------------ Novell
-----------------
507 16384:128:1:44:M1460
: Novell
:NetWare
:5.0:Novel Netware
5.0
508 6144:128:1:44:M1460
: Novell
:IntranetWare
:4.11:Novell IntranetWare
4.11
509 6144:128:1:44:M1368
: Novell
:BorderManager
::Novell BorderManager ?
511 6144:128:1:52:M
*,W0
,N
,S
,N
,N
: Novell
:Netware
:6:Novell Netware
6 SP3
514 #
----------------- SCO
------------------
515 S3
:64:1:60:M1460
,N
,W0
,N
,N
,T
: SCO
:UnixWare
:7.1:SCO UnixWare
7.1
516 S17
:64:1:60:M1380
,N
,W0
,N
,N
,T
: SCO
:UnixWare
:7.1:SCO UnixWare
7.1.3 MP3
517 S23
:64:1:44:M1380
: SCO
:OpenServer
:5.0:SCO OpenServer
5.0
519 #
------------------- DOS
-------------------
521 2048:255:0:44:M536
: DOS
:WATTCP
:1.05:DOS Arachne via WATTCP
/1.05
522 T2
:255:0:44:M984
: DOS
:WATTCP
:1.05Arachne
:Arachne via WATTCP
/1.05 (eepro
)
524 #
------------------ OS
/2 -------------------
526 S56
:64:0:44:M512
: OS
/2:4::OS
/2 4
527 28672:64:0:44:M1460
: OS
/2:4::OS
/2 Warp
4.0
529 #
----------------- TOPS
-20 -----------------
531 # Another hardcore MSS
, one of the ACK leakers hunted down.
532 # XXX QUIRK
0:64:0:44:M1460
:A
:TOPS
-20:version
7
533 0:64:0:44:M1460
: TOPS
-20:7::TOPS
-20 version
7
535 #
----------------- FreeMiNT
----------------
537 S44
:255:0:44:M536
: FreeMiNT
:1:16A
:FreeMiNT
1 patch
16A
(Atari
)
539 #
------------------ AMIGA
------------------
542 # S32
:64:1:56:M
*,N
,N
,S
,N
,N
,?
12:.
:AMIGA
:3.9 BB2 with Miami stack
544 #
------------------ Plan9
------------------
546 65535:255:0:48:M1460
,W0
,N
: Plan9
:4::Plan9 edition
4
548 #
----------------- AMIGAOS
-----------------
550 16384:64:1:48:M1560
,N
,N
,S
: AMIGAOS
:3.9::AMIGAOS
3.9 BB2 MiamiDX
552 ###########################################
553 # Appliance
/ embedded
/ other signatures #
554 ###########################################
556 #
---------- Firewalls
/ routers
------------
558 S12
:64:1:44:M1460
: @Checkpoint
:::Checkpoint
(unknown
1)
559 S12
:64:1:48:N
,N
,S
,M1460
: @Checkpoint
:::Checkpoint
(unknown
2)
560 4096:32:0:44:M1460
: ExtremeWare
:4.x
::ExtremeWare
4.x
563 # S32
:64:0:68:M512
,N
,W0
,N
,N
,T
,N
,N
,?
12:.
:Nokia
:IPSO w
/Checkpoint NG FP3
564 # S16
:64:0:68:M1024
,N
,W0
,N
,N
,T
,N
,N
,?
12:.
:Nokia
:IPSO
3.7 build
026
566 S4
:64:1:60:W0
,N
,S
,T
,M1460
: FortiNet
:FortiGate
:50:FortiNet FortiGate
50
568 8192:64:1:44:M1460
: Eagle
:::Eagle Secure Gateway
570 S52
:128:1:48:M1260
,N
,N
,N
,N
: LinkSys
:WRV54G
::LinkSys WRV54G VPN router
574 #
------- Switches and other stuff
----------
576 4128:255:0:44:M
*: Cisco
:::Cisco Catalyst
3500, 7500 etc
577 S8
:255:0:44:M
*: Cisco
:12008::Cisco
12008
578 60352:128:1:64:M1460
,N
,W2
,N
,N
,T
,N
,N
,S
: Alteon
:ACEswitch
::Alteon ACEswitch
579 64512:128:1:44:M1370
: Nortel
:Contivity Client
::Nortel Conectivity Client
582 #
---------- Caches and whatnots
------------
584 S4
:64:1:52:M1460
,N
,N
,S
,N
,W0
: AOL
:web cache
::AOL web cache
586 32850:64:1:64:N
,W1
,N
,N
,T
,N
,N
,S
,M
*: NetApp
:5.x
::NetApp Data OnTap
5.x
587 16384:64:1:64:M1460
,N
,N
,S
,N
,W0
,N
: NetApp
:5.3:1:NetApp
5.3.1
588 65535:64:0:64:M1460
,N
,N
,S
,N
,W
*,N
,N
,T
: NetApp
:5.3-5.5::NetApp
5.3-5.5
589 65535:64:0:60:M1460
,N
,W0
,N
,N
,T
: NetApp
:CacheFlow
::NetApp CacheFlow
590 8192:64:1:64:M1460
,N
,N
,S
,N
,W0
,N
,N
,T
: NetApp
:5.2:1:NetApp NetCache
5.2.1
591 20480:64:1:64:M1460
,N
,N
,S
,N
,W0
,N
,N
,T
: NetApp
:4.1::NetApp NetCache4.1
593 65535:64:0:60:M1460
,N
,W0
,N
,N
,T
: CacheFlow
:4.1::CacheFlow CacheOS
4.1
594 8192:64:0:60:M1380
,N
,N
,N
,N
,N
,N
,T
: CacheFlow
:1.1::CacheFlow CacheOS
1.1
596 S4
:64:0:48:M1460
,N
,N
,S
: Cisco
:Content Engine
::Cisco Content Engine
598 27085:128:0:40:.
: Dell
:PowerApp cache
::Dell PowerApp
(Linux
-based
)
600 65535:255:1:48:N
,W1
,M1460
: Inktomi
:crawler
::Inktomi crawler
601 S1
:255:1:60:M1460
,S
,T
,N
,W0
: LookSmart
:ZyBorg
::LookSmart ZyBorg
603 16384:255:0:40:.
: Proxyblocker
:::Proxyblocker
(what's
this?
)
605 65535:255:0:48:M
*,N
,N
,S
: Redline
:::Redline T|X
2200
607 32696:128:0:40:M1460
: Spirent
:Avalanche
::Spirent Web Avalanche HTTP benchmarking engine
609 #
----------- Embedded systems
--------------
611 S9
:255:0:44:M536
: PalmOS
:Tungsten
:C
:PalmOS Tungsten C
612 S5
:255:0:44:M536
: PalmOS
:3::PalmOS
3/4
613 S5
:255:0:44:M536
: PalmOS
:4::PalmOS
3/4
614 S4
:255:0:44:M536
: PalmOS
:3:5:PalmOS
3.5
615 2948:255:0:44:M536
: PalmOS
:3:5:PalmOS
3.5.3 (Handera
)
616 S29
:255:0:44:M536
: PalmOS
:5::PalmOS
5.0
617 16384:255:0:44:M1398
: PalmOS
:5.2:Clie
:PalmOS
5.2 (Clie
)
618 S14
:255:0:44:M1350
: PalmOS
:5.2:Treo
:PalmOS
5.2.1 (Treo
)
620 S23
:64:1:64:N
,W1
,N
,N
,T
,N
,N
,S
,M1460
: SymbianOS
:7::SymbianOS
7
622 8192:255:0:44:M1460
: SymbianOS
:6048::Symbian OS
6048 (Nokia
7650?
)
623 8192:255:0:44:M536
: SymbianOS
:9210::Symbian OS
(Nokia
9210?
)
624 S22
:64:1:56:M1460
,T
,S
: SymbianOS
:P800
::Symbian OS ?
(SE P800?
)
625 S36
:64:1:56:M1360
,T
,S
: SymbianOS
:6600::Symbian OS
60xx
(Nokia
6600?
)
629 5840:64:1:60:M1452
,S
,T
,N
,W1
: Zaurus
:3.10::Zaurus
3.10
631 32768:128:1:64:M1460
,N
,W0
,N
,N
,T0
,N
,N
,S
: PocketPC
:2002::PocketPC
2002
633 S1
:255:0:44:M346
: Contiki
:1.1:rc0
:Contiki
1.1-rc0
635 4096:128:0:44:M1460
: Sega
:Dreamcast
:3.0:Sega Dreamcast Dreamkey
3.0
636 T5
:64:0:44:M536
: Sega
:Dreamcast
:HKT
-3020:Sega Dreamcast HKT
-3020 (browser disc
51027)
637 S22
:64:1:44:M1460
: Sony
:PS2
::Sony Playstation
2 (SOCOM?
)
639 S12
:64:0:44:M1452
: AXIS
:5600:v5.64
:AXIS Printer Server
5600 v5.64
641 3100:32:1:44:M1460
: Windows
:CE
:2.0:Windows CE
2.0
647 1024:64:0:40:.
: *NMAP
:syn scan
:1:NMAP syn scan
(1)
648 2048:64:0:40:.
: *NMAP
:syn scan
:2:NMAP syn scan
(2)
649 3072:64:0:40:.
: *NMAP
:syn scan
:3:NMAP syn scan
(3)
650 4096:64:0:40:.
: *NMAP
:syn scan
:4:NMAP syn scan
(4)
652 # Requires quirks support
653 #
1024:64:0:40:.
:A
:*NMAP
:TCP sweep probe
(1)
654 #
2048:64:0:40:.
:A
:*NMAP
:TCP sweep probe
(2)
655 #
3072:64:0:40:.
:A
:*NMAP
:TCP sweep probe
(3)
656 #
4096:64:0:40:.
:A
:*NMAP
:TCP sweep probe
(4)
658 1024:64:0:60:W10
,N
,M265
,T
: *NMAP
:OS
:1:NMAP OS detection probe
(1)
659 2048:64:0:60:W10
,N
,M265
,T
: *NMAP
:OS
:2:NMAP OS detection probe
(2)
660 3072:64:0:60:W10
,N
,M265
,T
: *NMAP
:OS
:3:NMAP OS detection probe
(3)
661 4096:64:0:60:W10
,N
,M265
,T
: *NMAP
:OS
:4:NMAP OS detection probe
(4)
663 32767:64:0:40:.
: *NAST
:::NASTsyn scan
665 # Requires quirks support
666 #
12345:255:0:40:.
:A
:-p0f
:sendsyn utility
669 #####################################
670 # Generic signatures
- just in case #
671 #####################################
673 #
*:64:1:60:M
*,N
,W
*,N
,N
,T
: @FreeBSD
:4.0-4.9::FreeBSD
4.x
/5.x
674 #
*:64:1:60:M
*,N
,W
*,N
,N
,T
: @FreeBSD
:5.0-5.1::FreeBSD
4.x
/5.x
676 *:128:1:52:M
*,N
,W0
,N
,N
,S
: @Windows
:XP
:RFC1323
:Windows XP
/2000 (RFC1323 no tstamp
)
677 *:128:1:52:M
*,N
,W0
,N
,N
,S
: @Windows
:2000:RFC1323
:Windows XP
/2000 (RFC1323 no tstamp
)
678 *:128:1:52:M
*,N
,W
*,N
,N
,S
: @Windows
:XP
:RFC1323
:Windows XP
/2000 (RFC1323 no tstamp
)
679 *:128:1:52:M
*,N
,W
*,N
,N
,S
: @Windows
:2000:RFC1323
:Windows XP
/2000 (RFC1323 no tstamp
)
680 *:128:1:64:M
*,N
,W0
,N
,N
,T0
,N
,N
,S
: @Windows
:XP
:RFC1323
:Windows XP
/2000 (RFC1323
)
681 *:128:1:64:M
*,N
,W0
,N
,N
,T0
,N
,N
,S
: @Windows
:2000:RFC1323
:Windows XP
/2000 (RFC1323
)
682 *:128:1:64:M
*,N
,W
*,N
,N
,T0
,N
,N
,S
: @Windows
:XP
:RFC1323
:Windows XP
(RFC1323
, w
+)
683 *:128:1:48:M536
,N
,N
,S
: @Windows
:98::Windows
98
684 *:128:1:48:M
*,N
,N
,S
: @Windows
:XP
::Windows XP
/2000
685 *:128:1:48:M
*,N
,N
,S
: @Windows
:2000::Windows XP
/2000