1ARP-FINGERPRINT(1)          General Commands Manual         ARP-FINGERPRINT(1)
2
3
4

NAME

6       arp-fingerprint - Fingerprint a system using ARP
7

SYNOPSIS

9       arp-fingerprint [options] target
10
11       The target should be specified as a single IP address or hostname.  You
12       cannot specify multiple targets, IP networks or ranges.
13
14       If you use an IP address for the target, you can use the -o  option  to
15       pass  the  --numeric option to arp-scan, which will prevent it from at‐
16       tempting DNS lookups.  This can speed up  the  fingerprinting  process,
17       especially on systems with a slow or faulty DNS configuration.
18

DESCRIPTION

20       arp-fingerprint  fingerprints  the  specified target host using the ARP
21       protocol.
22
23       It sends various different types of ARP  request  to  the  target,  and
24       records  which types it responds to. From this, it constructs a finger‐
25       print string consisting of "1" where the target responded and "0" where
26       it  did  not.  An example of a fingerprint string is 01000100000.  This
27       fingerprint string is then used to lookup the likely  target  operating
28       system.
29
30       Many  of  the  fingerprint strings are shared by several operating sys‐
31       tems, so there is not always a one-to-one mapping  between  fingerprint
32       strings  and  operating  systems. Also the fact that a system's finger‐
33       print matches a certain operating system (or list of operating systems)
34       does  not  necessarily mean that the system being fingerprinted is that
35       operating system, although it is quite likely. This is because the list
36       of  operating systems is not exhaustive; it is just what I have discov‐
37       ered to date, and there are bound to be operating systems that are  not
38       listed.
39
40       The  ARP  fingerprint  of a system is generally a function of that sys‐
41       tem's kernel (although it is possible for the ARP function to be imple‐
42       mented in user space, it almost never is).
43
44       Sometimes,  an operating system can give different fingerprints depend‐
45       ing on the configuration.  An example is Linux, which will respond to a
46       non-local  source IP address if that IP is routed through the interface
47       being tested.  This is both good and bad: on one hand it makes the fin‐
48       gerprinting  task more complex; but on the other, it can allow some as‐
49       pects of the system configuration to be determined.
50
51       Sometimes the fact that two different operating systems share a  common
52       ARP fingerprint string points to a re-use of networking code. One exam‐
53       ple of this is Windows NT and FreeBSD.
54
55       arp-fingerprint uses arp-scan to send the ARP requests and receive  the
56       replies.
57
58       There  are other methods that can be used to fingerprint a system using
59       arp-scan which can be used in addition to arp-fingerprint.  These addi‐
60       tional  methods are not included in arp-fingerprint either because they
61       are likely to cause disruption to the target system,  or  because  they
62       require  knowledge of the target's configuration that may not always be
63       available.
64
65       Most of the ARP requests that arp-fingerprint sends  are  non-standard,
66       so it could disrupt systems that don't have a robust TCP/IP stack.
67

OPTIONS

69       -h     Display a brief usage message and exit.
70
71       -v     Display verbose progress messages.
72
73       -o <option-string>
74              Pass  specified options to arp-scan. You need to enclose the op‐
75              tions string in quotes if  it  contains  spaces.  e.g.   -o  "-I
76              eth1".  The commonly used options are --interface (-I) and --nu‐
77              meric (-N).
78
79       -l     Fingerprint all hosts on the local network. You do not  need  to
80              specify any target hosts if this option is given.
81

EXAMPLES

83       $ arp-fingerprint 192.168.0.1
84       192.168.0.1   01000100000     Linux 2.2, 2.4, 2.6
85
86       $ arp-fingerprint -o "-N -I eth1" 192.168.0.202
87       192.168.0.202 11110100000     FreeBSD 5.3, Win98, WinME, NT4, 2000, XP, 2003
88

NOTES

90       arp-fingerprint  is  implemented  in Perl, so you need to have the Perl
91       interpreter installed on your system to use it.
92

SEE ALSO

94       arp-scan(1)
95
96       http://www.royhills.co.uk/wiki/ The arp-scan wiki page.
97
98
99
100                               October 27, 2022             ARP-FINGERPRINT(1)
Impressum