Security of the WEP algorithm

Home: www.packetnexus.com

Security of the WEP algorithm

This is some information about our analysis of the Wired Equivalent Privacy
(WEP) algorithm, which is part of the 802.11 standard. This work was
performed jointly by Nikita Borisov, Ian Goldberg, and David Wagner. If you
have any questions, please contact us at wep@isaac.cs.berkeley.edu.

Executive Summary
We have discovered a number of flaws in the WEP algorithm, which seriously
undermine the security claims of the system. In particular, we found the
following types of attacks:

Passive attacks to decrypt traffic based on statistical analysis.
Active attack to inject new traffic from unauthorized mobile stations, based
on known plaintext.
Active attacks to decrypt traffic, based on tricking the access point.
Dictionary-building attack that, after analysis of about a day's worth of
traffic, allows real-time automated decryption of all traffic.
Our analysis suggests that all of these attacks are practical to mount using
only inexpensive off-the-shelf equipment. We recommend that anyone using an
802.11 wireless network not rely on WEP for security, and employ other
security measures to protect their wireless network.

Note that our attacks apply to both 40-bit and the so-called 128-bit
versions of WEP equally well. They also apply to networks that use 802.11b
standard (802.11b is an extension to 802.11 to support higher data rates; it
leaves the WEP algorithm unchanged).

WEP setup
The 802.11 standard describes the communication that occurs in wireless
local area networks (LANs). The Wired Equivalent Privacy (WEP) algorithm is
used to protect wireless communication from eavesdropping. A secondary
function of WEP is to prevent unauthorized access to a wireless network;
this function is not an explicit goal in the 802.11 standard, but it is
frequently considered to be a feature of WEP.

WEP relies on a secret key that is shared between a mobile station (eg. a
laptop with a wireless ethernet card) and an access point (ie. a base
station). The secret key is used to encrypt packets before they are
transmitted, and an integrity check is used to ensure that packets are not
modified in transit. The standard does not discuss how the shared key is
established. In practice, most installations use a single key that is shared
between all mobile stations and access points. More sophisticated key
management techniques can be used to help defend from the attacks we
describe; however, no commercial system we are aware of has mechanisms to
support such techniques.

The following two sections describe the problems in the algorithm and the
technical details of our attacks; they assume some background understanding
of cryptographic protocols. You may wish to skip to the following section,
which discusses the practicality of the attacks.

Problems
WEP uses the RC4 encryption algorithm, which is known as a stream cipher. A
stream cipher operates by expanding a short key into an infinite
pseudo-random key stream. The sender XORs the key stream with the plaintext
to produce ciphertext. The receiver has a copy of the same key, and uses it
to generate identical key stream. XORing the key stream with the ciphertext
yields the original plaintext.

This mode of operation makes stream ciphers vulnerable to several attacks.
If an attacker flips a bit in the ciphertext, then upon decryption, the
corresponding bit in the plaintext will be flipped. Also, if an eavesdropper
intercepts two ciphertexts encrypted with the same key stream, it is
possible to obtain the XOR of the two plaintexts. Kno