WEP : Encryption method and weaknesses

Presented by Yann Labour, <yayann@gmail.com>






What is WEP?

WEP's "Security"

WEP implements two types of security:

WEP Flavours

Encrytion used in WEP

RC4 is the encryption algorithm used to cipher the data sent. It consists of :

Key Scheduling Algorithm (KSA)

First part of the encryption process.

  1. Assume N = 256//Determines how strong the encryption is.
  2. K[] = Secrete Key array//Is unscrambled.

  3. Initialization://Used to fill the empty State (S[]) array with values 0 to 255.
  4. For i = 0 to N - 1
  5.     S[i] = i

  6. j = 0//Is used to hold a value during the scrambling process.
  7. Scrambling://Starts the scrambling process that transforms S into a pseudo random array
  8. For i = 0 to N - 1
  9.     j = j + S[i] + K[i]//Merge the properties of the secret key with the state array (S[]) to create a pseudo random number
  10.     Swap(S[i], S[j])

Pseudo Random Generation Algorithm (PRGA)

Outputs a streaming key based on the KSA's pseudo random state array. This streaming key is then merged with the plaintext data to create a stream of data that is encrypted.

  1. Initialization
  2. i = 0
  3. j = 0

  4. Generation Loop: //Starts the stream-generation process : will continue until there is no more data
  5.     i = i + 1
  6.     j = j + S[i]
  7.     Swap(S[i], S[j])
  8.     Output z = S[S[i] + S[j]]//
  9.     Output XORed with data//

XOR

ABA XOR B
000
011
101
110

Encryption process overview

Decryption process overview

WEP Cracked : First Steps

Recap :

Furthermore :

WEP Cracked : Down and dirty through KSA

The captured weak IV is 3, 255, 7. The pre-shared password is 22222.

Accelerating the cracking

Tools commonly used to crack WEP

These are dedicated to cracking WEP keys:

But you might also need:

WEP killer : Klein's attack

Why keep using WEP?

Conclusion