#7825 NORM 8.2.0 (: can't complete WPA handshake with D-Link WBR-2310

Zarro Boogs per Child bugtracker at laptop.org
Thu Aug 7 17:42:28 EDT 2008

#7825: can't complete WPA handshake with D-Link WBR-2310
   Reporter:  dsd        |       Owner:  jcardona            
       Type:  defect     |      Status:  new                 
   Priority:  normal     |   Milestone:  8.2.0 (was Update.2)
  Component:  wireless   |     Version:  not specified       
 Resolution:             |    Keywords:                      
Next_action:  never set  |    Verified:  0                   
  Blockedby:             |    Blocking:                      

Comment(by dsd):

 My theory is that we are actually hitting a flaw in WPA combined with some
 slowness of the XO (slow processor, fullmac wifi hardware) and this AP
 being particularly fast.

 The process is normally:

  1. AP sends EAPOL
  1. STA sends EAPOL
  1. AP sends EAPOL
  1. STA sends EAPOL
  1. STA installs PTK
  1. AP sends EAPOL encrypted by PTK

 Steps 1 to 4 are for PTK negotiation. The station actually knows the PTK
 after step 3, but it cannot install it until after (4) because that EAPOL
 is required to be transmitted unencrypted. (this order of operations is
 imposed by wpa_supplicant)

 Here we meet the flaw in WPA: the AP is due to send the the message in (6)
 (first part of GTK transfer) which is encrypted by the PTK, but it does
 not consider if the STA has actually had time to install the PTK - i.e. it
 does not and can not confirm that the STA has had time to complete step

 My theory is that the XO then receives the message in (6) but has not had
 time to install the PTK, so decryption fails, and it throws the message
 away. I do not have a way to verify this though, any ideas? Can we ask the
 firmware to provide undecryptable frames to the driver anyway? This would
 at least allow for diagnosis.

 The reason that this happens on this AP and not others is that this AP is
 particularly fast. It takes just 1.83ms to respond to the 4th EAPOL (by
 sending the first GTK EAPOL), whereas other AP's I have looked at take
 over 3ms.

 Possible workarounds:
  1. Modify the firmware to not acknowledge EAPOLs that it can't decrypt.
 The AP would then retransmit the GTK EAPOL, buying us more time to install
 the guy. This is probably not realistic, because decryption probably takes
 too long (you have to send acks very quickly) and assuming any notion of
 design in the firmware, this would be a blatent layering violation...
  1. Make the firmware defer sending the (unencrypted) EAPOL in (4) until
 the PTK has been installed. (messy, but probably the most reliable
 solution if at all possible?)
  1. Make the hardware provide undecryptable EAPOLs to the driver, and let
 the driver fall back on software decrypt to interpret them.
  1. Get all G1G1 users to upgrade to RSN (WPA2), which does not have this

Ticket URL: <http://dev.laptop.org/ticket/7825#comment:5>
One Laptop Per Child <http://laptop.org/>
OLPC bug tracking system

More information about the Bugs mailing list