Hi MadMax,
Quote:
I think you'll have to search for this "unspecified reason".
That's the definition in the spec.
If the Fritzbox wants to update the PTK or GTK, we've got problems. I can understand the rationale for wanting to periodically update these items: header information in upper layer protocol headers encapsulated in the MAC frame tends to be constant, or predictably varying, offering an opportunity for sniffers to derive a key value by repeated examination of packets when a particular key is used too long. However, it is the first AP out of the four or five different brands whose interaction with the driver I've observed by now that actually does so, at least when a PSK is used.
I suspect that as the industry matures, more AP product offerings will provide a periodic key update capability. This means that eventually, STA offerings - like the Ralink driver - will have to be upgraded.
While I applaud the Fritzbox folks' paranoia, in practical terms, you're basically hosed as long as you use the legacy driver.
Looking at the current legacy code, it seems that if the driver were to get a second EAPOL Key message from the AP, it would go ahead and step through the 4-way handshake again. Even though it uses a PSK, cranking it through a pseudo-random number generator should yield a different PTK each time. However, there's no indication in your log that a second EAPOL sequence is being initiated. Furthermore, I can see no explicit provisions in the driver for synchronizing a change of keys with the ongoing encrypted output stream.
In general, the 802.11i spec sets the default PMK Security Association lifetime to infinite unless certain steps are specifically taken. Having a non-infinite PMKSA lifetime when a PSK is used seems to be valid as far as the spec is concerned, but the AP offerings out there that I'm familiar with seem to be providing an infinite lifetime.
Do you know if the Fritzbox folks have any technical information as to what the key update profile (i.e. the actual messages exchanged) might be?
Under the "Hail, Mary" department, you might try CCMP encryption, but I'm not hopeful.
My understanding is the rt2x00 driver supports 802.1X. You might try that, but Mark or Ivo can comment on its capabilities and requirements more knowledgeably than I can.
In the worst case, you might have to consider looking for another brand of adapter. If you do (and since Fritzbox is still in business, I suspect they're available), make sure it supports periodically updating the PTK and GTK.
If you wish to proceed with the legacy driver, and investigate into what may be happening, I can provide a patch for it that may produce a little more information as to what is going on. The purpose of this exercise (through possibly more than one iteration) would be to gain enough information to get some idea of the scope of what would be required to implement a periodic key update capability. No guarantees. If I can't figure out the score, or if I think the effort to provide the capability is too great, I won't do it.
If you're game, respond in this thread.