DISCLAIMER UN PO` DI STORIA: Algoritmi Speedtouch e

Transcript

DISCLAIMER UN PO` DI STORIA: Algoritmi Speedtouch e
Algoritmi di generazione WPA Alice e Fastweb: l' avidità del sapere
Scritto da kazikamuntu
Venerdì 12 Febbraio 2010 14:28 - Ultimo aggiornamento Sabato 11 Settembre 2010 14:07
DISCLAIMER
Come mai informazioni dettagliate, che permettono di approfittare delle vulnerabilità di un
particolare sistema, vengano repentinamente rese pubbliche (generalmente attraverso
Internet) non solo da malintenzionati ma, soprattutto, da rispettabilissimi addetti ai lavori? La
risposta a questo inquietante quesito può essere sintetizzata in una sola frase: full disclosure.
Questa frase, che in italiano si può tradurre con
il dovere di dire tutto
, rappresenta la corrente di pensiero di coloro che difendono a spada tratta la libertà di
diffondere tutti i dettagli relativi alle vulnerabilità venute alla luce: la loro scelta è guidata dalla
convinzione che solo in questo modo i legittimi utilizzatori potranno immediatamente correre ai
ripari. Questa nobile intenzione viene quindi addotta a giustificazione degli eventuali risvolti
negativi che scaturiscono dalla full disclosure, risvolti rappresentati dalla possibilità che gli
aggressori possano sfruttare le preziose informazioni sulle vulnerabilità ancora prima dei
legittimi utilizzatori. Numerosi siti rendono disponibili nelle loro pagine un elenco aggiornato
delle vulnerabilità scoperte e, proprio per questa ragione, è assolutamente indispensabile che
ogni singolo utente/amministratore li consulti frequentemente o, ancor meglio, qualora il
servizio fosse disponibile, si abboni alle loro newsletter specifiche.
FONTE microsoft.com
UN PO' DI STORIA: Algoritmi Speedtouch e BThomeHub
April 14th, 2008 ,UK
In questo post viene pubblicato l'algoritmo dei router Thompson Speedtouch e BT home
scoperto da
Kevin Devine e james67. A quanto detto i più popolari routers DSL
in Gran Bretagna.
Ecco come viene giustificata la pubblicazione:
"Kevin decided to share his findings and work with us in this fascinating project. As you might
already know, at GNUCITIZEN we’re committed members of the white-hat community who feel
1 / 14
Algoritmi di generazione WPA Alice e Fastweb: l' avidità del sapere
Scritto da kazikamuntu
Venerdì 12 Febbraio 2010 14:28 - Ultimo aggiornamento Sabato 11 Settembre 2010 14:07
that it’s our responsibility to inform the public when a security issue exists."
L' algoritmo per i modem Speedtouch risulta molto semplice:
si parte dal SERIAL (CP0615JT109) e si prendono alcuni caratteri (CP0615109)
1. trasformiamo in esadecimale gli ultimi 3 caratteri (echo -n 109|hexdump) e lo appendiamo
a CP0615 ottenendo CP0615313039
2. poi processiamo con una comune sha1 (echo -n CP0615313039|sha1sum) ottenendo
742da831d2b657fa53d347301ec610e1ebf8a3d0
3. gli ultimi 3 byte (f8a3d0) li appendiamo a SpeedTouch ottenendo il SSID che è
SpeedTouchf8A3D0
4. i primi 5 byte (742DA831D2) sono la chiave wpa del router.
Per il modem BTHomeHub il processo è analogo:
1.
2.
3.
4.
5.
CP0647EH6DM di seriale prendo solo CP06476DM
lo converto 6DM in esadecimale ottenendo 36 44 4D
li appendo come prima ottenendo CP064736444D
faccio una sha1 di tale valore (06f48a28eba1ab896a396077d772fd65503b8df3)
il SSID è quindi BTHomeHub-8DF3 e la wpa è 06f48a28eb
Come si puo' notare risulta etremamente semplice implementare un keygen per questi routers
con poche righe di codice.
2 / 14
Algoritmi di generazione WPA Alice e Fastweb: l' avidità del sapere
Scritto da kazikamuntu
Venerdì 12 Febbraio 2010 14:28 - Ultimo aggiornamento Sabato 11 Settembre 2010 14:07
Ecco il link al disassembing di Devine molto interessante:
http://www.hakim.ws/st585/KevinDevine/
Algorimo Fastweb Pirelli
Anche qui l'algoritmo utilizza uno degli hash pù diffusi come md5 ed anche in questo caso a
partire dal
SSID si ricava la
chiave wpa. Piuttosto di pubblicare programmini pronti preferisco pubblicare i conti a mano.
Dato il SSID in hex 001CA2BA2CE8 lo si concatena ad una sequenza costante di valori:
Il SSID risulta essere il salt della sequenza numerica costante.
Della concatenzazione risultante basta fare md5sum e si ottiene l'hash
echo-en
"x00x1CxA2xBAx2CxE8x22x33x11x34x02x81xFAx22x11x41x68x11x12x01x05x22x71x42x
10x66'"|md5sum
95ed90a01b4de2f2ced0ade17f68ac68
poi lo trasformiamo in binario
3 / 14
Algoritmi di generazione WPA Alice e Fastweb: l' avidità del sapere
Scritto da kazikamuntu
Venerdì 12 Febbraio 2010 14:28 - Ultimo aggiornamento Sabato 11 Settembre 2010 14:07
95
ed
90
a0
1b
4d
e2
10010101
11101101
10010000
10100000
00011011
01001101
11100010
….....
trasformiamo il binario in base 32 ossia prendiamo gruppi da 5 bit:
10010 10111 10110 11001 00001 01000 00000 11011 01001 10111 10001 0...
10010
12hex= 18dec
18 > 10
12hex+57hex = 69
10111
17hex= 23dec
17 > 10
17hex+57hex = 6e
10110
16hex= 22dec
22 > 10
16hex+57hex = 6d
11001
19hex= 25dec
25 > 10
19hex+57hex = 70
00001
01hex=01dec
01 < 10
= 01
4 / 14
Algoritmi di generazione WPA Alice e Fastweb: l' avidità del sapere
Scritto da kazikamuntu
Venerdì 12 Febbraio 2010 14:28 - Ultimo aggiornamento Sabato 11 Settembre 2010 14:07
E’ evidente che se il valore hex è maggiore di 10 aggiungiamo 57hex, altrimenti no.
e la wpa default è quindi 696e6d7001.
{{banneradsense}}
ALICE AGA CON SMARTCARD
In questo caso piu' complicato abbiamo bisogno di due dati per ricavare la wpa: la
pppusername ed il serial number della smart card.
Prendiamo un esempio di rete che circola da tempo sul web:
ESSID = Alice-51697966
pppUsername = "0!Y0URIlZfr49aZc"
smartcardSn = "BA000c314d92ef6b"
5 / 14
Algoritmi di generazione WPA Alice e Fastweb: l' avidità del sapere
Scritto da kazikamuntu
Venerdì 12 Febbraio 2010 14:28 - Ultimo aggiornamento Sabato 11 Settembre 2010 14:07
NOTA: Lo smartcard serial number è facilmente ricavabile convertendo in hex l’essid
(51697966
>> 314D92E)
Come per il caso Fastweb per non dare programmi pronti faremo “i conti” a mano …
CREAZIONE DELLA CRYPTOUSERNAME:
Ecco un piccolo grafico che ci spiega come giungere alla cryptousername:
L’algoritmo gioca con due key costanti (KEY1 e KEY2) che unite vengono messe in DES con il
seriale che abbiamo definito “ribaltato” (passatemi il termine). I due risultati del DES (MYDES_1
e 2) vengono concatenati per formare un’altra chiave (MYDES).Questa viene messa in DES
con il PPPusername per generare la cryptousername.
6 / 14
Algoritmi di generazione WPA Alice e Fastweb: l' avidità del sapere
Scritto da kazikamuntu
Venerdì 12 Febbraio 2010 14:28 - Ultimo aggiornamento Sabato 11 Settembre 2010 14:07
Ecco
le chiavi
DESottenendo:
che
opereranno
conottenendo
il seriale
“ribaltato”:
KEY1=”x88x92xA6x94xA8xAAxA0xA2”
KEY2=”x92x8Cx86xACx9Ax94x84x98”
Tali
chiavi
vengono
unite
inhex
questo
modo
queste
due chiavi:
KEY_1_2="x88x92xA6x94xA8xAAxA0xA2x92x8Cx86xACx9Ax94x84x98"
KEY_2_1="x92x8Cx86xACx9Ax94x84x98x88x92xA6x94xA8xAAxA0xA2"
La
prima
crittazione
Triple-DES
avviene
con
il seriale
ribaltato:
ribaltiamo
ilun
seriale
SERIAL="x6bxefx92x4dx31x0cx00xba"
DES3.new(KEY_1_2,
DES3.MODE_ECB).encrypt(SERIAL)
otteniamo
valore
che
in
è
33cf688b9d39f28b
Facciamo
la
stessa
operazione
con
l'altra
chiave:
DES3.new(KEY_2_1,
DES3.MODE_ECB).encrypt(SERIAL)
otteniamo
un
valore
che
in
hex
è
de0beccac4486fb1
Ora
uniamo
i
due
risultati
ottenuti
MYDES=”x33xcfx68x8bx9dx39xf2x8bxdex0bxecxcaxc4x48x6fxb1"
E
facciamo
un'altra
operazione
DES
con
il
pppusername:
DES3.new(MYDES,DES3.MODE_ECB).encrypt(PPPUSERNAME)
otteniamo
a311b598d186b0fbd559090f9517d0cc
“ribaltiamo”
quanto
ottenuto:
CRYPT=ccd017950f0959d5fbb086d198b511a3
ALTRE
OPERAZIONI
PER
AL
Ora
operazioni
che
abbiamo
matematiche
laincrementata
cryptousername
che
riassumeremo
di
inTRAGUARDO
giungere
una8di
tabella:
alla
èdella
necessario
effettuare
Le-esempio
prime
tre
variabili
da
considerare
sono:
a:
che
viene
ad
ogni
riga
(valore
iniziale
0)esempio
q:
risultato
dell’operazione
(aottiene
+ prima
1)*5
binario
11001
shiftando
treGIUNGERE
bit si
11
shiftato
ossia
3(ossia
3inbit;ad
decimale:
il7numero
in
r: èrisultato
dell’operazione
(a+1)*5
modulo
il wpa
resto
divisione
perè825 varie
Ad
otteniamo:
a=0
q=(0+1)*5=5
r=(0+1)*5
%
a=1
q=(1+1)*5=10
10 della
r=(1+1)*5
%
88
==
25operazioni
a=2
q=(2+1)*5=15
186
r=(2+1)*5
%le8se
=%
a=3
q=(3+1)*5=20
2tabella
%
88
==
41
a=4
q=(4+1)*5=25
3
r=(4+1)*5
… cryptousername
…
Ora
la
riprendiamo
ad
sottomano:
uno
ad
uno
tutti
dati
seguenti
con
Per
comodità
le09
coppie
esadecimali
cryptousername:
CRYPTO
= ccnumeriamo
d0
17
95
0f
59…
d5…
fb
b0della
d1
98 b5ed
11effettuiamo
a3 r=(3+1)*5
A seconda del
valore
di q prendiamo
il valore esadecimale
corrispondente
dalla
Riportiamo
tutti
i passaggi
nella successiva
tabella spiegandoli
poi uno
adtabella.
uno:
prima
riga:
riportati
i valori
q (8-r)
ottenuti
in precedenza
seconda
riga:
il valore
esadecimale
della
cryptousername
a cui fa di
riferimento
terza
riga:
ilililsono
valore
di
rc-hex
ottenuto
inrdi
precedenza
quarta
ilnelle
valore
di
r in
decimale
quinta
riga:
valore
shift
dato
da
sesta
riga:
valore
didi
in
decimale
shiftato
(>>)
di
unviene
numero
bit
pari
a819.
shift
settima
riga:
colonne
dove
<
5il3229.
ilsiilvalore
di
c-shift
cambiato
in
c-update,
uguale.
altrimenti
Attenzione
:resta
(tabella
per
generare
crypto).
c-update
Ad
basta
prendere
valore
della
cryptousername
precedente
aesempio
c-hex
esempio
nella
ossia
seconda
cc.
Poi
effettuiamo
colonna
c-hex=d0,
uno
prendiamo
il
valore
che
lo
precede
nella
cryptousername
shift
(<<)
all'indietro
di
r=
2
bit
ottenendo
816.
Poi
sommiamo
valore
di
c-shift
(che
è
3)
ed
otteniamo
Un
altro
esempio:nella
cambiato.c-hex
3328.Sommiamo
è
c-shift
17
quindi
quarta
ed
otteniamo
prendo
colonna
come
valore
ha
r=4
d0.
che
Shiftiamo
è
minore
d0
di
5
di
quindi
r=4
bit
c-shift
ed
otteniamo
va
ottava
riga:
operazione
booleana
di
and
819AND31
ci
da
come
risultato
19.
logico
tra
c-upd
e
1F
(31
in
decimale).
Ad
nona
riga:
prima
70).Questo
colonna
se
è
finalmente
c-bool
<
è
10
25
il
valore
allora
maggiore
sommiamo
ASCII
di
10
della
quindi
48.
prima
Altrimenti
sommiamo
lettera
sommiamo
della
87.
wpa!
Diventa
87.Ad
quindi
esempio
112
(hex
nella
Decima
riga:
convertendo
in
ascii
eccoci
FINALMENTE
arrivati
alla
soluzione.
default.
La
wpa
di
RINGRAZIAMENTI
Sono
citare
peccato
ricerca
alti
condivisione
e
per
e
bassi,
quello
molti
coloro
italiana
poichè
gli
ha
indiretto
che
dei
appassionati
saputo
il
si
risultati.
merito
ci
tratta
hanno
luciano,
comunque
iniziale
di
Inoltre
persone
speculato
e
siti
i
white
va
volevo
che
stimolare
tutto
molto
hats
tenendo
meriterebbero
ringraziare
al
valide
per
blog
curiosità
la
nascosti
di
parte
e
Angelo
capaci.
per
una
ed
fastweb,
l'aiuto
i
dati
interesse
menzione,
Righi,
Per
delle
diretto
quanto
per
che,
ricerche.
consentendo
la
tuttavia
tiresi@
pur
parte
riguarda
attraversando
E'
alice
non
,
mcprojects
sicuramente
lo
una
mi
3mpty,Ra,
stimolo
sento
efficace
periodi
alla
ed
diun
ETdi
stimabile
cricca
di
wifi-ita,
la
vabbè
anche
quei
due
che
mancano,
del
resto
se
lo
meritano,ma
solo
per
la
loro
abilità....
NOTA:
pppusername,
L'articolo
l'algoritmo
ovviamente
fastweb
non
è
telsey
ancora
(update
finito,
manca
più
sotto)
la
parte
e
molte
sulla
altro
generazione
ancora.
del
UPDATE:
CRITTAZIONE
DES3
A
divertimento.
richiesta
pubblico
un
frame
javascript
che
opera
la
corretta
crittazione
DES3-ECB.Buon
{iframe
scrolling="yes"}http://www.pcpedia.it/JS-DES.html{/iframe}
width="110%"
height="300"
frameborder="0"
DA
SERIALE
AGA
SSID
Come
nell'esempio
mi
è
stato
citato.
segnalato
spesso
passaggio
da
SSID
aunseriale
èinverso,
immediato
Nell'esempio
314192E
che
con
in
questo
parte
numerica
caso
èA
parte
del
integrante
SSID
51697966
del
seriale.
si converte
innon
eSSID
sicome
ottiene
In
convertirlo
altri
casi
in
è
tuttavia
hex.Questo
necessario
numero
ad
loilN=108B18ED989D39E
esempio
chiamiamo
aggiungere
1 o un
2esadecimale
all'inizio
deldalla
prima di
N.
La
costante
A
è
pari
a
0x55E63B89.Lo
>>
è
il
solito
shift
binario.
Per
ora
integrante
(datemi
del
seriale
un
attimo
(che
di
chiameremo
respiro)
postero'
SX)
all'ESSID:
la
formula
del
passaggio
parte
N=(SX*A)
>>
57
esempio
1)
SX=314D92E
quindi
>>57
57 =10 dobbiamo
aggiungere
davanti
conversione
(
ossia niente
da 10560
0
5
1697966)
esempio
2)
SX=64B74BE
quindi
N=21CB704BAFD43AE
>>
1
davanti
al
ssid
( prima della
aggiungere
8382)
esempio
SX=27E985E
quindi
N=D646E89D51344E
>>
57==
=20 aggiungere
davanti
al 3)
ssid
(
niente
da
aggiungere
041850
974)
esempio
4)
SX=F1514CE
quindi
N=50F905B05279C3E
>>
57
ssid
(
2
253039822
) ) al
esempio
5)
SX=D15B27E
N=463F8CD33F38F6E
>> 57 = 2 aggiungere
al ilssid
(
2davanti
davanti
219525758
E
procedimento
inverso? ciquindi
pensate
voi?
7 / 14
Algoritmi di generazione WPA Alice e Fastweb: l' avidità del sapere
Scritto da kazikamuntu
Venerdì 12 Febbraio 2010 14:28 - Ultimo aggiornamento Sabato 11 Settembre 2010 14:07
ALICE AGPF:
Come preannunciato, l’algoritmo AGPF è molto simile a quello Pirelli Fastweb: utilizza un hash
sha256 che concatena una serie speciale di caratteri fissata con il seriale ed il MAC.
E’ stato individuato mediante reverse engineering dal team dei White Hats, già noti per aver
reversato l’algoritmo Pirelli. Vi rimando al loro articolo per maggiori dettagli sul reverse (
LINK
). Ci tengo a sottolinearlo in quanto persone senza scrupoli cercano di reclamarne la paternità
per scopi professionali. Per questo motivo mi scuso con gli appassionati in quanto non ho
pubblicato prima l’algoritmo, ma reputo fondamentale dare il giusto palco a chi lo merita. Inoltre
volevo informarmi se erano state prese contromisure al problema e con mia gioia ho notato che
la nuova versione del firmware consente di cambiare la wpa di default rendendo così vani i
tentativi di malintenzionati.
Comunque dagli "aiutini" (o aiutoni) che ho potuto fornirvi vedo con piacere che c’eravate quasi
arrivati.
IL SERIALE:
Il seriale è nel formato 69102X0012345 : la prima parte, separata dalla seconda dalla X,
dipende dalla serie individuabile dal SSID (ad esempio: 69101,69102,67101,67102,67902,
67903,67904…).
La seconda si ottiene dal SSID mediante operazioni matematiche elementari rese pubbliche da
tiresi@ in forum censurati e dipendenti dalla serie. Infatti supponiamo di avere due reti con
SSID affine notiamo come la relazione ricorrente sia:
SERIAL1 = (SSID2-SSID1)/k +SERIAL2 con k che assume principalmente I valori di 13 o 8
8 / 14
Algoritmi di generazione WPA Alice e Fastweb: l' avidità del sapere
Scritto da kazikamuntu
Venerdì 12 Febbraio 2010 14:28 - Ultimo aggiornamento Sabato 11 Settembre 2010 14:07
Da questa possiamo ottenere dei numeri chiamati impropriamente magici che risultano costanti
per ogni tipo di SSID.
SERIAL=(SSID-MAGIC)/k
Facciamo un esempio per una serie:
Alice-54XXXXXX numero magico = 52420689 K=8
Abbiamo un SSID (fittizio) del tipo Alice-54123449
(54123449 – 52420689)/8 = 212845
Quindi il seriale risultante sarà 67903X0212845
La pubblicazione degli altri numeri magici ,peraltro facilmente ricavabili, esula lo scopo di
questo articolo.
IL MAC ADDRESS:
Si ricava facilemte che il mac address è formato da i primi 6 caratteri esadecimali costanti per
ciascuna serie (00223,00238,00255,001d8 …) piu' il SSID convertito in esadecimale. Anche qui
come per gli AGA si converte il SSID con 0,1,2 davanti, a seconda dei casi.
9 / 14
Algoritmi di generazione WPA Alice e Fastweb: l' avidità del sapere
Scritto da kazikamuntu
Venerdì 12 Febbraio 2010 14:28 - Ultimo aggiornamento Sabato 11 Settembre 2010 14:07
Nel nostro esempio fittizio (serie 54) otterremo 00:25:53:39:DB:B9.
L'ALGORITMO:
Riportiamo uno schema che lo riassume spero esaurientemente:
10 / 14
Algoritmi di generazione WPA Alice e Fastweb: l' avidità del sapere
Scritto da kazikamuntu
Venerdì 12 Febbraio 2010 14:28 - Ultimo aggiornamento Sabato 11 Settembre 2010 14:07
Come-ne
unico
linux
per$SPECIAL$SERIAL$MAC|sha256sum
l’algoritmo
per ricavare
Pirelli
il digest:
riprendendo l’esempio della rete fittizia, è sufficiente il comando
echo
382d77903d29bea8ab6d82c7f7917867c3e54b9d9a8eb63cb8192bf48d7cdf01
Trattiamo
questo
digest
come
se
idefault. suoi
fossero
indici
diutenti
un
vettore
[0
255]
tipo,
basandoci
sulla
tabella
(*)
ricaviamo:
dil'assenza
questo
l'indice
38
hex=56
equivale
ala
lettera
nella
tabella
L'indice
2d
hex=45
atutti
9
etc…
wpa
di
default
della
rete
è(inutilmente
quindi
k9b0p5aor1mjv1cvfd3day2o
*La
NOTA:
spiegazione,
Ho una
usato
implementazione
questo
vettore
migliore
senza
grande)
dubbio
solo
sarebbe:
come
riferimento
modulo(valorehex)/36=indice
vettore
dikilelementi
36
elementi
CONTROMISURE
:equivale
Come
permetteva
riconducibile
di
aggiornando
riconducibilità
tutti
sanno
diedell’algoritmo,
semplicemente
cambiare
della
fino
a
sorgente
poco
la
wpa
violava
ilfinalmente
tempo
firmware
di
della
una
fa
chiave.
semplice
alla
modem
A
versione
mio
Ora
Alice
parere
finalmente
regola
Gate
questa
della
VOIP
gliilsicurezza
scelta,
2sicurezza
possono
unita
crittografica:
WiFi alla
AGPF
tutelarsi
non
4.5.0sx
wpa
di
Sarete
quindi
voi
gli
artefici
della
vostra
quale
permette
oper
insicurezza...
distruttura
cambiare
la
Raccomandiamo
quindi
telegestione
idefault.
privati
masoprattutto
di
cambiare
lafittizia
password
gli
amministratori
di
default.
di reti
aziendali
diplus
aggiornare
illa
firmware
via
Algoritmo Fastweb Telsey
11 / 14
Algoritmi di generazione WPA Alice e Fastweb: l' avidità del sapere
Scritto da kazikamuntu
Venerdì 12 Febbraio 2010 14:28 - Ultimo aggiornamento Sabato 11 Settembre 2010 14:07
Ancora una volta la White Hat Crew ci ha dimostrato il suo valore pubblicando la full
disclosure
dell’algoritmo Fastweb Telsey (
LINK
).
Parte fondamentale della procedura di calcolo è l’algoritmo hashword di Bob Jenkins . Questo
algoritmo non è certamente noto come l’md5 e la sha256 usati nei casi precedenti ma una sua
versione è salita alla ribalta nel 2004 in quanto usata come checksum per il Google Toolbar
Page Rank
.
La scoperta che nel checksum di google si celava hashword è
di
Alex Stapleton
ed è anche questa una impresa non certo da poco che meriterebbe senz' altro un articolo a
parte.
JENKINS HASHWORD
Si tratta di un algoritmo non crittografico molto vesatile usato per checksum o per sistemi
embedded. Tale funzione accetta tre parametri in ingresso: un array composto da elementi da 4
byte unsigned, la lunghezza dell’array ed un valore iniziale per il calcolo arbitrario (o in questo
caso ricorsivo).
12 / 14
Algoritmi di generazione WPA Alice e Fastweb: l' avidità del sapere
Scritto da kazikamuntu
Venerdì 12 Febbraio 2010 14:28 - Ultimo aggiornamento Sabato 11 Settembre 2010 14:07
Supponiamo
iniziale
siacaso,
0:
ad
esempio
dati
in-->
siano
un vettore
tre
elementi
einitval;
che il valore
A=[57454c4f,
56454352,
5950544f]
hashword
(A,3,0) ci
come
soluzione:"7757672a".
Ma
cosa
favariabili:
tale
funzione
come
vettore
di da
quattro
elementi
A=[434f4d50,
4c494d45
,che
4e544957
,ingresso
48495445
]di
1.
inizializza
tre
baposizione
e+prendendo
cA[0]
ad
un
valore
+di
(length<<2)
+abbiamo
questo
saranno
pari
a=i deadbe
quindi,
ff
.in
2.
(...):
Ora,
a sono
seconda
delquesto
valore
del
puntatore
alb=12af70c44,
vettore
processato
3in
casi
--vediamo
Se
Length
>(99aa2695,c30ab706,f742b83c).A
3allora
allora
aa,
;passa
b=b+A[1]
edeadbeef
c=c+A[2]
e
passa
al
gruppo
dei
3
successivi.
ilelementi
nostro
vettore
Essendo
di
esempio
composto
entra
in
gioco
da
4
la
elementi
funzione
passo
ci
da
a=121fd0c4f,
c=12d020856.
Ora
mix
che
questo
successivi
in
seguito
caso
del
vettore.
a
semplici
sottrazioni,
addizioni
e
shift
binarici
questo
punto
ritorna
si
i
3
passa
valori
ai
(a
tre
b
elementi
c)
che
3
c=c+A[2]
e
si
all’elemento
successivo.
Se
Length
=
2
b=b+A[1]
e
si
passa
al
successivo
alla
precedente
(
1
a=a+K[0]
viene
eseguita
un’altra
semplice
routine
algebrica
simile
final).
Nel
nostro
caso
avremo
come
risultato
,
(a,b,c)=(6cb614d4,
eab16b3c)
Ilf25fa54f
valore
di
c
è
appunto
il
risultato
che
da
questa
funzione.
APPLICAZIONE
DEL
JENKINS
TELSEY
Ora
della
di
un
semplicemente
4[BC0300BC030003BC426F8E6F428E6F6F6F426F006FBC8E0300420003034203006F426F
array
elementi
analizziamo
wpadi
default
64
da
elementi
4come
del
byte
Telsey.
viene
con
da
4un
byte
utilizzato
Nell'esempio
ciascuno
iniziale
questo
precedente
(interi
dialgoritmo
0.
senza
Inprefissata
questo
abbiamo
non
segno).
caso
crittografico
Questo
specifico
per
unl’algoritmo vettore
la
viene
insecondo
ricavato
utilizza
ingresso
mescolando
ilvalore
MAC
una
sequenza
del
router
(trattandolo
come
se fossero
6 generazione
byte)
diutilizzato
permutazioni.
Utilizziamo
per
esempio
il MAC
diNEL
Angelo
Righi,
stimabile
precursore
divettore
questa
ricerca
( link ):
00:03:6F:8E:42:BC
Ilricorsioni
vettore
sarà:
6F8E038E424203428EBC03BCBC6F0300BC0
6F
C0342006FBC00BC6F038EBCBC6F6F426F8E03420042428E8E00BC8E428E00008E6F0303
3000303426F038E8E8EBC6F4242BC42B
38E8
000000BC0303034242006F6F8E8E8E00006F4203BCBCBC000042BC000303BC6F6F6FBC0
036FBC038E428E006F8E4200006F6F
2428E428E0
34200030303426F6F6F6F8E8E8E8EBC4200034200BCBC0300BC000003BC036F6F426F8E4
E6F8E03006F4203BC6FBC000
06F8E00]
0003BC8E030042426F6FBC428E8E036F428E006F8EBC038E036F8EBC00036FBC8E42030
3BCBCBC03428E
Diamo
inxrisultante
pasto
questo
vettore
alla
funzione
hashword
sopra
descritta
usando
l’output
c
input
per
le
comedel
successive:
for
(L=0;
L<64;L++)
–>
VAL_1=hashword(A,
L,
VAL_1)
Nel
nostro
esempio
otteniamo
come
valore
0d37fcee
Successivamente
ci
sono
altre
semplici
operazioni
di
shift
binario
puntatore.
a
seconda
della
posizione
se
<
8
allora
A[x]=A[x]
<<
3
16
5
32
allora
A[x]=A[x]
>>
2
altrimenti A[x]=A[x]
<<
7
Il8a
nuovo
array
mescolato
sarà
del
tipo:
[e01805e0,18001de0,
2100018,1a101800,37a137b,4701c72,2101a14,5e01de5,...]
137c7378,14737b78,7a137800,
7de47018,
e
sarà
dato
in
input
analogamente
alla
funzione
hashword.
for
(L=0;
L<64;L++)
–>
VAL_2=hashword(A,
L,
VAL_2)
Otterremo
VAL_2
=
0998a718
.
La
wpa
risultante
saranno
gli
ultimi
5
“caratteri”
di
VAL_1
ed
i
primi
5
di
VAL_2.
Ossia
7fcee099
.
Ecco lo schema finale che riassume quanto detto finora:
13 / 14
Algoritmi di generazione WPA Alice e Fastweb: l' avidità del sapere
Scritto da kazikamuntu
Venerdì 12 Febbraio 2010 14:28 - Ultimo aggiornamento Sabato 11 Settembre 2010 14:07
Che
dei
progettisti
dire ora nelle
è sempre
conclusioni,
quello. siall'articolo
è gia dettodei
tutto
per quanto
Per
maggiori
dettagli
vi rimando
White
Hats . riguarda gli altri algoritmi. L'errore
In
gamba.
14 / 14