The draft paper by Borisov,  Goldberg, and Wagner 
http://www.isaac.cs.berkeley.edu/isaac/wep-draft.pdf presents a 
number of practical attacks on 802.11 Wired Equivalent Privacy (WEP). 
The right way to fix them, as the paper points out, is to rework the 
802.11 protocol to use better encryption and message authentication 
algorithms.  Unfortunately a huge infrastructure has grown up around 
802.11 and large numbers of transceiver/modems are installed. If I 
understand things correctly, the encryption and authentication is 
done in firmware, so any changes to these algorithms requires new 
hardware.

Thus there is a need for a short term remedy that can work with the 
existing standard.  The BGW paper suggests changing keys more 
frequently. Here are a couple of suggestion for fairly simple ways to 
do this that I believe would significantly improve the security of 
802.11, without requiring changes to the protocol or obsoleting all 
existing equipment.  They consist of a couple of higher security 
modes,  I'll call them WF1 and WF2 (WF stands for WEP Fix).

WF1

In WF1 the 802.11 WEP keys would be changed many times each hour, say 
every 10 minutes. A parameter, P , determines how many time per hour 
the key is to be changed, where P must divide 3600 evenly. The WEP 
keys are  derived from a master key, M,  by taking the low order N 
bits (N = 40, 104, whatever) of the SHA1 hash of the master key with 
the date and time (UTC) of the key change appended.

      WEPkey = Bits[0-N](SHA1(M | yyyymmddhhmmss))

M can be any size, up to, say, 256 bytes. This allows direct entry of 
a passphrase.

WF1 would eliminate the dictionary attack described in the paper. 
Note that since the master key is not limited to 40 bits,  WF1 would 
also reduce the value of direct attacks on 40-bit keys.  In this 
regard, it is worth noting that IV collisions also facilitate a 
direct attack on the encryption.  If an attacker accumulates n 
packets with the same IV, he can attack all the packets at the same 
time, reducing the time required by a factor of n, if n isn't too 
big.  Since the time required to crack 40-bit RC4 on a single 
workstation is on the order of a week, even a factor of 3 reduction 
is significant.

WF1 does not completely eliminate the problem of IV collisions. With 
a 24-bit IV, some are inevitable.  Each IV collision has the 
potential of compromising the data in both packets. But WF1 does 
allow the rate at which they occur to be reduced and controlled. The 
rate of collisions varies linearly with the period between key 
changes. If there are R packets per second and the time between key 
changes is T (T =3600/P) then the expected number of collisions in 
the time interval T is roughly (T*R)^2/2^25,  so the rate of 
collisions is roughly T*R^2/2^25.

WF1 also does not eliminate the authentication attacks described in 
part 4 of the paper. However most of the attacks described there 
require multiple attempts to succeed and the shortened key window 
might make them more difficult to mount.

Clearly good synchronization of the time-of-day clock on each node is 
essential in WF1,  but protocols already exist that can do this over 
a network. Small synchronization discrepancies can be handled by the 
802 retry mechanism and should look very much like a short RF outage. 


The BGW paper mentions that some 802.11 modems reset their IV counter 
when they are initialized. I don't know if a key change counts as an 
initialization. If so then my proposal runs the risk of creating 
additional collisions.  However it should be possible to test modems 
for this property and refuse to enter the key changing security mode 
if such a modem is installed. Manufacturers could eliminate this 
behavior with a firmware change and there would be no impact on other 
uses of the modem.  Similarly modems that do not change the IV for 
each packet could be barred.

Unless I have missed something, WF1 could be implemented as an option 
in 802.11 driver software. It might also be possible to implement WF1 
with currently available 802.11 software by using a scripting 
language. Note that a crude version of WF1 can be implemented today 
with no new software at all: just change the WEP key every night. A 
weekly WEP key list could be distributed to authorized users by paper 
mail or encrypted e-mail.

WF2

WF2 would change keys periodically just like WF1, however the packet 
sender's address would also incorporated in the hash.

      WEPkey = Bits[0-N](SHA1(M | Sender's address | yyyymmddhhmmss))

WF2 requires that hubs encryption programming be changed. Assuming 
most hubs are programmed in firmware, this will generally require new 
hubs. However existing  client modems can still be used. WF2 will 
essentially eliminate IV collisions if the keys are changed at least 
every few hours.

WF2 still does not eliminate the authentication attacks. However 
since we have to change the hub programming anyway, it might be 
possible to add tests to detect possible attacks.

Neither WF1 nor WF2  eliminates data leaks from WEP, but they do 
reduce them considerably.  Stronger security measures, such as SSL 
and IPsec,  should be used to protect sensitive data traveling over 
802.11, but the same can be said of wired Ethernet.

These suggestions are base on a quick analysis of what I have gleaned 
about 802.11 from the net. I did not have access to the full 802.11 
spec.

Arnold Reinhold




Reply via email to