Wireless Security-How WEP works

kuten luultavasti jo tiedät Wired Equivalent Privacy (WEP) käytetään yritykset turvaamaan niiden langattomien yhteyksien nuuskiminen hyökkäyksiä. Olet varmaan myös kuullut, että se ei ole kovin turvallinen. Tämän 2-osaisen sarjan ensimmäisessä osassa kerron wepin sisäisestä toiminnasta ja seuraan sitä ensi kuussa, miksi se on epävarma.

kuten luultavasti jo tiedät, Wired Equivalent Privacy (WEP) – palvelua käyttävät yritykset suojaamaan langattomia yhteyksiään nuuskivilta hyökkäyksiltä. Olet varmaan myös kuullut, että se ei ole kovin turvallinen. Tämän 2-osaisen sarjan ensimmäisessä osassa kerron wepin sisäisestä toiminnasta ja seuraan sitä ensi kuussa, miksi se on epävarma.

Tarvitsenko WEPIÄ ollenkaan?

aito käyttäjä, Bob käyttää läppäriään tarkistaakseen Gmail-tilinsä päivittäin. Hänellä on kannettava langaton kortti, joka tunnistaa automaattisesti hänen ISP: n wireless access point (wap) aivan kadun toisella puolella. Kun hän on yhteydessä WAP hän voi mennä eteenpäin ja tarkistaa hänen sähköpostinsa. Alice on ovela käyttäjä, joka ei halua maksaa internet-yhteyden käytöstä ISP: lle. Hän kuitenkin tietää, että kadun toisella puolella olevalla ISP: llä on tukiasema, johon kuka tahansa voi muodostaa yhteyden ja käyttää Internetiä. Hän kytkee läppärinsä ja lataa pian musiikkia Internetistä. WEP suunniteltiin varmistamaan, että käyttäjät todentavat itsensä ennen resurssien käyttöä, sulkemaan Alice pois ja sallimaan Bob. Katsotaan, miten se tekee tämän.

miten WEP toimii

WEP käyttää RC4-algoritmia salatakseen tietopaketit, kun ne lähetetään tukiasemasta tai langattoman verkon kortilta. Heti kun tukiasema vastaanottaa käyttäjän verkkokortin lähettämät paketit, se purkaa ne.

jokainen tiedon tavu salataan eri pakettiavaimella. Tämä varmistaa, että jos hakkeri onnistuu murtamaan tämän pakettiavaimen, ainoa tieto, joka vuotaa, on se, joka sisältyy kyseiseen pakettiin.

RC4: n varsinainen salauslogiikka on hyvin yksinkertainen. Tavallinen teksti on XOR-ed äärettömän pitkällä näppäilyvirralla. RC4: n turvallisuus tulee näppäinyhdistelmästä johdetun pakettiavaimen salailusta.

joten mikä on pakettiavain?

pakettiavain muodostetaan yhdistämällä valmiiksi jaettu salasana, tilarivistö ja alustusvektori (IV). Ymmärretään ensin jokainen näistä termeistä:

Pre-shared Password: kaikki käyttäjät käyttävät samaa pre-shared passwordia jokaisesta lähetetystä paketista.

State Array: se on numerosarja, joka sekoitetaan ja jonka jälkeen RC4 käyttää avainvirran muodostamiseen.

Alustusvektori (IV): IV on tietokoneen luoma 3-tavuinen satunnaisluku. Se on joko Esivalmisteltu tai liitetty salakirjoitustekstiin ja lähetetty vastaanottajalle, joka poistaa IV: n ennen salakirjoitustekstin purkamista.

RC4-algoritmi koostuu kahdesta pääosasta:

Avainaikataulualgoritmi: KSA-prosessissa luodaan salattu tilajoukko . Tätä valtiorivistöä käytetään nyt syötteenä toisessa vaiheessa, jota kutsutaan PRGA-vaiheeksi.

Pseudo Random Generation Algorithm: the state array from the KSA process is used here to generate a final key stream. Syntyneen avainvirran jokainen tavu Xor ’ edataan vastaavalla tavallisella tekstitavulla halutun salakirjoitustekstin tuottamiseksi.

avaimen Ajoitusalgoritmi

IV lasketaan valmiiksi jaetun salasanan tilarivistön ja ominaisuuksien avulla. Tämä saavutetaan luomalla joukko arvoja, jotka vastaavat indeksiä, jota haluat käyttää algoritmissa. Oletuksena WEP: n indeksi on 256. KSA: n vaatimia komponentteja ovat muuttujien i ja j arvot, indeksiarvo, ennalta jaettu salasana ja sen pituus. Algoritmi, joka käyttää näitä arvoja luoda lopullinen näppäilyn on esitetty alla.

alustus:

For i=0 ... index-1
S=i
J=0

sekoittaminen:

For i=0 ... index-1
J = j + state + K
Swap(state , state)

silmukka kulkee ensin 0: sta index-1: een ja alustaa tilan array arvoilla 0: sta indeksiin. Esim. Jos indeksi =4, valtion array täytetään arvoilla 0-3. Näin ollen matriisin arvot ovat seuraavat:

s=0 s=1 s=2 s=3 

J: n arvoksi on asetettu 0. Tämän jälkeen aloitetaan toinen silmukka. Joka kerta silmukan läpi, arvo j lasketaan, ja array arvo pidetään tilassa vaihdetaan arvo pidetään tilassa .

Pseudo Random Generation Algorithm (PRGA)

pseudorandom number generator (PRNG) on algoritmi, joka luo satunnaisen numerosarjan. PRGA: n tehtävänä on luoda suoratoiston arvot, joita käytetään salaamaan plaintext, joka perustuu valtion array, lähtö KSA . PRGA: n noudattama menetelmä esitetään jäljempänä.

alustus:

I=0 j=0 index=4 

generointialgoritmi

I=(i+1) mod index
J=(j+state) mod index
Swap(state, state)
Z=state + statemod index]

striimausarvo luodaan kiehauttamalla algoritmin läpi paketin jokaiselle tavulle. Muuttujat i ja j alustetaan arvoon 0. Kunkin paketin arvo j lasketaan, ja array arvo pidetään tilassa vaihdetaan arvo pidetään tilassa . Lähtö z lasketaan sitten jokaiselle paketille. Prosessin lopussa meillä on PRGA-virta.

prga-stream Xor ’ edataan pelkällä tekstillä, jolloin luodaan salakirjoitusteksti, joka välitetään toiselle osapuolelle.

esimerkki

havainnollistetaan yllä olevia käsitteitä esimerkin muodossa. Salattava selkoteksti on testi. Salasana, jota käytetään tässä on 6258. Muuttujan alkuarvot ovat seuraavat:

i=0 j=0 password=6258 pass length=4 index=4 

seuraavan algoritmin saamme:

Step-1

State array: State=0 State=1 State=2 State=3
Password: K=6 K=2 K=5 K=8
j = + K] mod 4 = 6 mod 4 = 2
Swap(State , State) = Swap(0,2)
State=2 State=1 State=0 State=3

Vaihe-2

i=1 j=2
State array: State=2 State=1 State=0 State=3
Password: K=6 K=2 K=5 K=8
j = + K] mod 4 = 5 mod 4 = 1
Swap(State, State) = Swap(1,0)
State=2 State=0 State=1 State=3

Vaihe 3

i=2 j=1
State array: State=2 State=0 State=1 State=3
Password: K=6 K=2 K=5 K=8
j = + K]mod 4 = 7 mod 4 = 3
Swap(State, State) = Swap(1,3)
State=2 State=0 State=3 State=1

Vaihe 4

i=3 j=3
State array: State=2 State=0 State=3 State=1
Password: K=6 K=2 K=5 K=8
j = +K]mod 4 = 12 mod 4 = 0
Swap(State, State) = Swap(1,2)
State=1 State=0 State=3 State=2
Final State Array: State=1 State=0 State=3 State=2

kun KSA – valtiorakenne on valmis, prga-menettely alustetaan. Menettely on seuraava:

Initially i=0 j=0
K=6 K=2 K=5 K=8

ensimmäinen silmukka:

State=1 State=0 State=3 State=2
i=1 j=0+State=0+0=0
Swap(State, State) = Swap(0,1)
State=0 State=1 State=3 State=2
z = State + State mod 4] = State = 1
z1 = 00000001

toinen silmukka:

State=0 State=1 State=3 State=2
i=2 j=0+State=3
Swap(State, State) = Swap(3,2)
State=0 State=1 State=2 State=3
z = State + State mod 4] = State = 1
z2 = 00000001

kolmas silmukka:

State=0 State=1 State=2 State=3
i=3 j=3+State=6 mod 4 = 2
Swap(State,State) = Swap(3,2)
State=0 State=1 State=3 State=2
z = State + State] mod 4 = State = 1
z3=00000001

neljäs silmukka:

State=0 State=1 State=3 State=2
i=4 j=2+State=2+State = 2+State = 2
Swap(State,State) = Swap(State,State) = Swap(0,3)
State=3 State=1 State=0 State=2
z4 = State + State] = State +
State] = State = 2
z4=00000010

lähdöt z1-z4 lopussa jokaisen silmukan on xor ’ ed kanssa ASCII kunkin merkin pelkkää tekstiä, joka meidän tapauksessamme on testi. Siksi salakirjoitusteksti tavalliselle tekstitestille on seuraava:

T xor z1 = 01010100 xor 00000001 = 01010101 = U
E xor z2 = 01000101 xor 00000001 = 01000100 = D
S xor z3 = 01010011 xor 00000001 = 01010010 = R
T xor z4 = 01010100 xor 00000010 = 01010110 = U

WEP: llä salattuna sanatesti on UDRU.

tämä artikkeli oli vain johdatus WEP: iin ja tarkka menettely, jossa salaus tapahtuu WEP: ssä. Seuraavassa osassa käsittelemme kysymystä, joka on päällimmäisenä mielessänne: ”miksi WEP on epävarma? Millaisille riskeille ALTISTUN, jos käytän WEP: tä?”

Vastaa

Sähköpostiosoitettasi ei julkaista.