summaryrefslogtreecommitdiff
path: root/informationals/teso-i0001.txt
diff options
context:
space:
mode:
Diffstat (limited to 'informationals/teso-i0001.txt')
-rw-r--r--informationals/teso-i0001.txt42
1 files changed, 42 insertions, 0 deletions
diff --git a/informationals/teso-i0001.txt b/informationals/teso-i0001.txt
new file mode 100644
index 0000000..92e8c69
--- /dev/null
+++ b/informationals/teso-i0001.txt
@@ -0,0 +1,42 @@
10001 2000/01/20 Difference in Linux 2.x ARP Request handling
2
3==== TESO Informational =======================================================
4This piece of information is to be kept confidential.
5===============================================================================
6
7Description ..........: Difference in Linux 2.x ARP Request handling
8Date .................: 2000/01/20 18:00
9Author ...............: scut
10Publicity level ......: unknown
11Affected .............: ARP protocol handling in Linux 2.x kernels
12Type of entity .......: Protocol
13Type of discovery ....: implementation difference
14Severity/Importance ..: interesting
15Found by .............: rookie and scut
16
17Information ===================================================================
18
19An ARP resolution request is usually done in two steps, where one ARP Request
20message is send and the host that has an interface configured for the
21requested IP address answers with an ARP Answer message. Every ARP message
22of one protocol conversion type has the same length to ease processing of the
23messages.
24
25In an ARP Answer the sender IP and sender MAC address is included along with
26the target IP address and the target MAC address. While it makes sense in an
27ARP Answer the same values are included in an ARP Request too, for the sense
28of simplicity. While most implementations ignore the sender IP/MAC address
29pair in an ARP Request the Linux kernel adds this pair to it's internal ARP
30table, having the same effect as if it is an ARP Answer packet.
31
32This allows us to ARP spoof using ARP Requests instead of ARP Answers if the
33target system runs Linux. This may be done for stealth purposes or to subvert
34ARP packet watching programs such as arpwatch.
35
36Note that this is the correct behavior as defined in RFC 826, where every
37implementation should update it's cache before even looking at the ARP opcode.
38Every other common implementation however (including all BSDs and Windows
39systems) do not do this.
40
41===============================================================================
42